dp-zp-agent/tools/answer_evaluation/README.md

3.6 KiB

Generovanie odpovedí nad zmrazeným grafom

Aktuálne meranie v5.1 je historická regresia. Výsledky sú v spoločnej správe. Používa 39 vopred vybraných DEV otázok (20 pôvodných a 19 historických zlyhaní) a 320 finálnych regresných otázok vrátane týchto 39. Nejde o nezávislý holdout.

Generovanie overí odtlačky kódu/promptu/dát voči kompletnému DEV. Parser prijíma platný typovaný JSON alebo jeden úplný JSON blok. Pri chybe formátu je povolený najviac jeden opravný požiadavok bez gold; pôvodné aj opravné odpovede sa ukladajú. Vecné zlyhanie hodnotenia neopakuje požiadavok. Report uvádza prvotnú aj konečnú úspešnosť a počet opráv. Natívny výber OpenWebUI nástrojov zostáva bodom 4.

Reprodukcia potrebuje zodpovedajúci release checkout a graf, načítanú konfiguráciu a nové výstupné adresáre. Najprv spustite --split dev s --dev-ids tools/graphrag/evaluation/results/v5_1_preparation/generation_dev_ids.json, --audit tools/graphrag/evaluation/results/v5_1_preparation/source_audit.json a --freeze-manifest tools/graphrag/evaluation/frozen_v5_1.json. Finálny beh používa rovnaké parametre, --split regression a povinné --dev-results smerujúce na tento dokončený DEV. Historické výsledky sa neprepisujú.

Historický protokol v4

Nasledujúci text a pôvodný TEST 300 otázok opisujú v4; jej reprodukcia vyžaduje pôvodný kód aj graf. Týchto 300 otázok je pri ďalšom ladení historickou regresiou.

Tento experiment meria OpenWebUI chat API po dodaní skutočného grafového kontextu lokálnym skriptom. Neoveruje prehliadač ani automatický výber nainštalovaných nástrojov hlavným agentom. Klasický RAG sa nemení.

Pôvodná diagnostika použila 20 otázok. Všetkých 20 sa stalo DEV; zostávajúcich 300 otázok zo zmrazeného grafového benchmarku tvorí nový TEST generovania. Predchádzajúce interné grafové meranie neposkytlo výstupy jazykového modelu. Žiadne očakávania, zdrojový oracle ani výsledky evaluatora sa modelu neposielajú.

graph_answer_prompt.txt určuje výstup. Kontext obsahuje iba skutočné relevantné fakty a zdroje, bez mien profilov vydávaných za názov akademickej práce či typu osoby zamieňaného za taxonomickú kategóriu. Štruktúrované tvrdenia musia spájať správne fakty pri tej istej osobe/práci/dokumente. Kontrolujú sa aj zdrojové odkazy, množiny, počty a povinné hodnoty v prirodzenom texte. Nepovinné null znamená neprítomnosť tvrdenia. Označenie diplomovej práce za dizertačnú sa odmieta.

Ide o prísne, ale stále pravidlové hodnotenie. Nejde o úplnú sémantickú kontrolu každej možnej vety. Zdrojový oracle je nezávislý od grafového buildera, nie od človeka, ktorý by nezávisle anotoval celý test. Osoby, korpus a šablóny sú známe.

Každý nový výstupný adresár obsahuje deklaráciu pred meraním, SHA kódu/promptu, presné DEV/TEST ID a výsledky všetkých otázok. Odpovede sa ukladajú priebežne; chyba ani prerušený beh sa nesmie zatajiť či premenovať na nezávislý nový TEST. Po odhalení TEST výsledkov patria tieto otázky pri ladení do DEV.

set -a
source .env
set +a
# Reprodukcia používa vždy nový adresár; nejde o nový nezávislý TEST.
python -m tools.answer_evaluation.evaluate_graph_answers \
  --split test --output-dir /tmp/graphrag-answers-reproduction

Model je model120-fast; presný názov modelu vrátený serverom, tokeny a pôvodné odpovede sú uložené vo výsledkoch. Prístupový kľúč zostáva iba v prostredí.