This commit is contained in:
team 1
2026-05-12 09:16:09 +02:00
parent 0d55c0a439
commit feaec9bbaf
7 changed files with 405 additions and 17 deletions

View File

@@ -0,0 +1,37 @@
# RetrieX Patch p100b - Admin Eval Case Selection Fix
## Ziel
Behebt die Admin-Eval-UX, wenn ein einzelner Case ausgewaehlt wird und der Request mit `No eval cases selected.` endet.
## Ursache
Die p100/p100a-Seite nutzte ein freies `datalist`-Feld fuer Case-IDs, das Cases aller Eval-Typen enthielt. Dadurch konnte ein Case aus `shop_query` ausgewaehlt werden, waehrend das Formular noch einen anderen Eval-Typ sendete. Der Admin-Service suchte dann nur in der Case-Datei des gesendeten Typs und fand keine passenden Cases.
## Aenderungen
- Das freie Case-ID-Feld wurde durch ein gefiltertes Select ersetzt.
- Die Case-Liste wird clientseitig passend zum gewaehlten Eval-Typ gefiltert.
- Beim Wechsel des Eval-Typs wird eine nicht passende Case-Auswahl automatisch geleert.
- Der Admin-Service ist robuster: Wenn eine Case-ID nicht im gesendeten Typ gefunden wird, wird sie ueber alle unterstuetzten Eval-Typen gesucht und mit dem richtigen Typ ausgefuehrt.
- Der Controller redirectet nach dem Run auf den effektiv ausgefuehrten Eval-Typ.
- Die alte unklare Meldung `No eval cases selected.` wird durch konkrete Fehlertexte ersetzt.
## Scope
Keine Aenderungen an:
- Retrieval-Logik
- Shopquery-Logik
- Follow-up-Logik
- Answer-Guard-Logik
- Eval-Cases
- YAML-Konfiguration
- Modellparametern
- Datenbank/Migrationen
## Geaenderte Dateien
- `src/Controller/Admin/AdminEvalController.php`
- `src/Service/Admin/EvalAdminService.php`
- `templates/admin/evals/index.html.twig`

View File

@@ -0,0 +1,45 @@
# RetrieX Patch p100c - Admin Eval Document Labels
## Ziel
Die Admin-Eval-Resultate sollen bei Retrieval-/Answer-Guard-Fällen nicht nur technische `document_id`- und `chunk_id`-Werte anzeigen, sondern auch menschenlesbare Dokumentinformationen, damit ein gefundenes Dokument im Admin/Dateibestand leichter identifiziert werden kann.
## Änderungen
- `NdjsonHybridRetriever::retrieveDebug()` gibt pro Debug-Treffer zusätzlich aus:
- `document_title`
- `file_path`
- `version_number`
- `RetrievalDebugRunner` schreibt in Eval-Reports zusätzlich:
- `document_refs`: eindeutige Dokumentübersicht mit Titel, Datei, Version, Ranks und Chunk-IDs
- `result_rows`: rankgenaue Trefferliste mit Titel, Datei, Chunk-ID und Text-Preview
- Admin-Eval-Template zeigt diese Informationen direkt in den Result-Details:
- Tabelle "Gefundene Dokumente"
- aufklappbare Tabelle "Treffer / Chunks anzeigen"
- JSON-Details bleiben weiterhin verfügbar
## Nicht geändert
- Keine Eval-Assertions geändert
- Keine Retrieval-Gewichte geändert
- Keine Shopquery-/Follow-up-/Answer-Logik geändert
- Keine YAML-/Parameteränderung
- Keine Datenbankmigration
## Prüfung
Nach Einspielen:
```bash
php bin/console mto:agent:config:validate
php bin/console mto:agent:eval:run retrieval
php bin/console mto:agent:eval:run answer_guard
```
Danach im Admin:
```text
/admin/evals/
```
Einen Retrieval- oder Answer-Guard-Eval öffnen und prüfen, ob bei den Resultaten Titel/Datei zusätzlich zur Doc-ID sichtbar sind.