2025-02-19 15:12:15 -05:00
# Documentation des Modèles AI Integration
## Vue d'ensemble
Le module AI Integration fournit une infrastructure flexible pour intégrer différents fournisseurs d'IA dans Odoo. Il est conçu pour être extensible et permettre l'ajout facile de nouveaux fournisseurs.
## Modèles Principaux
### 1. AI Provider (`ai.provider`)
- **Description**: Configuration de base des fournisseurs d'IA
- **Champs principaux**:
- `name` : Nom du fournisseur
- `code` : Code technique unique
- `description` : Description détaillée
- `default_host` : Hôte par défaut
- `active` : État actif/inactif
### 2. AI Provider Instance (`ai.provider.instance`)
- **Description**: Instance spécifique d'un fournisseur d'IA
2025-02-20 09:43:35 -05:00
- **Héritage**: `mail.thread` , `ai.base.mixin`
2025-02-19 15:12:15 -05:00
- **Champs principaux**:
2025-02-20 09:43:35 -05:00
- `name` : Nom de l'instance (ex: "OpenWebUI Production", "Ollama Local")
2025-02-19 15:12:15 -05:00
- `provider_id` : Fournisseur associé
2025-02-20 09:43:35 -05:00
- `provider_type` : Type de fournisseur (extensible par modules)
2025-02-19 15:12:15 -05:00
- `active` : État actif/inactif
2025-02-20 09:43:35 -05:00
- **Validation**:
- Vérifie la présence d'au moins un module fournisseur installé
2025-02-19 15:12:15 -05:00
### 3. AI Model (`ai.model`)
- **Description**: Modèles d'IA disponibles
- **Champs principaux**:
- `name` : Nom du modèle
2025-02-20 09:43:35 -05:00
- `identifier` : Identifiant technique (ex: gpt-3.5-turbo, mistral-7b)
- `provider_instance_id` : Instance du fournisseur (cascade)
- `provider_type` : Type de fournisseur (relié à l'instance)
2025-02-19 15:12:15 -05:00
- `active` : État actif/inactif
2025-02-20 09:43:35 -05:00
- `sequence` : Ordre d'affichage
- **Validation**:
- Vérifie la présence d'au moins un module fournisseur installé
2025-02-19 15:12:15 -05:00
2025-02-20 09:43:35 -05:00
### 4. AI Generation Parameters (`ai.generation.params`)
- **Description**: Paramètres de génération pour les modèles d'IA
- **Type**: Modèle abstrait
2025-02-19 15:12:15 -05:00
- **Champs principaux**:
2025-02-20 09:43:35 -05:00
- `temperature` : Contrôle de l'aléatoire (défaut: 0.7)
- `repeat_penalty` : Pénalité de répétition (défaut: 1.1)
- `max_tokens` : Nombre maximum de tokens (défaut: 2048)
2025-02-19 15:12:15 -05:00
- `stop_sequences` : Séquences d'arrêt
2025-02-20 09:43:35 -05:00
- `frequency_penalty` : Pénalité de fréquence (défaut: 0.0)
- `presence_penalty` : Pénalité de présence (défaut: 0.0)
2025-02-19 15:12:15 -05:00
2025-02-20 09:43:35 -05:00
## Configuration et Interfaces
2025-02-19 15:12:15 -05:00
### 1. Res Config Settings
- **Description**: Paramètres de configuration globaux
- **Champs principaux**:
- `default_provider_instance_id` : Instance de fournisseur par défaut
- `default_model_id` : Modèle par défaut
- `ai_batch_size` : Taille du lot pour le traitement
### 2. Res Company
- **Description**: Extensions des paramètres de société
- **Méthodes principales**:
- `_get_default_provider_instance` : Obtenir l'instance par défaut
2025-02-20 09:43:35 -05:00
### 3. AI Provider Interface (`ai.provider.interface`)
2025-02-19 15:12:15 -05:00
- **Description**: Interface abstraite pour les fournisseurs d'IA
- **Méthodes requises**:
- `send_message` : Envoyer un message
- `get_models` : Obtenir la liste des modèles
- `test_connection` : Tester la connexion
## Notes d'Implémentation
2025-02-20 09:43:35 -05:00
1. **Architecture Modulaire** :
- Modules fournisseurs disponibles: `ollama_ai_integration` , `chatgpt_ai_integration`
- Vérification de la présence d'au moins un module fournisseur avant création d'instances
2. **Héritage et Extensions** :
- Les instances de fournisseur héritent de `mail.thread` et `ai.base.mixin`
- Les paramètres de génération sont définis dans le modèle abstrait `ai.generation.params`
3. **Configuration Hiérarchique** :
- Configuration globale > Paramètres société > Instance
- Paramètres de génération personnalisables à plusieurs niveaux
4. **Sécurité et Validation** :
- Vérifications de sécurité intégrées
- Validation des modules requis
- Gestion des paramètres de génération avec valeurs par défaut