Doc2Vector Explorer

Exploration und Suche in der dokumentation-Pipeline. Zeigt hierarchische Dokumente, deren Seiten und die extrahierten Text-Chunks mit Taxonomie-Klassifizierung, Keywords und Entities.

URL/explorer
Datenbankki_system (dokumentation, dokumentation_chunks)
Controller/src/Controller/ExplorerController.php
API-Controller/src/Controller/Api/ExplorerController.php
Views/src/View/explorer/
Pipeline/opt/scripts/pipeline/analyze.py

Datenmodell

TabelleBeschreibungFelder
dokumentation Hierarchische Dokumente id, parent_id, title, path, content, depth, status
dokumentation_chunks Extrahierte Text-Chunks id, dokumentation_id, chunk_index, content, token_count, taxonomy_category, entities, keywords, qdrant_id

Web-UI Komponenten

SeiteURLBeschreibung
Dashboard/explorerStatistiken, Top-Kategorien, neueste Chunks
Dokumente/explorer/dokumenteHauptbereiche (depth=0)
Seiten/explorer/seitenUnterseiten (depth>0) mit Filter
Chunks/explorer/chunksAlle Chunks mit Kategorie/Status-Filter
Taxonomie/explorer/taxonomieKategorien, Top-Keywords, Top-Entities
Suche/explorer/sucheHybridSearch (Qdrant + DB)

Detail-Ansichten

API-Endpoints

MethodEndpointBeschreibung
GET/api/v1/explorer/statsStatistiken (Dokumente, Seiten, Chunks, Tokens)
GET/api/v1/explorer/dokumenteAlle Hauptbereiche
GET/api/v1/explorer/dokumente/{id}Dokument mit Seiten und Taxonomie
GET/api/v1/explorer/seitenAlle Seiten (?search=, ?parent_id=)
GET/api/v1/explorer/seiten/{id}Seite mit Chunks und Unterseiten
GET/api/v1/explorer/chunksAlle Chunks (?category=, ?status=, ?search=)
GET/api/v1/explorer/chunks/{id}Chunk-Details
GET/api/v1/explorer/taxonomieKategorien und Top-Keywords
GET/api/v1/explorer/entitiesAggregierte Entities aus allen Chunks
POST/api/v1/explorer/sucheHybridSearch (JSON Body)

Chunk-Analyse

Die Pipeline extrahiert aus jedem Chunk:

HybridSearch

Die Suche kombiniert semantische Vektorsuche (Qdrant) mit Keyword-Matching (MariaDB).

API-Aufruf

# Einfache Suche
curl -X POST https://dev.campus.systemische-tools.de/api/v1/explorer/suche \
  -H "Content-Type: application/json" \
  -d '{"query": "Apache Konfiguration", "limit": 10}'

# Mit Kategorie-Filter
curl -X POST https://dev.campus.systemische-tools.de/api/v1/explorer/suche \
  -H "Content-Type: application/json" \
  -d '{"query": "SSL Zertifikat", "category": "Sicherheit", "limit": 5}'

Response-Format

{
  "success": true,
  "data": {
    "query": "Apache Konfiguration",
    "results": [
      {
        "id": 42,
        "content": "Apache wird mit systemctl...",
        "dokument_title": "Apache",
        "dokument_path": "/docs/modul/apache",
        "taxonomy_category": "Server",
        "score": 0.87
      }
    ],
    "suggestions": ["Apache Module", "Apache Security"],
    "count": 5
  }
}

Statistiken abrufen

curl https://dev.campus.systemische-tools.de/api/v1/explorer/stats

Response

{
  "success": true,
  "data": {
    "dokumente": 12,
    "seiten": 45,
    "chunks": {
      "total": 234,
      "tokens": 125000,
      "analyzed": 230,
      "synced": 220
    },
    "taxonomy_categories": [
      {"taxonomy_category": "Server", "count": 45},
      {"taxonomy_category": "Sicherheit", "count": 32}
    ]
  }
}

Pipeline-Integration

Die Chunks werden von der Analyse-Pipeline generiert:

  1. /opt/scripts/pipeline/analyze.py - Chunk-Erstellung und Analyse
  2. /opt/scripts/pipeline/sync_qdrant.py - Sync zu Vektor-DB
  3. /opt/scripts/pipeline/generate_semantics.py - Semantik-Generierung

Siehe: KI-Pipeline