Aller au contenu principal

Architecture du Système

Le système suit une architecture hexagonale (ports et adaptateurs) avec une séparation claire entre :

1. Entités (Domaine Central)

Les objets métier et la logique au cœur de l'application :

  • Brain, Agent, Chat, Message, Flow, etc.

2. Adaptateurs

Adaptateurs Pilotés (Adaptateurs Secondaires/Sortie)

Connectent l'application aux systèmes externes :

  • Adaptateurs de Chat : OpenAI, LlamaCPP
  • Adaptateurs de Stockage : MongoDB, Google Cloud Storage, MinIO
  • Adaptateurs de Protection : LLMGuards, modération OpenAI
  • Adaptateurs de Stockage Vectoriel : Weaviate

Adaptateurs Pilotes (Adaptateurs Primaires/Entrée)

Connectent l'application aux utilisateurs/clients :

  • API : API REST Koa.js avec des routes pour toutes les fonctionnalités
  • WebSockets : Communication en temps réel pour les réponses en streaming