Tworzenie agentów sterowane ewaluacją
Napisz test ewaluacyjny, zanim wdrożysz agenta — to jedyny sposób na iterowanie bez wprowadzania regresji.
Tworzenie agentów sterowane ewaluacją to bezpłatna lekcja AI Agents na CoddyKit. To lekcja 1 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.
Ewaluacje są testami dla AI
Nie wdrożyliby Państwo kodu bez testów. Ta sama zasada dotyczy agentów LLM — bez ewaluacji każda zmiana jest rzutem monetą.
Ewaluacja sterowana rozwojem (Eval-Driven Development, EDD) oznacza napisanie ewaluacji PRZED wdrożeniem zmiany.
Pętla EDD
- Należy napisać nieprzechodzącą ewaluację: dane wejściowe + oczekiwane zachowanie
- Należy ulepszać agenta, aż ewaluacja przejdzie
- Należy dodać ewaluację do zestawu
- Należy uruchamiać ją przy każdej zmianie
Co poddawać ewaluacji
W przypadku agenta należy przeprowadzać ewaluację na kilku poziomach:
- Komponent — czy retriever zwraca właściwe fragmenty?
- Etap — czy LLM wybiera właściwe narzędzie?
- Od początku do końca — czy agent generuje właściwą odpowiedź końcową?
Dane ewaluacyjne
Każdy wiersz danych ewaluacyjnych zawiera co najmniej:
eval_example = {
'input': 'What is our return policy?',
'expected_output': 'mentions 30-day window',
'expected_tool_calls': ['retrieve'],
'metadata': {'tags': ['policy', 'common']}
}
for k, v in eval_example.items():
print(f"{k}: {v}")
Run an Eval Suite
def run_evals(suite, agent):
results = []
for case in suite:
actual = agent.run(case['input'])
scores = [
score_correctness(actual, case['expected_output']),
score_tool_calls(actual.tool_calls, case['expected_tool_calls'])
]
results.append({'case': case, 'actual': actual, 'scores': scores})
return resultsIntegracja z CI
Należy uruchamiać ewaluacje przy każdym PR. Jeśli jakość spadnie poniżej ustalonego progu, należy zablokować scalanie:
# .github/workflows/evals.yml
on: pull_request
jobs:
evals:
runs-on: ubuntu-latest
steps:
- run: python -m evals.run --fail-below 0.85Częstotliwość ewaluacji
- Ewaluacje komponentów — przy każdym PR
- Ewaluacje od początku do końca — przy każdym PR (próbkowane) oraz co noc (pełne)
- Ślady z produkcji -> zestaw ewaluacyjny — co tydzień
Potok od produkcji do ewaluacji
Należy analizować rzeczywiste ślady. Złe wyniki stają się jutrzejszymi ewaluacjami:
for trace in production_traces_with_thumbs_down():
add_to_eval_suite(trace.input, expected=trace.fixed_output_from_human)Ewaluacja w LangSmith / Langfuse
Oba narzędzia mają wbudowaną obsługę ewaluacji: wersjonowanie zbiorów danych, funkcje ewaluacyjne i widoki porównawcze.
Ręczne kontrole wyrywkowe
Automatyczne ewaluacje nie wychwytują stylu i niuansów. Co jakiś czas należy ręcznie przeczytać 20 losowych śladów — pozwala to wykryć problemy, których ewaluacje nie wychwytują.
Antywzorzec: zapamiętywanie zestawu ewaluacyjnego
Jeśli dostraja się agenta tak długo, aż przejdzie ewaluację, ale zestaw ewaluacyjny jest mały, dochodzi do przeuczenia. Należy stale powiększać ewaluacje i rotacyjnie zmieniać podziały na dane testowe i treningowe.
Utrzymanie zestawu ewaluacyjnego
Ewaluacje tracą aktualność wraz ze zmianami produktu. Należy dodawać przypadki dla nowych funkcji i usuwać przypadki dotyczące usuniętych funkcji.
Definicja EDD
Co oznacza Eval-Driven Development?
Podsumowanie
Ewaluacja sterowana rozwojem jest niezbędna w przypadku poważnie traktowanych agentów. Należy pisać ewaluacje na każdym poziomie, uruchamiać je w CI i rozszerzać zestaw na podstawie śladów z produkcji.
Często zadawane pytania
Czy lekcja „Tworzenie agentów sterowane ewaluacją” jest bezpłatna?
Tak — pełny tekst „Tworzenie agentów sterowane ewaluacją” 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 „Tworzenie agentów sterowane ewaluacją”?
Napisz test ewaluacyjny, zanim wdrożysz agenta — to jedyny sposób na iterowanie bez wprowadzania regresji. Ć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 1 z 4.
Ile czasu zajmuje lekcja „Tworzenie agentów sterowane ewaluacją”?
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