Proposition : Intent Detection Layer pour Chat AI
Status : IMPLEMENTEE
Date : 31/01/2026
Resume
Implementation de 3 couches de detection d'intent pour contourner les limitations de Mistral 7B :
- intentDetector.ts (NOUVEAU) : Detection deterministe par mots-cles (zero LLM)
- intentExecutor.ts (NOUVEAU) : Execution directe API + prompts formatage/classification minimalistes
- aiChat.ts (MODIFIE) : Integration dans sendMessage() + prompt systeme reduit en fallback
Fichiers modifies
| Fichier |
Action |
src/services/intentDetector.ts |
CREER |
src/services/intentExecutor.ts |
CREER |
src/services/aiChat.ts |
MODIFIER (sendMessage + buildUserToolsReduced) |
Logique
- Haute confiance (connecteur explicite dans le message) → Execution directe API → LLM formate le resultat (~300 tokens)
- Moyenne confiance (mots generiques) → LLM classifie (prompt ultra-court) → Execution API → LLM formate
- Pas de match → Flow actuel avec prompt reduit (~800 tokens au lieu de ~4000)
Impact tokens
| Scenario |
Avant |
Apres |
| "derniere video jellyfin" |
~4500 tokens systeme |
~800 tokens |
| "cherche batman" |
~4500 tokens systeme |
~650 tokens |
| Chat general |
~4500 tokens systeme |
~1300 tokens |
Ce qui ne change PAS
- CRUD conversations/messages
- Memoire vectorielle (RAG)
- Auto-summarization
- Frontend
- executeToolCall() (fallback)
- enrichMediaItems() / autoEnrichListResult() (reutilises)