Condividi tramite


Framework dell'agente del kernel semantico

Importante

Le funzionalità con agente singolo, come ChatCompletionAgent e OpenAIAssistantAgent, si trovano nella fase di rilascio candidata. Queste funzionalità sono quasi complete e generalmente stabili, anche se possono subire miglioramenti o ottimizzazioni minori prima di raggiungere la disponibilità generale completa. Tuttavia, i modelli di chat dell'agente sono ancora nella fase sperimentale. Questi schemi sono in fase di sviluppo attivo e possono cambiare significativamente prima di passare alla fase di anteprima o di rilascio candidata.

Il framework dell'agente del kernel semantico fornisce una piattaforma all'interno dell'ecosistema del kernel semantico che consente di creare agenti di intelligenza artificiale e di incorporare modelli agentici in qualsiasi applicazione in base agli stessi modelli e funzionalità esistenti nel framework del kernel semantico principale.

Che cos'è un agente di intelligenza artificiale?

testo alternativo testo alternativo testo alternativo testo alternativo

Un agente di intelligenza artificiale è un'entità software progettata per eseguire attività in modo autonomo o semiautonomo ricevendo input, elaborando informazioni e eseguendo azioni per raggiungere obiettivi specifici.

Gli agenti possono inviare e ricevere messaggi, generando risposte usando una combinazione di modelli, strumenti, input umani o altri componenti personalizzabili.

Gli agenti sono progettati per lavorare in modo collaborativo, consentendo flussi di lavoro complessi interagendo tra loro. Il Agent Framework consente la creazione di agenti semplici e sofisticati, migliorando la modularità e la facilità di manutenzione

Quali problemi risolvono gli agenti di intelligenza artificiale?

Gli agenti di intelligenza artificiale offrono diversi vantaggi per lo sviluppo di applicazioni, in particolare abilitando la creazione di componenti di intelligenza artificiale modulari in grado di collaborare per ridurre l'intervento manuale in attività complesse. Gli agenti di intelligenza artificiale possono operare in modo autonomo o semi-autonomo, rendendoli strumenti potenti per una gamma di applicazioni.

Di seguito sono riportati alcuni dei vantaggi principali:

  • Componenti modulari: consente agli sviluppatori di definire vari tipi di agenti per attività specifiche, ad esempio lo scraping dei dati, l'interazione api o l'elaborazione del linguaggio naturale. In questo modo è più semplice adattare l'applicazione man mano che i requisiti evolvono o emergono nuove tecnologie.

  • Collaborazione: più agenti possono "collaborare" alle attività. Ad esempio, un agente potrebbe gestire la raccolta dei dati mentre un altro lo analizza e un altro usa i risultati per prendere decisioni, creando un sistema più sofisticato con intelligenza distribuita.

  • Collaborazione tra agenti umani: le interazioni umane nel ciclo consentono agli agenti di lavorare insieme agli esseri umani per aumentare i processi decisionali. Ad esempio, gli agenti potrebbero preparare analisi dei dati che gli esseri umani possono esaminare e ottimizzare, migliorando così la produttività.

  • Orchestrazione dei processi: gli agenti possono coordinare diverse attività tra sistemi, strumenti e API, consentendo di automatizzare processi end-to-end come distribuzioni di applicazioni, orchestrazione cloud o anche processi creativi come la scrittura e la progettazione.

Quando usare un agente di intelligenza artificiale?

L'uso di un framework agente per lo sviluppo di applicazioni offre vantaggi particolarmente utili per determinati tipi di applicazioni. Anche se i modelli di intelligenza artificiale tradizionali vengono spesso usati come strumenti per eseguire attività specifiche (ad esempio, classificazione, stima o riconoscimento), gli agenti introducono maggiore autonomia, flessibilità e interattività nel processo di sviluppo.

  • Autonomia e processo decisionale: se l'applicazione richiede entità in grado di prendere decisioni indipendenti e adattarsi alle condizioni mutevoli (ad esempio, sistemi robotici, veicoli autonomi, ambienti intelligenti), è preferibile un framework agente.

  • Collaborazione tra più agenti: se l'applicazione prevede sistemi complessi che richiedono la collaborazione di più componenti indipendenti (ad esempio, la gestione della catena di approvvigionamento, il calcolo distribuito o la robotica swarm), gli agenti forniscono meccanismi predefiniti per il coordinamento e la comunicazione.

  • Interattivo e orientato agli obiettivi: se l'applicazione prevede un comportamento basato su obiettivi (ad esempio, completare le attività in modo autonomo o interagire con gli utenti per raggiungere obiettivi specifici), i framework basati su agente sono una scelta migliore. Gli esempi includono assistenti virtuali, intelligenza artificiale dei giochi e task planner.

Come posso installare il Framework per agenti del Kernel Semantico?

L'installazione di Agent Framework SDK è specifica del canale di distribuzione associato al linguaggio di programmazione.

Per .NET SDK sono disponibili diversi pacchetti NuGet.

Nota: l'SDK del kernel semantico di base è necessario oltre a tutti i pacchetti dell'agente.

Pacchetto Descrizione
Microsoft.SemanticKernel Contiene le librerie di base semantic kernel per iniziare a usare Agent Framework. L'applicazione deve fare esplicito riferimento a questo.
Microsoft.SemanticKernel.Agents.Abstractions Definisce le astrazioni dell'agente di base per il Agent Framework. In genere non è necessario specificarlo poiché è incluso sia nei pacchetti Microsoft.SemanticKernel.Agents.Core che Microsoft.SemanticKernel.Agents.OpenAI.
Microsoft.SemanticKernel.Agents.Core Includa le classi ChatCompletionAgent e AgentGroupChat.
Microsoft.SemanticKernel.Agents.OpenAI Consente di usare l'API dell'Assistente OpenAI tramite il OpenAIAssistantAgent.
Modulo Descrizione
semantic-kernel.agents Si tratta della libreria del kernel semantico per iniziare a usare Agent Framework. L'applicazione deve fare esplicito riferimento a questo. Questo modulo contiene le classi ChatCompletionAgent e AgentGroupChat, nonché la possibilità di usare API Assistente OpenAI tramite OpenAIAssistantAgent o AzureOpenAssistant.

Gli agenti non sono attualmente disponibili in Java.