Jak automatyzacja pomaga mi w określaniu pogody

Każda automatyzacja to dla mnie szansa na sprawdzenie możliwości modeli językowych. Teraz przyszedł czas na... pogodę!

Pogoda na rower jest idealna, więc ja też wyciągnąłem swój dwuślad z piwnicy. Po dokonaniu szybkiego przeglądu, nasmarowaniu łańcucha i stwierdzeniu, że to jest ostatni sezon opon, zacząłem jeździć. Jednak nie byłbym sobą, gdybym nie dorzucił do tego jakiejś małej automatyzacji. Po co? W jakim celu? Właśnie do określania tego, jaka jest pogoda oraz czy powietrze nadaje się do oddychania. Jestem z Zagłębia, zimą bywa tutaj bardzo, bardzo gęsto.

Niewielka automatyzacja

Jeśli planuję zrobić jakąś niewielką automatyzację, to sięgam po Make (link afiliacyjny). Najpierw chciałem, aby na podstawie zdjęcia, ChatGPT ocenił warunki pogodowe, a przede wszystkim napisał mi, czy zbiera się na burzę. Wiem, dziwny pomysł, bo mogę przecież spojrzeć na mapę na stronie obserwatorzy.info i ocenić co się dzieje. To po co to robię? Żeby poklikać trochę w Make, żeby zbadać możliwości modelu językowego od OpenAI. Do działania napędza ciekawości. Dlatego uznałem, że przecież samo zdjęcie to nie wszystko. Zanim się wybiorę na przejażdżkę (lub na spacer) chciałbym wiedzieć, jaka jest temperatura oraz stan powietrza.

Znowu, mogę to zrobić, korzystając z prognozy na IMGW. Jednak ja chciałem mieć możliwość wysłania wiadomości do mojego bota i otrzymania zwrotki na podstawie informacji dostępnych na portalu „Otwarte Dane”. Tam znalazłem API publikujące pomiary z okolicznych stacji meteorologicznych. Przykładowy zestaw wygląda tak:

Jest w nim wszystko, co mnie interesuje, aby ocenić aktualną pogodę oraz stan powietrza. Na dodatek te dane są często aktualizowane, więc mam gwarancję, że dostanę odpowiedź na podstawie najświeższych informacji. W efekcie moją mała automatyzacja ma dwie ścieżki. Odpowiedź od bota zależy od wejścia, od jaką tego wiadomość wyślę. Nie bawię się w żadne rozpoznawanie intencji, bo uważam, że do tego scenariusza, to zdecydowanie za dużo. Zresztą szkoda marnować tokeny.

Jak to działa?

Kluczowym punktem jest tutaj mój bot na Telegramie. Wykorzystuję go do wielu różnych celów, bo to właśnie tam wrzucam sobie efekty automatyzacji, aby wiedzieć, co się wykonało, a co nie. W przypadku tego scenariusza założyłem dwa wyzwalacze.

  • Zdjęcie z podpisem Burza, w celu opisu tego, co jest na niebie.
  • Wiadomość Powietrze, aby mieć zwrotkę w postaci krótkiej informacji na temat tego, jak jest na zewnątrz.


Do opracowywania opisów używam ChatGPT od OpenAI, a konkretnie modelu gpt-turbo , aby ograniczyć koszty. Zresztą zauważyłem, że radzi sobie wystarczająco dobrze, aby pomóc mi osiągnąć cel.

Opis zdjęć wygląda tak:


A podsumowanie lokalnych warunków tak:


To ostatnie jest o tyle ciekawe, że wykorzystuję dane meteorologiczne z pobliskiej szkoły. Niestety, w trakcie testów scenariusza, zauważyłem, że informacje w API są dublowane, dlatego zbieram je do tablicy, a potem biorę z niej pierwszy wpis. Mógłbym to przecież zebrać w jeden obiekt (np. string) , ale rozważam dalsze rozszerzenie tej ścieżki i właśnie tablica z danymi może mi się do tego przydać.

Czy mi to pomaga?

Tak. Stan powietrza jest dla mnie kluczowy, bo niespecjalnie mam ochotę pompować w płuca syf w trakcie przejażdżki na rowerze. A opisywanie nieba bywa pomocne, jeśli jestem daleko od domu. Chociaż tym przypadku ChatGPT, jak tylko widzi jakieś cięższe chmury, to od razu podejrzewa burzę. Wtedy i tak muszę zasięgnąć drugiej opinii.


Jeśli chcesz zacząć pracować z automatyzacjami, to szukaj właśnie takich scenariuszy. Nie zawsze muszą mieć większy sens, wystarczy, że zmuszą cię zmierzenia się z przetwarzaniem danych i ich wysyłaniem. To już naprawdę sporo. Zresztą otrzymanie krótkiej wiadomości z efektem własnej pracy, też daje sporo przyjemności.