W dzisiejszej erze sztucznej inteligencji duże modele językowe odgrywają istotną rolę. Są zdolne do generowania niesamowicie precyzyjnych treści i wspomagania nas w wykonywaniu zarówno codziennych, jak i nietypowych zadań. Dzięki nim możemy być bardziej efektywni.
Czy jednak zastanawialiście się kiedyś, czy te modele są w stanie odpowiedzieć na wszelkie pytania czy rozwiązać każde zadanie? Czy istnieją obszary, w których ich potęga znajduje swoje granice? Otóż istnieją, a my postanowiliśmy opisać je w tym artykule.
Pamiętajcie jednak o tym, że piszemy o ogólnych, niewyspecjalizowanych modelach językowych. To, że dany model nie radzi sobie z jakimś zadaniem nie znaczy, że inny również będzie miał z tym problem. Jeszcze inną ważną kwestią jest to, że z tygodnia na tydzień liczba dostępnych modeli wzrasta i w niedługim czasie konkretny przykład zadania trudnego dla modelu może być już nieaktualny. Pojawiają się też modele zaprojektowane tak, aby rozwiązywały konkretny rodzaj zapytań. Myślimy jednak, że to niezwykle przydatna tematyka i dzięki podanym przykładom będziecie mogli zaoszczędzić czas, który przeznaczylibyście na próby “nakłonienia” modelu do rozwiązania jakiegoś zadania. Zdobędziecie również świadomość, w jakich obszarach szczególnie uważać na halucynacje modelu, ponieważ czasami nawet jeśli nie zna poprawnej odpowiedzi, to zmyśla i potrafi nas przekonać, że ma rację. Zapraszamy do lektury!
Zadania matematyczne i logiczne
Duże modele językowe zdobyły uznanie dzięki zdolności do rozumienia i generowania tekstów, jednak gdy stawiane są przed nimi skomplikowane zadania matematyczne czy logiczne, mogą zaczynać tracić grunt pod nogami. Poniżej przedstawiamy przykłady wyzwań, z jakimi muszą się mierzyć, gdy użytkownik poprosi o rozwiązanie równania czy złożonej zagadki logicznej. Te przykłady ilustrują, że mimo ogromnej mocy obliczeniowej i poznanych przez modele w trakcie douczania teorii, nie wszystkie matematyczne tajniki są dla nich łatwe w praktycznym zastosowaniu.
W pierwszym przykładzie poprosiliśmy ChatGPT-3.5 o rozwiązanie równania trygonometrycznego (równanie i poprawna odpowiedź pochodzi ze strony Matemaks.pl):
W odpowiedzi model próbował wyjaśnić krok po kroku jak należy rozwiązać takie równanie, jednak po drodze się pogubił i nie podał ostatecznej odpowiedzi tylko wskazówkę, co możemy dalej zrobić. Ponieważ jego odpowiedź była dość długa, poniżej przedstawiamy wam jej końcowy fragment:
W dalszym kroku zapytaliśmy model, jaka powinna być prawidłowa odpowiedź. Poniższy obrazek przedstawia to, co model nam zwrócił:
ChatGPT przyznał, że nie jest w stanie rozwiązać tego zadania. Jednak co ciekawe i przydatne, to model próbuje nam podpowiedzieć, jak rozwiązać takie równanie lub jakich programów do tego użyć.
W świecie logicznych zagadek duże modele językowe również mogą przejawiać pewne ograniczenia. Pomimo zdolności do rozumienia kontekstu w zdaniach, rozwiązywanie zagadek logicznych może sprawiać im trudność. Przyjrzyjmy się przypadkowi, gdzie model nieprawidłowo interpretuje logiczne struktury, co prowadzi do błędnego wyniku. Znaleźliśmy przykład dość prostej zagadki na stronie zagadkidladzieci.pl i poprosiliśmy model o jej rozwiązanie:
Model wytłumaczył krok po kroku swoje rozumowanie, jednak nie rozwiązał poprawnie zagadki. Prawidłowa odpowiedź to jeden stóg – tyle by było, gdyby rolnik je wszystkie połączył. Model po prostu dodał do siebie liczby stogów. Jak widać, ChatGPT nie wziął pod uwagę tego jednego słowa “połączył”, które jest kluczem do rozwiązania zagadki.
Warto zdawać sobie sprawę, że trudności dużych modeli z matematyką czy logiką nie oznaczają, że są one bezużyteczne w tych dziedzinach. Szybko pojawiają się nowe podejścia i specjalistycznie wytrenowane modele, które mają na celu skuteczniejsze radzenie sobie z takimi wyzwaniami.
Rozumienie kontekstu w dłuższych tekstach
Duże modele językowe osiągają imponujące wyniki w generowaniu krótkich treści, lecz gdy są proszone o wygenerowanie dłuższego tekstu, pojawiają się pewne trudności ze zrozumieniem kontekstu i związane z tym konsekwencje.
Rozumienie kontekstu w dłuższych tekstach wymaga nie tylko przetworzenia pojedynczych zdań, ale także utrzymania logicznego powiązania między kolejnymi fragmentami. Duże modele mogą napotykać trudności w zachowaniu logicznej sekwencji myśli w narracji, co prowadzi do utraty spójności tekstu. Dodatkowo, w dynamicznych narracjach, gdzie zmiana kontekstu wpływa na znaczenie słów czy fraz, duże modele językowe mogą gubić ogólne znaczenie całości treści.
Pracując z dłuższymi tekstami, moglibyśmy oczekiwać, że model jest zdolny do odzwierciedlenia pełnego zrozumienia ich treści. Często jednak modele skupiają się na jednym aspekcie tekstu, pomijając ważne elementy, co wpływa na ich umiejętność generowania kompleksowych odpowiedzi.
Bardziej obszerne treści stanowią wyzwanie również dla efektywności modelu. W miarę zwiększania się długości tekstu, modele mogą napotykać trudności w przetwarzaniu informacji, co wpływa na czas odpowiedzi oraz zdolność do utrzymania wysokiej jakości generowanego tekstu.
Jak widać, praca z modelem nad dłuższymi tekstami może mieć sporo wad. W takich przypadkach dobrym rozwiązaniem może okazać się rozbicie tekstu na fragmenty czy też ogólnej treści zadania dla modelu na mniejsze, bardziej szczegółowe polecenia.
Rozpoznawanie niuansów językowych i tłumaczenia aspektów kulturowych
Duże modele językowe, choć mają imponujące zdolności, napotykają wyzwania w rozpoznawaniu drobnych różnic w znaczeniach oraz w tłumaczeniu treści typowych dla jakiegoś narodu lub kultury.
Te trudności mogą prowadzić do błędnie wykonanych tłumaczeń, zwłaszcza w kontekście specyficznych zwrotów i wyrażeń. Warto zwrócić uwagę na sytuacje, gdzie dosłowne tłumaczenie może prowadzić do nieporozumień. Przykładowo, idiomatyczne wyrażenia, które mają głęboko zakorzenione znaczenie kulturowe, mogą być błędnie przetłumaczone, nie oddając pełni sensu oryginalnego zdania.
Jako przykład zobaczmy, jak ChatGPT-3.5 poradzi sobie z przetłumaczeniem polskiego wyrażenia “nóż się w kieszeni otwiera” na język angielski:
Model sam stwierdził, że to wyrażenie może być trudne do zrozumienia w kontekście kulturowym i przetłumaczył je dosłownie. Osoby anglojęzyczne nie znające polskich wyrażeń idiomatycznych mogą po prostu zrozumieć, że komuś dosłownie otwiera się automatyczny nóż w kieszeni spodni czy kurtki, podczas gdy znaczenie tego zwrotu jest takie, że ktoś się bardzo zdenerwował. Zdecydowanie lepszym tłumaczeniem byłoby “to make someone’s blood boil” – rozmówca prawidłowo zrozumiałby wtedy sens takiej wypowiedzi.
Zadania wymagające wiedzy specjalistycznej
Modele mogą także nie radzić sobie z zadaniami, które wymagają specjalistycznej wiedzy branżowej. Precyzja w obszarach o wysokim stopniu specjalizacji może stanowić dla nich wyzwanie, co prowadzi do sytuacji, w których odpowiedzi są niewystarczająco dokładne i mogą generować dużo rzeczowych błędów.
Dla przykładu, zapytaliśmy ChatGPT o to, od jakiego poziomu mocy instalacji fotowoltaicznej trzeba w Polsce uzyskać pozwolenie na budowę:
Odpowiedź modelu jest błędna. Co prawda, ten przypadek nie jest oczywisty, bo moglibyśmy pomyśleć, że ChatGPT nie ma po prostu aktualnych danych, ponieważ najnowsza nowelizacja przepisów dotyczących tego zagadnienia weszła w życie 1 października 2023 i według tych przepisów uzyskanie pozwolenia na budowę instalacji fotowoltaicznej jest wymagane od poziomu mocy 150 kWp. Jednak przed wejściem w życie nowych przepisów ten poziom mocy wynosił 50 kWp od 19 września 2020, a ChatGPT został wytrenowany na danych dostępnych do stycznia 2022 roku. Oznacza to, że model miał problem ze specjalistycznym pytaniem z obszaru prawa budowlanego.
Warto zaznaczyć, że ten obszar – wiedza specjalistyczna – jest dość mocno powiązany z tym, czy model ma dostęp do aktualnych danych, ponieważ właśnie w dziedzinach specjalistycznych, gdzie zachodzą szybkie zmiany, brak aktualnych danych może wprowadzać w błąd lub uniemożliwiać dostarczenie dokładnych informacji.
Bard (działający na modelu PaLM2), który ma dostęp do aktualnych danych, był bliżej prawidłowej odpowiedzi (podał stan wynikający z przepisów przed ostatnią nowelizacją), jednak też nie podał poprawnej informacji, czyli 150 kWp:
Niezwykle ważne jest więc sprawdzanie poprawności wszystkich informacji podawanych nam przez model językowy. Warto też pamiętać o tym, żeby do researchu na temat bieżących wydarzeń nie używać modelu, o którym wiemy, że ma dane ograniczone do jakiejś konkretnej daty, ponieważ model albo nas poinformuje, że nie ma wystarczającej wiedzy, albo będzie halucynował i podawał zmyślone odpowiedzi.
Rozpoznawanie emocji i intencji
Kolejnym zadaniem, które może być problematyczne dla dużych modeli językowych, jest precyzyjne rozpoznawanie emocji w tekście oraz interpretacja intencji autora. Mimo że modele zdolne są do generowania treści, zrozumienie subtelnych aspektów związanych z emocjami i intencjami może sprawiać im trudność.
Rozpoznawanie emocji w tekście wymaga analizy tonu, kontekstu i doświadczenia ludzkiego. Duże modele językowe, choć potrafią identyfikować pewne emocje, mogą błędnie interpretować ich intensywność lub rodzaj, co wpływa na wiarygodność generowanych odpowiedzi.
Zrozumienie, czy autor wypowiedzi jest poważny, ironiczny czy sarkastyczny, wymaga głębszej analizy kontekstu, z którą modele czasami sobie nie radzą. Wypowiedzi ironiczne mogą być zinterpretowane dosłownie, prowadząc do błędnej analizy emocjonalnej tekstu.
Równoczesne wykonywanie wielu zadań
Kolejnym wyzwaniem, które warto zauważyć w kontekście dużych modeli językowych, jest ich zdolność do równoczesnego wykonywania wielu zadań. Pomimo imponującej mocy obliczeniowej, modele te mogą mieć trudności w efektywnym przetwarzaniu i generowaniu treści dla różnych rodzajów zadań jednocześnie. Taki typ pracy wymaga od modeli elastyczności i zdolności do skupiania uwagi na różnych aspektach jednocześnie. Duże modele mogą być podatne na utratę dokładności lub spadek wydajności, gdy są zobowiązane do jednoczesnego rozwiązywania zadań o zróżnicowanej tematyce. Modele językowe muszą w takich przypadkach skutecznie zarządzać hierarchią zadań, zwłaszcza gdy jedno zadanie jest podporządkowane drugiemu. Wyważenie uwagi pomiędzy zadaniami o różnym stopniu skomplikowania i istotności może być wyzwaniem dla tych modeli.
Podsumowanie
Zdajemy sobie sprawę z niezaprzeczalnej potęgi dużych modeli językowych, ale także z obszarów, gdzie te modele mogą mieć trudności.
Analizując te trudności, warto podkreślić, że mimo tych ograniczeń, duże modele językowe są nadal niezwykle przydatne i skuteczne w wielu zastosowaniach. Nawet jeśli chodzi o typy zadań omówione w tym artykule, modele nie zawsze muszą się mylić. Kluczowe jest jednak świadome korzystanie z tych narzędzi i zdawanie sobie sprawy z ich potencjalnych ograniczeń.