From 6a339f52a4a7fb168ba84c298a6f909a73cecd09 Mon Sep 17 00:00:00 2001 From: oskar Date: Thu, 16 Jul 2026 16:01:38 +0200 Subject: [PATCH] =?UTF-8?q?docs(kb):=20eval-set=20pilota=20retrieval=20?= =?UTF-8?q?=E2=80=94=20baseline=20dla=20bramki=20kaskady=20fazy=203=20(utr?= =?UTF-8?q?walenie=20z=20transkryptu=20sesji=2007-16)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/kb/eval/retrieval-pilot-2026-07-16.md | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 docs/kb/eval/retrieval-pilot-2026-07-16.md diff --git a/docs/kb/eval/retrieval-pilot-2026-07-16.md b/docs/kb/eval/retrieval-pilot-2026-07-16.md new file mode 100644 index 0000000..9e80d00 --- /dev/null +++ b/docs/kb/eval/retrieval-pilot-2026-07-16.md @@ -0,0 +1,30 @@ +# Eval-set: pilot retrieval (faza 2, krok 7) — 2026-07-16 + +Stan bazy: document_chunk = 2683 chunki (bge-m3, dim 1024), 160 dokumentów z 186 kopert paperless. +Metoda: embed zapytania (bge-m3, Ollama SOLARIA) → `ORDER BY embedding <=> query_vector` → top-5. +Helper: /tmp/kbq.sh (curl /api/embeddings + psql przez ssh piha). + +## Skalibrowane progi (cosine distance) +- **< 0.45** — trafienie +- **0.45–0.55** — szara strefa (na temat, nieprecyzyjne) +- **> 0.55** — brak odpowiedzi w korpusie + +## Zapytania i wyniki (baseline dla bramki kaskady, faza 3 §6) + +| # | Zapytanie | top-1 dist | top-1 envelope | Werdykt | +|---|-----------|-----------|----------------|---------| +| 1 | polisa ubezpieczeniowa PZU warunki odpowiedzialności | 0.3418 | paperless:14 (OWU PZU Auto) | trafienie; ujawnił dup 14≡74 | +| 2 | faktura za usługi telekomunikacyjne kwota do zapłaty | 0.3447 | paperless:192 (faktura P4) | trafienie; poz. 3/5 = chunki z OCR-śmieciem (kody kreskowe) | +| 3 | zasady punktacji FLL Challenge robot game (PL) | 0.4154 | paperless:5 | szara strefa — rodzina dokumentów OK, sedno nie | +| 4 | FLL robot game mission scoring points table (EN) | 0.4114 | paperless:5; poz.2+ = paperless:119 (scoresheet, mojibake) | trafienie; cross-lingual > PL; mojibake ≠ śmieć — trafia mimo zniszczonego OCR | +| 5 | innovation project scoring | 0.3869 | paperless:3 (arkusz ocen IP) | najlepszy wynik: top-5 spójnie z jednego właściwego dokumentu | +| N | przepis na sernik z rodzynkami (negatywna kontrola) | 0.6210 | — | poprawny brak; separacja od trafień wyraźna | +| N2 | piaskownica plastikowa (kontrola graniczna) | 0.5533 | — | poprawnie na granicy "brak" — semantycznie sąsiednie dokumenty wspólnoty, nie odpowiedź | + +## Kryterium bramki kaskady (faza 3 §6) +Kaskada summary→chunk na tych samych zapytaniach: żaden płaski hit nie degraduje, hit@3 ≥ baseline, negatywne kontrole > 0.55. + +## Findings (adresowane w fazie 3 §3) +- Chunki z binarnym OCR-szumem (zmielone kody kreskowe) rankują się przez doklejony realny tekst → filtr `ocr_junk` +- paperless:14 ≡ paperless:74 (duplikat dokumentu) → dedup +- Mojibake (paperless:119) NIE wykluczać — niesie sygnał (patrz zapytanie 4)