Raccourcis clavier

Appuyez sur ← ou → pour passer d'un chapitre à l'autre

Appuyez sur S ou / pour rechercher dans la documentation

Appuyez sur ? pour afficher cette aide

Appuyez sur Échap pour masquer cette aide

Fournisseurs de modèles

Chatbotaurus répond par défaut avec un modèle souverain européen exécuté localement. Un fournisseur supplémentaire se branche par un identifiant (voir Sécurité et identifiants) enregistré dans l'application, pas par une variable d'environnement globale.

Les trois modèles souverains

La liste est dans crates/forge-core/src/model_governance.rs (SOVEREIGN_LOCAL_MODELS). C'est l'unique source des défauts du code.

RôleModèleOù il tourne
Dialoguecas/eurollm-1.7b-instruct-q8 (EuroLLM 1.7B, environ 1,8 Go)Ollama
Repliministral-3:3bOllama
Embeddingparaphrase-multilingual-MiniLM-L12-v2, 384 dimensionsfastembed, dans le processus forge-api

Télécharger les deux modèles de dialogue (le conteneur Ollama vient du plan décrit dans Déploiement avec Podman) :

podman exec forge-ollama ollama pull cas/eurollm-1.7b-instruct-q8
podman exec forge-ollama ollama pull ministral-3:3b

Le modèle d'embedding n'est pas un modèle Ollama : ollama pull ne le concerne pas. fastembed le télécharge dans son cache au premier usage (le pipeline d'indexation est décrit dans Connaissances). La collection Qdrant du pipeline wiki est donc créée en 384 dimensions.

Ollama local (par défaut)

OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=ministral-3:3b
OLLAMA_EMBEDDING_MODEL=paraphrase-multilingual-MiniLM-L12-v2

Valeurs par défaut (crates/forge-core/src/config.rs) : OLLAMA_BASE_URL vaut http://localhost:11434 et OLLAMA_MODEL prend le modèle de repli de la liste souveraine. Le délai d'appel (OLLAMA_TIMEOUT_SECS) vaut 120 s.

Ajouter un autre fournisseur

La résolution du modèle de chat d'une organisation suit cet ordre (crates/forge-api/src/routes/llm_provider.rs) :

  1. le dernier identifiant de type IA enregistré par l'organisation ;
  2. l'ancienne configuration /llm-provider (compatibilité) ;
  3. EuroLLM en local.

Pour ajouter un fournisseur :

  1. Ouvrez /credentials (section Sécurité du menu à partir du plan Business, sinon par son adresse) et choisissez la catégorie des modèles de langage.
  2. Choisissez la famille (par exemple mistralApi pour Mistral AI, France, ou ollama pour votre propre serveur Ollama). Le formulaire préremplit l'adresse et le modèle.
  3. Pour un serveur auto-hébergé, indiquez son adresse de base. Pour un service en ligne, saisissez la clé d'API.
  4. Enregistrez. La carte active est signalée dans la liste.
  5. Vérifiez dans le chat : si le fournisseur est refusé, le chat répond avec EuroLLM (voir « Fournisseurs refusés » plus bas).

La clé n'est stockée qu'une fois, chiffrée en base. Le fournisseur choisi n'est utilisé que si son point d'accès est local ou européen (voir « Fournisseurs refusés »). Les variables LLM_PROVIDER et MISTRAL_API_KEY du fichier .env.example ne sont pas lues par le backend pour choisir le fournisseur de chat : n'en dépendez pas.

Les métadonnées du code (llm_provider_metadata.rs) décrivent Ollama et Mistral AI comme fournisseurs européens. Des fiches ollama et localai existent dans connectors/.

Fournisseurs refusés

Avant chaque appel à un modèle, le code applique deux contrôles (assert_llm_sovereign, crates/forge-core/src/agent/memory/sovereignty.rs) :

  1. le nom du modèle ne doit contenir aucun de ces huit noms : OpenAI, Anthropic, Azure, Google, AWS, Bedrock, Cohere, Groq (US_PROVIDERS) ;
  2. l'adresse du point d'accès doit être locale (boucle locale, réseau privé), se terminer par .eu, ou être celle d'un fournisseur européen connu (Ollama, Mistral AI et un hébergeur européen référencé dans le code).

Un appel qui échoue l'un des deux contrôles est refusé avant l'envoi du message. Quand le fournisseur choisi par l'organisation est refusé, le chat bascule sur EuroLLM. La liste de dix noms LLM_PROVIDER_US_BLOCKLIST (avec Together et Replicate) existe dans le code mais aucun chemin de production ne l'appelle.

La liste des familles proposées dans /credentials évolue : certaines familles passent par un agrégateur ou un service hors UE. Le formulaire affiche l'origine de chaque famille. Une famille dont le point d'accès n'est ni local ni européen s'enregistre, mais ses appels sont refusés par le contrôle ci-dessus.

Voir aussi