Déploiement

Installez EasyRag là où vous le décidez, en connaissance de cause

La plateforme se compose de conteneurs Docker que vous pouvez exploiter sur vos serveurs ou votre cloud. Voici les composants, les dépendances externes et les implications concrètes.

Installation

Six conteneurs, un ensemble cohérent

Les images de l’API, du service RAG et de l’interface web sont publiées sur Docker Hub ; les bases s’appuient sur des images officielles.

API applicativeNode.js (NestJS)Comptes, rôles, assistants, corpus, canaux, workflows, supervision.
Service RAGPython (FastAPI, Haystack)Extraction, découpage, vectorisation, recherche, agent et citations.
Interface webFlutter Web (nginx)Administration, portail de conversation, pages publiques.
Base applicativePostgreSQL 16Configuration, conversations, journaux.
Base vectoriellePostgreSQL + pgvectorIndex des extraits de documents.
File et cacheRedis 7Traitements asynchrones, limites de débit.

Profils optionnels : observabilité (collecteur OpenTelemetry, Prometheus, Grafana). Ressources et dimensionnement à évaluer selon le volume documentaire et le trafic : nous ne publions pas de chiffres non mesurés.

Configuration

Les services externes à prévoir

EasyRag n’est pas autonome à 100 % : certains traitements s’appuient sur des services tiers. Les voici, sans omission.

Services externes nécessaires ou optionnels
ServiceUsageNécessité
Clé OpenAI ou MistralVectorisation des documents, enrichissement, assistants de configuration, transcription.Indispensable
Modèle de générationFournisseur cloud au choix, ou serveur Ollama / vLLM / compatible OpenAI hébergé par vos soins.Indispensable
Serveur SMTPVérification des inscriptions, réinitialisation des mots de passe, alertes.Facultatif
Clé Mistral OCRImages et PDF numérisés.Facultatif
Clé SerperRecherche web en complément des documents.Facultatif
Fournisseur d’identitéSSO OpenID Connect, Google ou FranceConnect+.Facultatif
LicenceAu-delà du mode gratuit (1 corpus, 5 documents) ; Pro pour les fonctions avancées.Selon usage

Exploitation

Ce que vous maîtrisez au quotidien

Données

Documents, index et conversations restent dans vos bases et volumes. Les questions et extraits utiles transitent vers le fournisseur de modèle choisi ; la vectorisation passe par OpenAI ou Mistral.

Mises à jour

Nouvelles versions publiées sous forme d’images Docker : mise à jour par remplacement des conteneurs, après sauvegarde des bases.

Environnements

Le module de migration exporte assistants, corpus et paramètres d’une instance vers une autre, avec simulation et retour arrière sous 30 jours.

Exploitation

Sondes /health et /ready, métriques Prometheus, traces OpenTelemetry, tableau de bord Grafana fourni, alertes techniques par e-mail.

Secrets

Clés et mots de passe par variables d’environnement ; identifiants des fournisseurs chiffrés en base (AES-256-GCM).

Licence

Clé signée vérifiée hors ligne ; revalidation quotidienne facultative, avec une tolérance de 7 jours en cas d’indisponibilité.

Avant l’ouverture

Points à régler avant d’exposer une instance

Quelques réglages de configuration conditionnent la sécurité d’une instance accessible depuis Internet.

  • Servir l’application en HTTPS derrière un proxy inverse.
  • Déclarer les origines autorisées de l’API (CLIENT_ORIGIN) et de chaque widget.
  • Décider de l’ouverture des inscriptions et de la création automatique de comptes par SSO.
  • Restreindre l’accès à la documentation d’API et aux métriques si nécessaire.
  • Générer des secrets robustes (JWT, clé de chiffrement) et les stocker hors du code.
  • Planifier les sauvegardes de PostgreSQL et des volumes de documents.

Préparons votre déploiement

Infrastructure, choix des modèles, sources documentaires : échangeons sur votre contexte pour définir une mise en œuvre réaliste.