mirror of
https://github.com/Alkatrazz24/Funk-lab.git
synced 2026-07-08 17:44:42 +02:00
L'instance llama-embed (:1238) tournait avec l'ubatch llama.cpp par défaut (512). En mode --embeddings + pooling, toute l'entrée doit tenir dans un seul ubatch → tout chunk > 512 tokens échouait en HTTP 500 « input too large to process. increase the physical batch size ». ~46 chunks du RAG (CHUNK_MAX=2000 chars ≈ 700 tokens) n'étaient pas indexés. - llama_server : ajoute llama_embed_ubatch_size (2048 = ctx) + flags --batch-size/--ubatch-size dans le template llama-embed.service. - rag-ingest : retry (5×, backoff) sur erreurs transitoires 5xx/réseau de l'embed. - rag/defaults : aligne embed_url/embed_model sur nomic :1238 (étaient des vars mortes pointant encore qwen3-8b :1234 — trompeuses). Résultat : ré-ingestion 436/436 chunks, 0 erreur. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| defaults | ||
| files | ||
| handlers | ||
| tasks | ||
| README.md | ||
rag
Déploie la chaîne RAG sur storage-01 : scripts d'ingestion/requête + copie des docs + skill Hermes.
Ce que fait le rôle
- Crée
/srv/data/rag/docs - Déploie
/usr/local/bin/rag-ingestet/usr/local/bin/rag-query - Synchronise
admin/du repo vers/srv/data/rag/docs/(copie indexée) - Déploie le skill
rag-docsdans les skills globaux Hermes + le profil funk-ai
Variables principales
| Variable | Défaut |
|---|---|
rag_docs_dir |
/srv/data/rag/docs |
qdrant_url |
http://127.0.0.1:6333 |
embed_url |
http://192.168.10.20:1238/v1/embeddings (instance llama-embed dédiée) |
embed_model / dim |
nomic-embed-text / 768 |
rag_collection |
funk-docs |
Ces valeurs sont les défauts codés dans
rag-ingest/rag-query(surchargeables par env :EMBED_URL,EMBED_MODEL,RAG_VECTOR_DIM,RAG_MIN_SCORE,RAG_EXCLUDE).rag-ingestetrag-querydoivent utiliser le même modèle/dim, sinon la recherche renvoie n'importe quoi.
Workflow après modification de admin/
ansible-playbook -i inventory.yml playbooks/storage-01.yml --tags rag # re-sync les docs
ssh storage-01 /usr/local/bin/rag-ingest # ré-indexe dans Qdrant
(hermes-auto-improve fait aussi un rsync + rag-ingest en fin de run.)
Caveats
- Dépendances fortes : Qdrant up (
:6333) et l'instance llama-embed up (:1238,nomic-embed-text) — sinon connection refused rag-ingestexcluthermes/builtin/(rapports auto-générés par hermes-auto-improve) viaRAG_EXCLUDE— ils noyaient sinon la vraie doc (~84% des points)- Changement de modèle d'embedding = changement de dimension → il faut supprimer puis recréer la collection (
curl -X DELETE …/collections/funk-docsavantrag-ingest), sinon Qdrant refuse un vecteur de dim différente