# Chunk-Browser ## Uebersicht Der Chunk-Browser ermoeglicht das sequenzielle Durchblaettern aller Chunks in einer Qdrant-Collection. Er ist als Tab "Chunk-Browser" auf der RAG-Seite (`/ai/rag`) verfuegbar. **URL:** `https://macmini:3002/ai/rag` → Tab "Chunk-Browser" --- ## Funktionen ### Collection-Auswahl Dropdown mit allen verfuegbaren Compliance-Collections: - `bp_compliance_gesetze` - `bp_compliance_ce` - `bp_compliance_datenschutz` - `bp_dsfa_corpus` - `bp_compliance_recht` - `bp_legal_templates` - `bp_compliance_gdpr` - `bp_compliance_schulrecht` - `bp_dsfa_templates` - `bp_dsfa_risks` ### Seitenweise Navigation - 20 Chunks pro Seite - Zurueck/Weiter-Buttons - Seitennummer und Chunk-Zaehler - Cursor-basierte Pagination via Qdrant Scroll API ### Textsuche - Filtert Chunks auf der aktuell geladenen Seite - Treffer werden gelb hervorgehoben - Suche ueber den Chunk-Text (payload.text, payload.content, payload.chunk_text) ### Chunk-Details - Klick auf einen Chunk klappt alle Metadaten aus - Zeigt: regulation_code, article, language, source, licence, etc. - Chunks haben eine fortlaufende Nummer (#1, #2, ...) ### Integration mit Regulierungen-Tab Der Button "In Chunks suchen" bei jeder Regulierung wechselt zum Chunk-Browser mit: - Vorauswahl der richtigen Collection - Vorausgefuelltem Suchbegriff (Regulierungsname) --- ## API ### Scroll-Endpoint (API Proxy) ``` GET /api/legal-corpus?action=scroll&collection=bp_compliance_ce&limit=20&offset={cursor} ``` **Parameter:** | Parameter | Typ | Beschreibung | |-----------|-----|--------------| | `collection` | string | Qdrant Collection Name | | `limit` | number | Chunks pro Seite (max 100) | | `offset` | string | Cursor fuer naechste Seite (optional) | | `text_search` | string | Textsuche-Filter (optional) | **Response:** ```json { "chunks": [ { "id": "uuid", "text": "...", "regulation_code": "GDPR", "article": "Art. 5", "language": "de" } ], "next_offset": "uuid-or-null", "total_in_page": 20 } ``` ### Collection-Count-Endpoint ``` GET /api/legal-corpus?action=collection-count&collection=bp_compliance_ce ``` **Response:** ```json { "count": 12345 } ``` --- ## Technische Details - Der API-Proxy spricht direkt mit Qdrant (Port 6333) via dessen `POST /collections/{name}/points/scroll` Endpoint - Kein Embedding oder rag-service erforderlich - Textsuche ist client-seitig (kein Embedding noetig) - Pagination ist cursor-basiert (Qdrant `next_page_offset`) --- ## Weitere Features auf der RAG-Seite ### Originalquelle-Links Jede Regulierung in der Tabelle hat einen "Originalquelle" Link zum offiziellen Dokument (EUR-Lex, gesetze-im-internet.de, etc.). Definiert in `REGULATION_SOURCES` (88 Eintraege). ### Low-Chunk-Warnung Regulierungen mit weniger als 10 Chunks aber einem erwarteten Wert >= 10 werden mit einem Amber-Warnsymbol markiert. Dies hilft, fehlgeschlagene oder unvollstaendige Ingestions zu erkennen.