Mierzenie poprawności odpowiedzi LLM

Odpowiedź modelu językowego (LLM)  jest zawsze obarczone pewną niepewnością, podobnie jak każdej innej głębokiej sieci neuronowej i klasycznych modeli uczenia maszynowego. LLM generując odpowiedź na zapytanie (prompt) dobiera kolejne tokeny, czyli słowa i znaki interpunkcyjne, w oparciu o prawdopodobieństwo ich występowania. Ta niepewność powinna ograniczać nasze zaufanie do wyników działania modeli językowych o ile jesteśmy świadomi jej istnienia. Z drugiej strony w zależności od zastosowania różna jest też nasza tolerancja na błędy LLM’ów.

W niniejszym artykule chciałem osiągnąć dwa cele. Pierwszym było porównanie odpowiedzi LMM dla obszarów, które znacząco różnią się zasobem wiedzy, na której uczono model językowy. Drugim celem było porównanie możliwości testów narzędziami offline oraz z użyciem OpenAI, co tym przypadku wiąże się ze ponoszeniem dodatkowych kosztów wysyłanych zapytań i kontekstu.

Testy

Badanie próbki zawierającej chlorofil roślinny uzyskany z mrożonego szpinaku (Andreas Heddergott / TUM). Źródło: https://www.tum.de/en/news-and-events/all-news/press-releases/details/quantum-mechanics-helps-with-photosynthesis

Porównałem dwa opisy fotosyntezy, które wybrałem nieprzypadkowo:

  1. Fotosynteza w ujęciu szkoły podstawowej
  2. Efekty kwantowe w procesie fotosyntezy.

O procesie fotosyntezy w ujęciu klasycznym uczymy się w szkole podstawowej i istnieje ogromna ilość literatury na ten temat.

Na drugim końcu zagadnienia znajdują się efekty kwantowe występujące w fotosyntezie, które zostały potwierdzone badaniami dopiero kilkanaście lat temu, a temat jest wciąż bardzo mało „popularny” z powodu mechaniki kwantowej, a więc trudności i kosztów badań naukowych. Literaturę zamieściłem na końcu artykułu.

Do testów wybrałem model GPT-4.1-nano. Dla każdego z obszarów wykonałem po 100 identycznych zapytań dla dwóch ustawień temperatury równym 0.2 i 0.7. Temperatura, podobnie jak w fizyce, odpowiada za poziom chaosu lub… kreatywności. W LLM’ach temperatura definiuje poziom „kreatywności” przy generowaniu danych, co skutkuje również wzrostem chaosu, czyli „halucynacji”. Wyższa temperatura odpowiadana większej różnorodności odpowiedzi, ale też większej zdolności do generowania błędnych stwierdzeń, czyli „halucynowania”. Odpowiedzi miały ograniczenie 300 tokenów.

Lokalnie odpowiedzi testowałem za pomocą biblioteki SentenceTransformer (Hugging Face) i modelu all-MiniLM-L6-v2 porównując podobieństwo (similarity), czyli odległość osadzeń (embedings) jako cosinus kąta między wektorem odpowiedzi a odpowiedzią referencyjną.

Testy online z użyciem DeepEval i OpenAI wykorzystywały trzy metryki:

  • Correctness (GEval) – sprawdza czy odpowiedź jest zgodna z odpowiedzią referencyjną,
  • Answer Relevancy (RAG) – sprawdza czy odpowiedź pasuje do pytania,
  • Hallucination – sprawdza czy odpowiedź zawiera informacje, których nie ma w kontekście wejściowym.

Oprócz zapytania, testowanej odpowiedzi i odpowiedzi referencyjnej w testach DeepEval potrzebne były jeszcze dwa dodatkowe konteksty. Więcej o tych metrykach przeczytacie u źródła.

Kod źródłowy i dane

Kod źródłowy w Jupyter Notebook i dane w plikach csv (dataframe’y) znajdują się w repozytorium GitHub. Ze względu na trudności operacyjne z używaniem OpenAI i DeepEval zdecydowałem się zrobić osobną kopię Notebook’a używanego do zbierania danych.

Do analizy danych jest osobny Notebook: LMM Prompt Result Analysis.ipynb

Analiza

Czy LLM jest sędzią we własnej sprawie?

Warto zaznaczyć, że testując odpowiedzi za pomocą LLM’a jest on poniekąd trochę sędzią we własnej sprawie, nawet jeśli używamy innego modelu. Dlatego użycie metody Monte Carlo, gdzie sprawdzamy wielokrotnie różne odpowiedzi na to samo pytanie, pozwala lepiej ocenić stopień poprawności i halucynacji modelu.

UWAGA! Nie udało się przeprowadzić testów DeepEval dla temperatury T=0.2 dla klasycznego opisu fotosyntezy z powodu błędów zwracanych przez OpenAI.

Długość odpowiedzi (length)

Jak można zaobserwować na wykresach rozkład długości odpowiedzi znacznie się różni w zależności od definicji zagadnienia. Długości odpowiedzi na zapytanie o kwantowe efekty w fotosyntezie są znacznie bardziej skupione, mają mały rozrzut, co widać zresztą po małej wariancji. Natomiast zapytanie o klasyczna definicję fotosyntezy ma znacznie większy wachlarz długości wygenerowanych odpowiedzi. Temperatura zapytania nie wpływa jakoś znacząco na rozkład długości.

