docs: sez. 11.8 reranker rimandato (criteri futuri) + 11.9 hybrid retrieval
This commit is contained in:
@@ -380,6 +380,31 @@ record, incluso supersedere memorie altrui.
|
||||
(es. `API_KEYS=readonly:xxx,write:yyy` o chiavi con claim), filtro obbligatorio
|
||||
per scope/kind/project_id in base alla chiave, senza cambiare l'API pubblica.
|
||||
|
||||
### 11.8 Reranker: rimandato (decisione 2026-08-16)
|
||||
|
||||
Con l'hybrid retrieval (sez. 11.9) i candidati sono fusi con RRF ma senza
|
||||
reranker di qualità. **Decisione**: rimandato — a ~330 record il beneficio è
|
||||
marginale e la latenza aggiuntiva (100-500ms/query con qwen3 locale) non vale
|
||||
il costo.
|
||||
|
||||
**Criteri per implementarlo** (quando uno si verifica):
|
||||
1. Volume > ~5k record o precisione insufficiente segnalata dalle metriche
|
||||
(dashboard Grafana: hit rate, latenza)
|
||||
2. Query con molti candidati ambigui (top-8 con score simili)
|
||||
3. Latenza accettabile: rerank dei top-8 con qwen3:1.7b su Ollama (brain),
|
||||
opt-in via parametro `rerank: true` (stesso pattern di `hybrid`)
|
||||
|
||||
### 11.9 Hybrid retrieval (dal gateway v2.6.0 / estensione v1.7.0)
|
||||
|
||||
- `hybrid: true` in search → BM25 (sparso, fastembed Qdrant/bm25) + vettoriale,
|
||||
fusione RRF; default invariato (punteggi cosine)
|
||||
- Sparse vector `bm25` (modifier IDF) + indice TEXT su `text`; migrazione
|
||||
automatica (create_vector_name + backfill) all'avvio
|
||||
- `min_score` applicato al prefetch denso (anti-rumore); i punteggi hybrid
|
||||
sono RRF, non cosine
|
||||
- qdrant-client 1.19.0 (create_vector_name, query_points); fastembed 0.5.1
|
||||
con pre-download del modello nel Dockerfile
|
||||
|
||||
### 11.5 project_id obbligatorio
|
||||
|
||||
- Dal gateway v2.4.0 / estensione v1.4.0: `project_id` è **obbligatorio** in `POST /v1/memories` (Pydantic `min_length=1`) e nello schema del tool `qmem_store` (Type.String, non più Optional)
|
||||
|
||||
Reference in New Issue
Block a user