Powrót do: AI_Testers vol. 1 – Bonusy (aktywnie rozwijane)
Dlaczego AI nie słucha komend jak pies? Walka z niedeterministycznością w testach LLM
W tej lekcji…
Wyobraź sobie, że wysyłasz na drukarkę ten sam dokument pięć razy. Za pierwszym razem drukuje czysty tekst, za drugim ucina marginesy, a za trzecim… nagle wypuszcza przepis na zupę pomidorową. Co robisz z takim sprzętem na testach? Prawdopodobnie zgłaszasz krytyczny błąd i wyrzucasz drukarkę przez okno.
W klasycznym QA mamy świętą zasadę: ściśle zdefiniowany Input zawsze prowadzi do stałego Expected Output. Ale wchodząc w świat sztucznej inteligencji, ta zasada nagle przestaje istnieć. Dlaczego ten sam prompt za każdym razem daje inną odpowiedź? W tym odcinku zmierzymy się z największym lękiem testerów wchodzących w świat AI i powiemy sobie wprost: w modelach LLM brak determinizmu to nie wada, to ich właściwość.
📚 Pojęcia, które warto znać:
- Niedeterministyczność LLM: Zjawisko polegające na tym, że model językowy przy identycznym zapytaniu może zwrócić różne odpowiedzi. Wpływają na to m.in.: sformułowanie promptu, wersja modelu, parametry generacji (np. temperatura), a nawet ukryte aktualizacje po stronie dostawcy (np. OpenAI, Anthropic).
- Testowanie stabilności: Zmiana paradygmatu w QA. Zamiast oczekiwać twardej powtarzalności i porównywania wyników ze stringami 1:1 (zero-jedynkowe działa/nie działa), oczekujemy stabilności, która mieści się w akceptowalnych granicach zdefiniowanych dla projektu i nie niesie ze sobą ryzyka.
🎯 5 żelaznych metryk jakościowych, które musisz znać:
Gdy twardy “expected output” nie istnieje, nasze automatyzacje zaczynają przypominać ocenę eseju. Jako tester zaczynasz oceniać JAK model odpowiedział, bazując na 5 metrykach:
- 🎯 Accuracy (Poprawność) – sprawdzanie, czy model “nie ściemnia” i nie wymyśla faktów bez pokrycia w danych.
- 🔗 Consistency (Spójność) – czy dyskusja jest spójna logicznie i bot nie zaprzecza samemu sobie.
- 📋 Compliance (Zgodność z instrukcją) – weryfikacja, czy model ściśle trzyma się zasad (np. formatowanie odpowiedzi na dokładnie 5 słów).
- ⚙️ Formatting (Formatowanie) – pilnowanie technicznego rygoru, by model np. nie uciął nawiasu i nie skruszył parsowania JSON-a w infrastrukturze.
- 🛡️ Safety (Bezpieczeństwo) – wyłapywanie momentów, w których algorytm wypluwa toksyczne prompty lub wrażliwe informacje biznesowe.
Linki i materiały dodatkowe
- 📝 Jak testować LLM-y: Ach, ta niedeterministyczność – punkt wyjścia całej serii: dlaczego model potrafi dać dwie różne odpowiedzi na to samo pytanie i co ta niedeterministyczność oznacza dla testera.
- 📚 OpenAI API – parametr
temperature– oficjalna dokumentacja parametru, który kontroluje losowość generowania odpowiedzi.temperature=0daje najbardziej powtarzalne wyniki,temperature=1maksymalną kreatywność. Dobry punkt wyjścia do zrozumienia, co tak naprawdę kręci korbą niedeterminizmu. - 📚 Anthropic Claude – dokumentacja modeli i parametrów – odpowiednik dokumentacji OpenAI po stronie Anthropica. Opisuje parametry temperature i top_p, które bezpośrednio wpływają na powtarzalność odpowiedzi.
- 📄 “Attention Is All You Need” (Vaswani et al., 2017) – praca naukowa, która dała początek architekturze Transformer, czyli silnikowi pod każdym współczesnym LLM. Pomaga zrozumieć, dlaczego modele z natury generują odpowiedzi probabilistycznie, a nie deterministycznie. Nie musisz rozumieć matematyki – wstęp i abstrakt wystarczą do rozmowy z każdym ML engineerem.
