Aller au contenu principal

Module Ai

Le module Ai centralise la configuration de tous les providers d'intelligence artificielle utilisés par la plateforme.


Rôle

Ce module est une bibliothèque de configuration partagée. Il ne possède pas d'interface utilisateur propre. Il est utilisé par tous les modules qui font appel à des fonctionnalités IA.


AiProviderConfigService

Service central à injecter dans tout module utilisant l'IA :

use Modules\Ai\Services\AiProviderConfigService;

// Provider texte (avec feature optionnelle)
$config = app(AiProviderConfigService::class)->textProvider('actualite');
// Retourne : code, base_url, api_key, model, timeout

// Provider image
$config = app(AiProviderConfigService::class)->imageProvider();

Configuration

Les providers sont configurés dans ai_provider_settings via Admin → Applications → IA.

Les modèles par feature sont stockés dans :

ai_provider_settings.settings->feature_models.{feature}

Providers supportés

ProviderUsageNotes
OpenWebUI / OllamaGénération texteOn-premise, modèles locaux
OpenAIGénération texte (fallback)API distante
PollinationsGénération imageAPI distante gratuite

Règles

:::danger Règle absolue Tout module utilisant l'IA DOIT passer par AiProviderConfigService. Ne jamais hardcoder :

  • Les URLs de provider
  • Les clés API
  • Les noms de modèles :::

Les champs sensibles (API keys) utilisent le cast Eloquent encrypted.