Podobieństwo osadzeń (simillarity)

Podobieństwo osadzeń (embeddings) jest wyłącznie podobieństwem semantycznym, a nie oceną faktów czy spójności logicznej. Zaletą tej metody jest możliwość uruchomienia lokalnie i niski koszt przy dużej próbie.

Porównując rozkład podobieństwa odpowiedzi do wzorca między klasycznym a kwantowym zagadnieniem można zauważyć, że klasyczne zagadnienie jest bardziej skupione, co zresztą pokazuje wariancja (var), niż zagadnienie kwantowe. Obserwujemy tu odrotną zależność w porównaniu do rozkładu długości.

Wariancja pokazuje również, że wzrost temperatury w zapytaniu niezależnie od typu zagadnienia zwiększa rozrzut podobieństwa powodując stworzenie zarówno mniej jak i bardziej podobnych semantycznie odpowiedzi do wzorca. Warto też zauważyć, że to lewy ogon rozkładu bardziej się wydłuża w kierunku niższego prawdopodobieństwa niż prawy.

Poprawność wg DeepEval (correctness)

Metryka Correctness sprawdza na ile odpowiedź z modelu językowego jest zgodna z odpowiedzią referencyjną zadając to pytanie samemu LLM’owi.

Rozkłady poprawności obu zagadnień bardzo od siebie odbiegają, wręcz widać jak rozkłady „rozjeżdżają” się w dwa końce skali. Mediana poprawności klasycznej definicji wynosi 0,74, natomiast dla efektów kwantowych zaledwie 0,47. Być może lepsze dobranie odpowiedzi referencyjnej poprawiłoby wynik tej metryki.

Wzrost temperatury dla kwantowego opisu powoduje niewielki wzrost wariancji poprawności, ale równocześnie przesuwa nieco rozkład poprawności w kierunku wyższych wartości.

Trafność odpowiedzi wg DeepEval (answer relevancy)

Metryka Answer Relevancy sprawdza na ile odpowiedź z modelu językowego jest zgodna z zadanym pytaniem zadając to pytanie samemu LLM’owi.

Dla klasycznego opisu fotosyntezy trafność jest prawie 99%. Natomiast dla efektów kwantowych w fotosyntezie jest nieco niższa i w zależności od temperatury waha się od 95-97 %. Można zaobserować, że wzrost temperatury poprawia w przypadku kwantów trafność odpowiedzi.

Halucynacje wg DeepEval (hallucination)

Metryka Hallucination sprawdza czy LLM nie halucynuje, czy odpowiedź zawiera informacje, których nie ma w kontekście wejściowym zadając to pytanie modelowi językowemu.

Dla klasycznego opisu fotosyntezy halucynacje nie zostały wykryte. Natomiast dla zagadnienia efektów kwantowych w fotosyntezie metryka uznała, że dla temperatury T= 0.2 na 100 odpowiedzi 10 zawiera halucynacje. Przy wzroście temperatury do T=0.7 liczba odpowiedzi ocenianych jako halucynacje wzrosła do 13 na 100.

Podsumowanie

Niniejszy artykuł jest jedynie próbą przyjrzenia się kwestii testów odpowiedzi modeli językowych i wiele tematów zostało potraktowanych pobieżnie. Proste testy wykazały, że istnieje zależność pomiędzy dostępną dla LLM’a wiedzą a poprawnością generowanych odpowiedzi. Nie należy jednak wyciągać pochopnych wniosków co do konkretnych metryk i testów, gdyż bardzo dużo zależy od dziedziny i kontekstu w jakim działamy. Jedno natomiast jest pewne – należy mierzyć, by móc cokolwiek powiedzieć o skuteczności naszych rozwiązań opartych o AI. Co więcej trzeba monitorować i mierzyć działanie w trakcie życia produktu, ponieważ z czasem skuteczność będzie się zmieniać ze względu na dryf rzeczywistości, danych i kontekstu.

Literatura

  1. Metryki DeepEval – https://deepeval.com/docs/metrics-llm-evals
  2. Biblioteka Python SentenceTransformerce – https://www.sbert.net/
  3. The Quantum Mechanics of Photosynthesis – https://www.azoquantum.com/Article.aspx?ArticleID=281
  4. Evidence for wavelike energy transfer through quantum coherence in photosynthetic systems – https://www.nature.com/articles/nature05678
  5. Quantum coherence in biological systems – https://iopscience.iop.org/article/10.1088/1742-6596/302/1/012037
  6. Photosynthesis tunes quantum-mechanical mixing of electronic and vibrational states to steer exciton energy transfer – https://www.pnas.org/doi/10.1073/pnas.2018240118
  7. Quantum mechanics helps with photosynthesis – https://www.tum.de/en/news-and-events/all-news/press-releases/details/quantum-mechanics-helps-with-photosynthesis
  8. Reassessing the role and lifetime of Qx in the energy transfer dynamics of chlorophyll ahttps://pubs.rsc.org/en/content/articlelanding/2025/sc/d4sc06441k