feat(stt): mémoire court-terme de session côté serveur (5a) (#8)

Serveur : SessionStore (historique borné + TTL, en mémoire), /v1/ask accepte session_id
et injecte l'historique dans l'appel LLM, /v1/reset l'efface. Dockerfile en 1 worker
(cohérence mémoire process).

Client : session_id généré par run (uuid), envoyé à chaque requête ; commande /reset
en mode texte.

Testé en process (TestClient) : historique croît 0→2→4, reset→0, sessions isolées,
sans session_id = sans état.

Mémoire long-terme Qdrant (5b) + réparation Qdrant (5c) à suivre.


Claude-Session: https://claude.ai/code/session_013FmcxGsyXZXogiAHQLjnZT

Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
ALI YESILKAYA 2026-06-17 16:15:57 +02:00 committed by GitHub
parent bcdb4f8b2a
commit 815beaf37c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 107 additions and 17 deletions

View file

@ -6,5 +6,5 @@ COPY stt_server ./stt_server
RUN pip install --no-cache-dir .
EXPOSE 8000
# Service interne au cluster (exposé via Traefik). uvicorn multi-workers.
CMD ["uvicorn", "stt_server.app:app", "--host", "0.0.0.0", "--port", "8000", "--workers", "2"]
# 1 worker : la mémoire de session est en mémoire process (cohérence mono-worker).
CMD ["uvicorn", "stt_server.app:app", "--host", "0.0.0.0", "--port", "8000", "--workers", "1"]