Configuration
Ce guide couvre toutes les options de configuration disponibles dans AnonDocs, de la configuration de base au réglage avancé.
Variables d'environnement
La configuration se fait via des variables d'environnement, soit via un fichier .env soit via les variables d'environnement du système.
Configuration du serveur
# Port pour le serveur API AnonDocs
PORT=3000
Configuration du fournisseur LLM
Utilisation d'Ollama
DEFAULT_LLM_PROVIDER=ollama
OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=mistral-nemo
Utilisation d'API compatibles OpenAI
DEFAULT_LLM_PROVIDER=openai
OPENAI_BASE_URL=http://localhost:8000/v1
OPENAI_MODEL=mistralai/Mistral-7B-Instruct-v0.2
OPENAI_API_KEY=not-required
Remarque: OPENAI_API_KEY peut être not-required pour les API locales comme vLLM, LM Studio ou LocalAI. Pour l'API OpenAI réelle, fournissez une clé valide.
Configuration du traitement
# Caractères par bloc pour le traitement du texte
# Blocs plus petits = plus précis mais plus lent
# Blocs plus grands = plus rapide mais peut manquer le contexte
CHUNK_SIZE=1500
# Chevauchement entre les blocs (en caractères)
# Aide à maintenir le contexte à travers les limites des blocs
CHUNK_OVERLAP=0
# Activer le traitement parallèle des blocs
# true = plus rapide mais utilise plus de mémoire
# false = séquentiel, plus sûr pour les ressources limitées
ENABLE_PARALLEL_CHUNKS=false
Référence de configuration
Exemple .env complet
# ============================================
# Configuration du serveur
# ============================================
PORT=3000
# ============================================
# Configuration du fournisseur LLM
# ============================================
# Options: ollama, openai
DEFAULT_LLM_PROVIDER=ollama
# Configuration Ollama (si utilisation d'Ollama)
OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=mistral-nemo
# Configuration API compatible OpenAI (si utilisation de vLLM, LM Studio, LocalAI)
OPENAI_BASE_URL=http://localhost:8000/v1
OPENAI_MODEL=mistralai/Mistral-7B-Instruct-v0.2
OPENAI_API_KEY=not-required
# ============================================
# Configuration du traitement
# ============================================
CHUNK_SIZE=1500
CHUNK_OVERLAP=0
ENABLE_PARALLEL_CHUNKS=false
Profils de configuration
Profil de développement
Pour le développement local avec utilisation minimale des ressources :
PORT=3000
DEFAULT_LLM_PROVIDER=ollama
OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=mistral
CHUNK_SIZE=1000
CHUNK_OVERLAP=100
ENABLE_PARALLEL_CHUNKS=false
Profil de production
Pour la production avec exigences de haute précision :
PORT=3000
DEFAULT_LLM_PROVIDER=ollama
OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=mistral-nemo
CHUNK_SIZE=2000
CHUNK_OVERLAP=200
ENABLE_PARALLEL_CHUNKS=true
Profil haute performance
Pour les déploiements à haut débit avec GPU :
PORT=3000
DEFAULT_LLM_PROVIDER=openai
OPENAI_BASE_URL=http://localhost:8000/v1
OPENAI_MODEL=mistralai/Mistral-7B-Instruct-v0.2
CHUNK_SIZE=2500
CHUNK_OVERLAP=250
ENABLE_PARALLEL_CHUNKS=true
Réglage des performances
Optimisation de la taille des blocs
Le paramètre CHUNK_SIZE contrôle la quantité de texte traitée à la fois :
- Blocs plus petits (1000-1500): Détection de PII plus précise, meilleure gestion du contexte, traitement plus lent
- Blocs plus grands (2000-3000): Traitement plus rapide, peut manquer les PII dépendant du contexte
Recommandation: Commencez avec 1500 et ajustez en fonction de vos documents :
# Pour les documents courts avec des PII denses
CHUNK_SIZE=1000
# Pour les documents plus longs avec des PII éparpillées
CHUNK_SIZE=2000
Traitement parallèle
Activez le traitement parallèle pour une gestion plus rapide des documents volumineux :
ENABLE_PARALLEL_CHUNKS=true
Compromis :
- ✅ Traitement plus rapide
- ✅ Meilleure utilisation du GPU (si disponible)
- ❌ Utilisation de mémoire plus élevée
- ❌ Peut atteindre les limites de débit du fournisseur LLM
Quand activer: Lorsque vous avez suffisamment de RAM et un fournisseur LLM rapide
Quand désactiver: Ressources limitées, problèmes de limitation de débit, ou lorsque le traitement séquentiel est plus stable
Chevauchement des blocs
Le chevauchement aide à maintenir le contexte à travers les limites des blocs :
CHUNK_OVERLAP=200
Utilisez le chevauchement lorsque :
- Les PII peuvent s'étendre sur les limites des blocs
- Le contexte est important pour la détection
- La vitesse de traitement est acceptable
Configuration spécifique à l'environnement
Utilisation de configurations différentes pour différents environnements
Développement
# .env.development
DEFAULT_LLM_PROVIDER=ollama
OLLAMA_MODEL=mistral
ENABLE_PARALLEL_CHUNKS=false
Production
# .env.production
DEFAULT_LLM_PROVIDER=ollama
OLLAMA_MODEL=mistral-nemo
ENABLE_PARALLEL_CHUNKS=true
CHUNK_SIZE=2000
Chargement de la configuration spécifique à l'environnement
# Développement
cp .env.development .env
npm start
# Production
cp .env.production .env
npm start
Configuration Docker
Utilisation de fichiers d'environnement avec Docker
# Construire avec fichier d'environnement
docker build -t anondocs .
# Exécuter avec fichier d'environnement
docker run -d \
--name anondocs \
-p 3000:3000 \
--env-file .env.production \
anondocs
Configuration Docker Compose
version: '3.8'
services:
anondocs:
build: .
ports:
- "3000:3000"
env_file:
- .env.production
environment:
- PORT=3000
restart: unless-stopped
Configuration Kubernetes
Exemple de ConfigMap
apiVersion: v1
kind: ConfigMap
metadata:
name: anondocs-config
data:
PORT: "3000"
DEFAULT_LLM_PROVIDER: "ollama"
OLLAMA_BASE_URL: "http://ollama:11434"
OLLAMA_MODEL: "mistral-nemo"
CHUNK_SIZE: "1500"
CHUNK_OVERLAP: "0"
ENABLE_PARALLEL_CHUNKS: "false"
Utilisation de ConfigMap dans le déploiement
apiVersion: apps/v1
kind: Deployment
metadata:
name: anondocs
spec:
template:
spec:
containers:
- name: anondocs
envFrom:
- configMapRef:
name: anondocs-config
Validation
Vérifier la configuration
Le serveur valide la configuration au démarrage. Vérifiez les journaux pour toute erreur de configuration :
npm start
# Recherchez:
# ✓ Configuration chargée avec succès
# ✓ Fournisseur LLM: ollama
# ✓ Modèle: mistral-nemo
Tester la configuration
# Vérification de l'état
curl http://localhost:3000/health
# Tester l'anonymisation
curl -X POST http://localhost:3000/api/anonymize \
-H "Content-Type: application/json" \
-d '{
"text": "Contactez John Doe à john@example.com",
"provider": "ollama"
}'
Prochaines étapes
- 🤖 Configuration du fournisseur LLM - Configurez votre fournisseur LLM
- 🚀 Options de déploiement - Stratégies de déploiement en production
- 🔒 Considérations de production - Sécurité et mise à l'échelle