Utiliser sa propre infrastructure IA et S3
Ce guide explique comment connecter GovernIA à votre propre fournisseur d'IA (OpenAI, Azure, Mistral dédié…) et à votre propre stockage S3 (AWS, OVH, Cloudflare R2, MinIO…).
Cas d'usage typiques : marque blanche, souveraineté des données, contrats cloud privés, environnement air-gapped.
Prérequis
Avant de commencer, vérifiez que :
- L'administrateur GovernIA a activé l'option dans les paramètres plateforme (voir ci-dessous)
- Vous disposez d'une clé API chez votre fournisseur IA (ou d'un endpoint accessible)
- Vous disposez d'un bucket S3 créé avec les droits
GetObject,PutObject,DeleteObject
Étape 1 — Activation par l'administrateur GovernIA
Cette étape est effectuée une seule fois par l'administrateur de la plateforme. Si les onglets LLM et Stockage S3 sont déjà visibles dans votre page Intégrations, passez directement à l'étape 2.
L'administrateur se rend dans Backoffice → Paramètres → Infrastructure personnalisée et active les toggles souhaités.

| Toggle | Ce que ça débloque |
|---|---|
| LLM personnalisé | L'onglet LLM apparaît dans Intégrations pour tous les tenants |
| Stockage S3 personnalisé | L'onglet Stockage S3 apparaît dans Intégrations pour tous les tenants |
Les deux options sont indépendantes — vous pouvez activer l'une sans l'autre.
Étape 2 — Configurer son LLM
Depuis votre espace, accédez à Suite → Paramètres → Intégrations → onglet LLM.

2a. Renseigner la connexion
| Champ | Obligatoire | Quoi mettre |
|---|---|---|
| Clé API | Oui | Votre clé API chez le fournisseur IA |
| Base URL | Non | Laisser vide pour Mistral. Renseigner pour tout autre provider |
| Modèle par défaut | Non | Modèle utilisé pour toutes les tâches sauf override |
| Nom du provider | Non | Libellé dans les stats (ex : OPENAI, AZURE, MISTRAL-DÉDIÉ) |
2b. Base URL selon votre provider
| Provider | Base URL |
|---|---|
| Mistral AI (compte dédié) | laisser vide — ou https://api.mistral.ai |
| OpenAI | https://api.openai.com |
| Azure OpenAI | https://<resource>.openai.azure.com/openai/deployments/<deployment> |
| Groq | https://api.groq.com/openai |
| Ollama (self-hosted) | http://localhost:11434/v1 (ou l'IP de votre serveur) |
| vLLM / LM Studio | URL de votre serveur d'inférence |
GovernIA appelle
{Base URL}/v1/chat/completionspour le texte et{Base URL}/v1/ocrpour l'OCR. Si votre provider ne supporte pas l'OCR, les analyses de documents utiliseront toujours l'OCR Mistral de la plateforme.
2c. Modèles par tâche (optionnel)
Si vous souhaitez utiliser des modèles différents selon la nature de la tâche — par exemple un modèle rapide pour les résumés et un modèle puissant pour les rapports :
| Tâche | Recommandation |
|---|---|
| Questionnaire (draft) | Modèle capable de raisonner sur des exigences réglementaires (gpt-4o, mistral-large) |
| Rapport / analyse | Modèle le plus puissant disponible — les rapports sont longs et complexes |
| Recommandations | Même niveau que le rapport |
| Enrichissement | Modèle intermédiaire (gpt-4o-mini, mistral-small) |
| Résumé | Modèle léger suffisant |
| OCR | Laisser vide sauf si votre provider propose un endpoint OCR compatible |
Si un champ est laissé vide, le modèle par défaut est utilisé pour cette tâche.
2d. Renseigner la tarification (optionnel mais recommandé)
Sans tarification configurée, le coût estimé dans les stats sera —. Pour avoir un suivi des coûts précis :
| Champ | Où trouver le tarif |
|---|---|
| Prix input (€ / M tokens) | Page pricing de votre provider |
| Prix output (€ / M tokens) | Page pricing de votre provider |
| OCR standard (€ / 1 000 pages) | Uniquement si vous utilisez un provider OCR compatible |
| OCR annotation (€ / 1 000 pages) | Idem |
Exemples de tarifs courants (à vérifier sur les pages officielles) :
| Provider / Modèle | Input | Output |
|---|---|---|
| GPT-4o | 2,50 € / M | 10,00 € / M |
| GPT-4o mini | 0,15 € / M | 0,60 € / M |
| Mistral Large | 2,00 € / M | 6,00 € / M |
| Mistral Small | 0,10 € / M | 0,30 € / M |
2e. Activer et sauvegarder
- Activez le toggle Activer le LLM personnalisé
- Cliquez Sauvegarder
- Effectuez un test (voir Étape 4)
Étape 3 — Configurer son S3
Depuis votre espace, accédez à Suite → Paramètres → Intégrations → onglet Stockage S3.

