RAG Agent
Configuration
Variables d'environnement du RAG Agent et de l'Index API, avec leurs valeurs par défaut.
Configuration du RAG Agent
Les variables sont lues depuis l'environnement, ou depuis un fichier .env chargé par python-dotenv. En Kubernetes, elles viennent du ConfigMap et du Secret du bot (voir Variables d'environnement).
Obligatoires
| Variable | Description |
|---|---|
LITELLM_API_BASE | URL du proxy LiteLLM. Le client ajoute /v1 si besoin. Absente : erreur au premier appel. |
LITELLM_API_KEY | Clé du proxy LiteLLM. |
DATABASE_URL | URL PostgreSQL. Si absente, DB_NAME, DB_USER, DB_PASSWORD, DB_HOST et DB_PORT sont utilisées. |
BOT_SYSTEM_PROMPT | Gabarit du prompt RAG, avec {context} et {question}. Pas de valeur par défaut : sans elle, chaque requête échoue. |
Recherche et génération
| Variable | Défaut | Effet |
|---|---|---|
RAG_K_CHUNKS | 5 | Nombre de chunks gardés après reranking. Borné par RAG_MIN_K_CHUNKS (1) et RAG_MAX_K_CHUNKS (20). |
RAG_TEMP | 0.2 | Température du modèle de génération. |
RAG_QUERY_MODEL_ID | mistral-medium-latest | Modèle de génération (LiteLLM). |
RAG_EMBEDDING_MODEL_ID | mistral-embed | Modèle d'embeddings, pour les questions comme pour les chunks indexés. |
RAG_BATCH_SIZE | 64 | Taille des lots envoyés à l'API d'embeddings. |
WEB_APP_BASE_URL | http://localhost:3001 | Base des liens vers les chunks dans la liste des sources. |
Reranker
| Variable | Défaut | Effet |
|---|---|---|
RERANKER_MODEL_ID | cross-encoder/mmarco-mMiniLMv2-L12-H384-v1 | Modèle CrossEncoder, exécuté sur CPU. |
RERANKER_FETCH_MULTIPLIER | 3 | Candidats récupérés par FAISS = RAG_K_CHUNKS × ce facteur. |
RERANKER_CACHE_DIR | /app/models/reranker | Cache du modèle. Dans l'image, le préchargement a lieu au démarrage. |
Serveur
| Variable | Défaut | Effet |
|---|---|---|
AGENT_PORT | 8000 | Port de rag-agent (commande de l'image). |
AGENT_HOST | 0.0.0.0 | Hôte utilisé par run() (lancement direct du module). |
INDEX_API_PORT | 8502 | Port de l'Index API dans les fichiers Compose et Helm. |
Traductions
Les messages d'état sont traduits à partir de I18N_JSON (variable d'environnement), d'un fichier monté dans le conteneur, ou de i18n.json à la racine. Voir Traductions (i18n).
Sans effet
Ces variables sont lues dans le code ou présentes dans les fichiers de configuration, mais ne modifient plus le comportement :
RAG_N_EXAMPLES,RAG_MIN_N_EXAMPLES,RAG_MAX_N_EXAMPLESetFEW_SHOTS_ENABLED: les exemples few-shot ont été retirés du pipeline.
Note technique
src/config/rag_config.py importe distutils, retiré de Python 3.12. Le module ne fonctionne que si setuptools fournit ce paquet.