33800 Docs

← Retour

Proposition : Progress Steps + Model Fallback + Deep Search

Status : EN ATTENTE

Date : 31/01/2026

3 fonctionnalites

1. Progress Steps (SSE streaming)

Probleme : L'utilisateur attend 5-8s avec juste des "loading dots" sans savoir ce qui se passe.

Solution : Nouveau endpoint SSE qui emet des events de progression.

Backend (aiChat.ts) :

API (index.ts) :

Frontend (ChatMessages.tsx) :

Fichiers modifies :

Fichier Action
connectors-api/src/services/aiChat.ts Ajouter sendMessageStream()
connectors-api/src/index.ts Ajouter route /messages/stream
connectors-front/src/routes/chat/[id]/index.tsx Switch vers SSE
connectors-front/src/components/ai/ChatMessages.tsx Affichage steps
connectors-front/src/lib/api.ts Ajouter sendChatMessageStream()

2. Model Fallback (formatter)

Probleme : Mistral omet les URLs "par securite", genere du texte brut au lieu de markdown.

Solution : Si le formatter LLM produit un resultat sans URLs alors que les data en contenaient, retry avec un autre modele.

Implementation dans aiChat.ts :

Fichiers modifies :

Fichier Action
connectors-api/src/services/intentExecutor.ts Ajouter formatWithFallback()
connectors-api/src/services/aiChat.ts Utiliser formatWithFallback()

3. Deep Search (retry si 0 resultats)

Probleme : Si "cherche batman" ne trouve rien sur Jellyfin, l'utilisateur recoit "0 resultats" sans alternatives.

Solution : Retry automatique avec parametres elargis.

Implementation dans intentExecutor.ts :

Fichiers modifies :

Fichier Action
connectors-api/src/services/intentExecutor.ts Ajouter deepSearch()

Ordre d'implementation

  1. Progress Steps SSE (le plus visible pour l'UX)
  2. Deep Search (amelioration resultats)
  3. Model Fallback (polish)

Ce qui ne change PAS