3a. Renseigner les credentials
| Champ | Description |
|---|---|
| Endpoint S3 | URL de votre service S3 (voir tableau ci-dessous) |
| Bucket | Nom du bucket créé dans votre console cloud |
| Access Key | Identifiant de l'utilisateur S3 |
| Secret Key | Clé secrète de l'utilisateur S3 |
| Région | Région où est hébergé le bucket |
| Force path style | À cocher si votre provider n'utilise pas les sous-domaines virtuels |
3b. Endpoints selon votre provider
| Provider | Endpoint | Région exemple | Force path style |
|---|---|---|---|
| AWS S3 | https://s3.amazonaws.com | us-east-1 | Non |
| OVH Object Storage | https://s3.gra.io.cloud.ovh.net | gra | Non |
| Cloudflare R2 | https://<account-id>.r2.cloudflarestorage.com | auto | Non |
| MinIO (self-hosted) | http://minio:9000 (ou IP/domaine) | us-east-1 | Oui |
| Scaleway | https://s3.nl-ams.scw.cloud | nl-ams | Non |
| Backblaze B2 | https://s3.us-west-004.backblazeb2.com | us-west-004 | Non |
3c. Préparer votre bucket
Le bucket doit être privé (pas d'accès public). GovernIA génère des URLs signées pour les téléchargements.
Structure des chemins générée automatiquement :
evidences/{env}/{tenantId}/{auditId}/{assignmentId}/{questionId}/{uuid}-{nomfichier}3d. Activer et sauvegarder
- Activez le toggle Activer le S3 personnalisé
- Cliquez Sauvegarder
- Effectuez un test en uploadant une pièce jointe dans un audit
Étape 4 — Vérifier que ça fonctionne
Tester le LLM
- Ouvrez un audit existant
- Lancez une génération (recommandations, rapport, ou questionnaire)
- Si la génération aboutit → le LLM est correctement configuré
En cas d'erreur, vérifiez :
- Que la clé API est valide et active chez votre provider
- Que la Base URL est correcte (pas de
/en fin d'URL) - Que le modèle renseigné existe chez votre provider
Tester le S3
- Ouvrez un questionnaire d'audit
- Déposez un fichier comme pièce jointe sur une réponse
- Si l'upload réussit et le fichier est prévisualisable → le S3 est correctement configuré
En cas d'erreur, vérifiez :
- Les droits de l'utilisateur S3 (
PutObjectest requis) - L'endpoint et la région
- Si MinIO ou un provider self-hosted : cocher Force path style
Priorité des configurations
GovernIA applique les configurations dans cet ordre de priorité :
Config tenant (activée) > Variables d'environnement globales > Valeur par défaut| Situation | Comportement |
|---|---|
| Toggle OFF | Utilise l'infrastructure GovernIA par défaut (agents IA + stockage S3 plateforme) |
| Toggle ON, config incomplète (ex: pas de clé API) | Repasse sur l'infrastructure Governia |
| Toggle ON, config complète | Utilise exclusivement votre infrastructure |
Vous pouvez basculer le toggle à tout moment sans perdre votre configuration.
Configuration par l'administrateur (marque blanche gérée)
Si vous êtes administrateur GovernIA et que vous gérez la configuration au nom d'un client, vous pouvez renseigner les credentials directement depuis la fiche organisation :
Backoffice → Organisations → [nom du client] → sections LLM personnalisé / Stockage S3 personnalisé
Les sections apparaissent en bas de la page organisation et comportent les mêmes champs que le self-service. C'est l'approche recommandée pour les déploiements en marque blanche gérée où le client n'a pas accès au backoffice.
Résolution des problèmes courants
| Symptôme | Cause probable | Solution |
|---|---|---|
| L'onglet LLM n'apparaît pas | Option non activée par l'admin | Demander à l'administrateur GovernIA d'activer le toggle |
| Erreur 401 sur la génération IA | Clé API invalide ou expirée | Vérifier/renouveler la clé chez votre provider |
| Erreur 404 sur la génération IA | Base URL incorrecte ou modèle inexistant | Vérifier l'URL et le nom exact du modèle |
| Upload S3 échoue | Droits insuffisants | Vérifier que l'utilisateur S3 a PutObject sur le bucket |
| Upload S3 échoue sur MinIO | Path style non activé | Cocher Force path style |
Coût estimé affiché — dans les stats | Tarification non configurée | Renseigner les prix input/output dans l'onglet LLM |
| Anciens fichiers inaccessibles après migration S3 | Les anciens fichiers restent sur le S3 Governia | Ne pas activer le S3 custom sur un tenant avec des preuves existantes sans migrer manuellement les fichiers |