Mówię do czarnego pudełka a ono mi odpowiada - 25/02/'24

in #polish2 months ago

Zdarza mi się robić różne ciekawe rzeczy. Jednym z nich jest mikroprojekt który w głowie nazywam "Dyplo Dwadzieścia" - w głowie bo nie mamy formalnej nazwy. Jest nas trzech, w każdym inna krew, i choć każdemu z nas przyświecają własne cele, mamy jeden wspólny - zrobić projekt, który będzie czymś ciekawym. Przy okazji weekendu mieliśmy spotkanie, posiedzieliśmy parę godzin, ustaliliśmy co jest do zrobienia i jakie są następne kroki.

O co ogółem chodzi? Maciek ma problem badawczy (zbadanie zależności w tym kto w międzywojniu pełnił funkcje dyplomatyczne), ja mam trochę wiedzy technicznej, Szymon jest zapalony i chce się uczyć IT. No więc robimy.

I właśnie na tym etapie zawiązuje się główna akcja. Dostałem zadanie przygotowania kodu w python obsługującego bazę danych zgodnie z naszym formatem danych. Później będziemy chcieli robić analizę za pomocą grafów, ale na razie musimy to wszystko do tej bazy wepchnąć. Normalnie coś takiego (pisanie kodu który zapisze mi dane do bazy) byłoby czasochłonną akcją. Zaczynam od CRUD, czyli podstawowych operacji na danych - create, read, update, delete. Rodzajów danych mamy kilkanaście, i różnią się między sobą. Chciałbym żeby kod potrafił różne sztuczki. W normalnych warunkach dla doświadczonego programisty python - na luzie kilka godzin kodzenia. Ja w pythonie pisałem tylko jakieś projekty na studia, więc każda rzecz - pomnóżmy na spokojnie razy 3. Wiele godzin pracy.

Jednak tutaj wchodzi niezwykłość czasów w których żyjemy. Używając czatbota (tym razem Google Gemini) przygotowałem odpowiedni kod w godzinę. Zacząłem od zainwestowania 5 minut w opisanie co robię, czego potrzebuję, i w jakiej strukturze mają być wyniki. A następnie opisywałem po kolei rodzaje danych jakie potrzebuję zapisać do bazy i jaka ma być ogólna logika. W minutę chatbot wypluwał mi gotowy do użycia kod. Dla osoby której wiecznie brakuje czasu - nieprawdopodobna ulga. Nie chcę zawodzić chłopaków tylko dlatego że nie mam kilku wieczorów które bym poświęcił na zrobienie swojej części.

I nie zrozumcie mnie źle - kod wyprodukowany przez Gemini wyglądał na dobry, ale na kolejnych etapach okazało się że ma pewne skazy (np. niespójność nazewnictwa), albo że po kilkunastu zapytaniach, bot zapomina o szczegółach tego co było wcześniej. Przykładowo, przygotował mi kod dla danych typu "Osoba" z zestawem konkretnych rodzajów wartości, typu imię, nazwisko, wykształcenie, doświadczenie dyplomatyczne i pełnienie służby wojskowej (takie dane bierzemy pod uwagę w badaniu), jednak chwilę później sądził że osoba ma imię, nazwisko i adres email - generycznie... Jak na generatywną sztuczną inteligencję przystało. Jednak po podaniu mu kodu oraz komunikatu o problemie, jest w stanie pomóc go naprawić - małe osłodzenie po łyżce dziegciu.

Co ważne - korzystałem z toola darmowego, ogólnie dostępnego. Wiem że PyCharm (jedno ze środowisk do programowania w Pythonie) posiada asystenta AI - jednak ze względów na licencjonowanie, nie użyłem tego rozwiązania. Robię dodatkowy projekt po godzinach, a nie pracuję w tym języku cały dzień - wtedy może byłoby to przydatne.

Pozytywna myśl na zakończenie: zaczynaliśmy z kamieniami i patykami, z resztkami upolowanych zwierząt i znalezionymi darami natury. To były nasze pierwsze narzędzia. Przede wszystkim narzedzia fizyczne. Od długiego czasu korzystamy z narzędzi intelektualnych i duchowych - filozofie, przekonania, ideologie, procedury, frameworki biznesowe. Teraz otrzymujemy kolejny krok narzędzia intelektualnego - takie które szybko doprowadzi nas do tego co sami moglibyśmy zrobić, poświęcając ogrom czasu i energii. I coś precyzja nie jest mocną stroną, pamiętajmy że nie każde narzędzie musi być precyzyjne. Ważne żeby robiło to co do niego należy. Ważne też żebyśmy my traktowali je jako narzędzia, i korzystali z nich dla naszego dobra.

Miłego dnia! Patrząc w bezkres przestrzeni, życzę Wam tego samego co mam przed sobą - błękitnego nieba.