Infrastruttura

Frontiera e Comunicazione

Channels

  • Connessi tramite CIP e WSS/SMTP/API.

  • Inviano le richieste al Channel Gateway.

  • Possono esistere più canali per Organization (anche dello stesso tipo). Hanno uno o più scope di riferimento.

Gateway e Sessioni

Channel Gateway

  • Autentica i canali tramite token CIP.

  • Pubblica le richieste (interazioni) su RabbitMQ (askChannel) e riceve le risposte (responseChannel).

  • Assieme a GateMaster gestisce le Sessioni.

    • Si occupa di tenere traccia dei channelSessionIds.

GateMaster

  • Coordina le richieste verso DIM Manager (e i DIM) e Broadcast Manager.

  • Comunica con MongoDB per memorizzare lo stato delle sessioni e risposte.

  • Pubblica le richieste (interazioni) verso Broadcast Manager su RabbitMQ (askIntent) e riceve le risposte (responseIntent).

  • Analizza le risposte da Broadcast Manager e decide se

    • Nel caso di risposte di tipo "autoResponse" (ovvero generate dall'AI senza trigger di intent specifici) le veicola di nuovo al Channel Gateway tramite responseChannel

Intelligenza

DIM Manager

  • Autentica i DIM tramite IIP.

  • Analizza le presentation per censire nuovi intenti per ciascun DIM, veicolando informazioni verso Model Orchestrator.

  • Coordina i singoli DIM, veicolando i vari intent richiamati verso il DIM di riferimento.

  • Riceve richieste da GateMaster (askDIM) e invia risposte (responseDIM).

DIM

  • Dopo essersi autenticati tramite IIP, inviano la propria presentation per registrarsi sul DIM Manager e rimanere in ascolto di intent da eseguire.

  • Gestiscono servizi specifici e integrazioni (API, algoritmi, ecc.).

Orchestrazione e Reasoning

Model Orchestrator

  • Coordina gli intenti registrati, fornendo configurazioni organizzate al Broadcast Manager.

Broadcast Manager

  • Riceve interazioni da parte del Gatemaster e decide cosa rispondere sulla base di:

    • Scope della sessione

    • Intent attivi nello scope

    • Conversazione interna alla sessione

  • Può fornire risposte automatiche (autoResponse) da fornire direttamente al canale originario.

  • Può triggerare intenti (tools) quando ottiene il payload minimo necessario per eseguirli

Last updated