Vai al contenuto

Guida completa all’integrazione di Logic App con Semantic Kernel

Scopri come combinare le potenzialità di Logic App e Semantic Kernel per migliorare la tua applicazione.

La recente integrazione tra Logic App e Semantic Kernel ha portato a un’era di nuovi potenziali sviluppi nell’automazione e nell’efficienza delle applicazioni. Questa guida offre dettagli su come sfruttare al meglio queste tecnologie, affrontando lacune nella documentazione esistente e fornendo una demo completa per accelerare l’adozione.

Panoramica della proposta di valore

La combinazione di Logic App con Semantic Kernel non solo facilita l’integrazione con oltre 1.400 connettori, ma consente anche di migliorare significativamente il tempo di commercializzazione delle funzionalità. Ho notato una mancanza di guide pratiche su come importare Logic App nel proprio codice, una lacuna che questo articolo intende colmare.

Questa guida non solo spiega il codice, ma fornisce anche una applicazione demo end-to-end per velocizzare l’adozione di Logic App e Semantic Kernel.

Applicazione di esempio: LogicAppSK su GitHub

Con questa demo, puoi chattare con un agente virtuale, ottenere informazioni sull’inventario degli account di archiviazione e far inviare tali informazioni via email dal tuo agente.

Costruire la tua Logic App

Nell’applicazione demo, ho costruito due flussi di lavoro di esempio all’interno della stessa app di Logic App. Quando importiamo Logic App nel tuo codice, non è necessario importare singoli flussi di lavoro; è sufficiente importare l’intera Logic App e Semantic Kernel deciderà quale flusso di lavoro chiamare e quali parametri passare durante la chiamata agli endpoint corrispondenti.

Workflow di esempio 1: inviare un’email

Questo flusso di lavoro permette di inviare un’email con destinatario, titolo e contenuto definiti.

Esempio di invio email con Logic App

Workflow di esempio 2: elencare le informazioni dei blob correnti

Questo flusso di lavoro elenca le informazioni dei blob presenti nel tuo account di archiviazione.

Esempio di elenco blob con Logic App

Costruire il flusso di lavoro

Quando costruisci il flusso di lavoro, segui un processo simile a quello della creazione di un endpoint REST usando Logic App: crea un trigger HTTP con uno schema di payload appropriato, definisci le azioni centrali e concludi con una risposta corretta.

Un passaggio spesso trascurato è l’azione della “risposta”, che deve essere aggiunta per evitare errori di tipo “Function failed: no media type available”. Assicurati di includere l’azione di risposta per confermare l’esecuzione riuscita del flusso di lavoro.

Esempio di flusso di lavoro

Testare il flusso di lavoro

Testare il flusso di lavoro all’interno del portale di Azure è semplice. All’attivazione del flusso di lavoro, utilizza l’endpoint generato automaticamente che include il token SAS. Tuttavia, per garantire sicurezza, si consiglia di abilitare Easy Auth. Nonostante ciò, testare l’URL generato automaticamente con Postman fallirà a causa della limitazione dell’utilizzo di uno solo schema di autorizzazione (SAS o OAuth con Microsoft Entra ID).

Configurazione Easy Auth

Per testare il flusso di lavoro con Easy Auth abilitato, modifica l’URL generato e usa Microsoft Entra ID per l’autenticazione in Postman.

Test endpoint con Entra ID

Creare un’applicazione console con Semantic Kernel

L’applicazione di esempio è disponibile nel repository GitHub. In questo esempio, abbiamo sviluppato un’app di chat console in grado di rispondere a domande, ricordare la storia delle chat e chiamare endpoint esterni utilizzando Logic App come plugin. L’app chiede il permesso prima di eseguire le funzioni esterne.

L’applicazione utilizza due flussi di lavoro, selezionando dinamicamente quale eseguire in base alle tue istruzioni e passando i parametri necessari.

Applicazione console con Semantic Kernel

Verifica che l’email contenente le informazioni necessarie sia stata consegnata nella tua casella di posta.