Pułapki podejścia LLM-as-a-Judge
Sędziowie preferują obszerne odpowiedzi, mają trudności z ocenianiem własnych wyników i wymagają starannej kalibracji.
Pułapki podejścia LLM-as-a-Judge to bezpłatna lekcja AI Agents na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej AI Agents, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs AI Agents zawiera 4 lekcji w sumie.
Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.
Dlaczego sędziowie LLM
W przypadku otwartych wyników (esejów, przeglądów kodu i odpowiedzi konwersacyjnych) nie ma jednej poprawnej odpowiedzi. Zatrudnienie ludzi do oceniania tysięcy wyników jest kosztowne.
LLM-as-a-Judge — używanie silnego modelu do oceniania wyników — wypełnia tę lukę.
Basic LLM Judge
judge_prompt = '''
You are an evaluator. On a scale of 1-5, rate the following answer
for accuracy and helpfulness. Return JSON: {score: int, reason: str}.
Question: {question}
Answer: {answer}
'''Pułapka 1: stronniczość pozycji
Sędziowie preferują PIERWSZĄ odpowiedź w porównaniu parami. Należy zawsze losowo zmieniać kolejność i uruchamiać porównanie dwukrotnie:
def fair_compare(a, b):
score_ab = compare(a, b)
score_ba = compare(b, a) # swapped
return (score_ab + score_ba) / 2Pułapka 2: stronniczość długości
Sędziowie preferują DŁUŻSZE odpowiedzi, nawet gdy krótsze są lepsze. Należy kalibrować wynik przez normalizację długości lub odpowiednie poinstruowanie sędziego:
judge_prompt = '... Penalize answers that are verbose without adding value ...'Pułapka 3: preferowanie własnych odpowiedzi
Modele preferują własne wyniki. Jeśli GPT-4 ocenia własną pracę, przyznaje sobie wyższą ocenę, niż powinien. Do oceniania należy używać innej rodziny modeli:
- Wyniki GPT-4 -> oceniane przez Claude
- Wyniki Claude -> oceniane przez GPT-4
Pułapka 4: uległość wobec rozmówcy
Sędziowie zgadzają się z wyrazistymi opiniami zawartymi w odpowiedzi. „Jestem w 100% pewien...” otrzymuje wyższe oceny niż „Myślę, że...”. Przed ocenianiem należy usunąć słowa wyrażające pewność.
Pułapka 5: zawyżanie ocen
Przy skalach 1–5 sędziowie skupiają się wokół 4. Należy stosować ocenę binarną (poprawne/niepoprawne), aby uzyskać wyraźniejszy sygnał:
judge_prompt = '... Return PASS or FAIL only ...'Pułapka 6: stronniczość formatu
Odpowiedzi w punktach otrzymują wyższe oceny niż tekst ciągły, niezależnie od poprawności. Należy mieć tego świadomość; czasem warto narzucić format, aby wyeliminować tę zmienną.
Kalibracja względem ocen ludzi
Należy zmierzyć, jak silnie oceny sędziego korelują z ocenami ludzi na wybranej próbie:
from scipy.stats import pearsonr
human_scores = [...]
llm_scores = [...]
rho, _ = pearsonr(human_scores, llm_scores)
print(f'Correlation: {rho}')
# Below ~0.6 — judge unreliable for this taskGdy to możliwe, używaj porównań parami
„Czy A jest lepsze od B?” jest bardziej niezawodne niż „Oceń A w skali 1–5”. Przy wyborze między dwoma promptami porównanie parami jest lepsze niż ocena absolutna.
Ocenianie z użyciem Chain-of-Thought
Należy najpierw skłonić sędziego do przeprowadzenia rozumowania:
judge_prompt = '''
First list the factual claims in the answer.
Then check each against the reference.
Then produce a score.
Question: {q}
Reference: {r}
Answer: {a}
'''Koszt
Ocenianie za pomocą GPT-4 podwaja koszt ewaluacji. Do rutynowych kontroli należy używać tańszych sędziów (gpt-4o-mini lub claude-haiku), a silne modele oceniające zachować na potrzeby wydań.
Połącz z regułami
Nie należy polegać wyłącznie na sędzim. Należy połączyć:
- Reguły („zawiera „30 dni””)
- Heurystyki (zakres długości)
- Sędziego LLM do oceny części otwartej
Kalibrowanie sędziego LLM
Jak sprawdzić, czy sędzia LLM jest wiarygodny?
Podsumowanie
Sędziowie LLM są przydatni, ale obciążeni uprzedzeniami. Należy losowo zmieniać pozycje, normalizować długość, używać różnych rodzin modeli, kalibrować wyniki względem ocen ludzi i łączyć ocenę z twardymi regułami.
Często zadawane pytania
Czy lekcja „Pułapki podejścia LLM-as-a-Judge” jest bezpłatna?
Tak — pełny tekst „Pułapki podejścia LLM-as-a-Judge” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu AI Agents, przejdź na CoddyKit PRO. Kurs AI Agents zawiera 4 lekcji w sumie.
Co nauczysz się w „Pułapki podejścia LLM-as-a-Judge”?
Sędziowie preferują obszerne odpowiedzi, mają trudności z ocenianiem własnych wyników i wymagają starannej kalibracji. Ćwiczysz AI Agents z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć AI Agents?
Nie wymagamy żadnego doświadczenia. AI Agents w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.
Ile czasu zajmuje lekcja „Pułapki podejścia LLM-as-a-Judge”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji AI Agents?
Tak. Każda lekcja AI Agents zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Tworzenie agentów sterowane ewaluacją
- Budowanie zestawu testów referencyjnych
- Pułapki podejścia LLM-as-a-Judge
- Zestawy benchmarków: SWE-Bench, GAIA, ToolBench