Halucynacja

Zjawisko, gdy model (zwłaszcza językowy) generuje informacje fałszywe lub zmyślone, przedstawiając je z pełnym przekonaniem jak fakty.

Halucynacja (ang. hallucination) to sytuacja, w której model AI — najczęściej duży model językowy (LLM) jak GPT czy Claude — generuje informacje fałszywe, niespójne ze źródłami albo zwyczajnie zmyślone, i podaje je z taką samą pewnością co fakty. Model nie mruga okiem, nie dodaje „chyba” — po prostu wymyśla nieistniejącą bibliotekę, błędny cytat albo funkcję API, której nigdy nie było, i serwuje to jak prawdę objawioną.

Kluczowe, żebyś zrozumiał skąd to się bierze: LLM nie jest bazą wiedzy ani wyszukiwarką. To model statystyczny, który przewiduje kolejny token (kawałek tekstu) na podstawie prawdopodobieństwa. Jego celem jest wygenerowanie wiarygodnie brzmiącego ciągu słów, a nie powiedzenie prawdy. Gdy w danych treningowych brakuje informacji albo Twoje pytanie jest niejednoznaczne, model i tak wygeneruje odpowiedź — bo „nie wiem” statystycznie pojawia się rzadziej niż pewna, konkretna teza. Stąd halucynacje to nie bug, tylko skutek uboczny samej architektury.

Przykład z praktyki

Klasyk: prosisz asystenta o kod w Pythonie i dostajesz import nieistniejącej paczki albo wywołanie metody, której nie ma w bibliotece.

  • import requests; requests.get_json(url) — brzmi sensownie, ale w requests nie ma get_json() (jest .json() na obiekcie odpowiedzi).
  • Model potrafi też wymyślić całą paczkę z PyPI — to zjawisko („package hallucination”) jest na tyle realne, że pojawił się atak slopsquatting: ktoś rejestruje zmyśloną nazwę paczki, na którą AI często wskazuje, i wrzuca tam złośliwy kod.

Drugi częsty scenariusz: prosisz o źródła naukowe, a dostajesz idealnie sformatowane cytaty z tytułem, autorem i numerem DOI — których żadna baza nie zna.

Na co uważać

  • Pewny ton to nie dowód. Im gładsza i bardziej konkretna odpowiedź, tym łatwiej uśpić czujność. Sprawdzaj liczby, nazwy, cytaty i sygnatury API w dokumentacji.
  • Mit „wystarczy większy model”. Nowsze modele halucynują rzadziej, ale problemu nie da się wyzerować — to cecha podejścia, nie kwestia mocy.
  • Temperature nie leczy faktów. Obniżenie temperature daje stabilniejsze odpowiedzi, ale model dalej potrafi pewnie zmyślać.
  • Weryfikuj wykonaniem. Wygenerowany kod odpal albo uruchom testy — kompilator nie da się zagadać.

Halucynacje ograniczasz technikami pokroju RAG (podawanie modelowi realnych źródeł w kontekście), grounding, function calling i proszeniem o cytaty z linkami, które możesz sprawdzić.

Pojęcia powiązane: LLM, prompt engineering, RAG (retrieval-augmented generation), grounding, temperature, token, fine-tuning, fact-checking.