La democratizzazione dei dati inizia con un accesso alle informazioni dettagliate facile e sicuro. Con Databricks Genie, gli utenti possono ora interagire con i dati direttamente dagli strumenti che già utilizzano: Teams, Slack, Confluence o app web personalizzate. Sia che si utilizzino le nostre integrazioni native Copilot Studio/Foundry o si creino soluzioni con le API/SDK di Genie Conversation, Genie può ora portare le analitiche in linguaggio naturale nei flussi di lavoro di tutti i giorni. Dietro le quinte, è possibile applicare OAuth per autenticare in modo sicuro ogni utente e applicare le autorizzazioni di accesso ai dati.
In precedenza, abbiamo visto clienti come The AA e Casas Bahia creare in modo indipendente le proprie integrazioni di Genie in Microsoft Teams e nelle app interne. La nostra solida suite di estensibilità ora rende questa esperienza più facile, veloce e scalabile.
In questo blog illustreremo due modi comuni per implementare Genie con OAuth aziendale nella tua organizzazione:
Le domande ad hoc sui dati vengono poste di continuo durante le conversazioni di gruppo. Con l'integrazione nativa di Databricks Genie in Copilot Studio, i tuoi utenti possono ora ottenere risposte non appena sorgono domande, direttamente in Microsoft Teams. Per sfruttare questa integrazione, segui i passaggi riportati di seguito:
Il primo passaggio per abilitare Genie in Microsoft Teams consiste nel connettere Azure Databricks a Power Platform (documentazione). Nelle tue app Microsoft Power Apps, fai clic su Connessioni e seleziona Azure Databricks o Databricks se usi AWS/GCP. Configura i seguenti campi:
Successivamente, connetterai il tuo spazio Genie a Copilot Studio (documentazione). La nostra integrazione gestisce tutta la logica delle API e di MCP, quindi la connessione può essere effettuata in pochi clic.
In Copilot Studio, fare clic su Agenti. Selezionare “Crea agente vuoto” per creare un nuovo agente autonomo per uno spazio Genie. Se si desidera integrare Genie in un framework di agenti esistente, è anche possibile scegliere un agente Copilot Studio esistente a cui aggiungere il proprio Genie space.
Nel tuo nuovo agente, fai clic su 'Strumenti', quindi su "Aggiungi uno strumento". Seleziona Azure Databricks Genie (o Databricks Genie per AWS/GCP) nella sezione MCP.
Ora, puoi selezionare lo spazio Genie desiderato e configurare i dettagli della connessione:
Quando si sceglie "Credenziali utente finale", ogni persona deve accedere a Databricks con il proprio account. Per semplificare l'operazione, suggeriamo di condividere i parametri di connessione (come descritto nella documentazione Microsoft), in modo che gli utenti non debbano fornire tali informazioni da soli. In pratica, ciò significa semplicemente fornire il server Hostname e il percorso HTTP, il che garantisce che l'autenticazione avvenga nell'area di lavoro Databricks esatta collegata allo spazio Genie connesso nell'agente Copilot Studio.
Ora che disponi di un agente Copilot Studio connesso al tuo spazio Genie, puoi pubblicarlo su Teams.
Tutto a posto! Genie è ora attivo in Microsoft Teams e fornisce informazioni dettagliate sui dati governati nel momento stesso in cui sorgono le domande.
Per vedere come gli utenti finali utilizzano Genie in Microsoft Teams, consulta le nostre storie dei clienti.
Molte organizzazioni vogliono anche integrare Genie direttamente nelle loro app web personalizzate, in modo che gli utenti possano porre domande negli strumenti che già utilizzano; ad esempio, i responsabili dei punti vendita potrebbero porre domande ad hoc sul loro inventario direttamente nel terminale di vendita esistente. Con le API di conversazione di Genie e l'OAuth di Databricks, ora questo è possibile.
Prima di creare un'integrazione tra la tua app Web e Genie, è importante decidere quale modello OAuth utilizzare: User-to-Machine (U2M), Machine-to-Machine (M2M) o On-Behalf-Of (OBO). Ciascun approccio è in linea con un diverso tipo di caso d'uso dell'applicazione:
Nel resto di questo blog, ci concentreremo sul primo modello per l'integrazione con Genie: il flusso OAuth U2M che utilizza il supporto OAuth integrato di Databricks.
NOTA: Databricks supporta anche la federazione dei token OAuth, che è possibile utilizzare per importare i token emessi dal proprio provider di identità e combinarli con uno qualsiasi dei metodi descritti sopra per l'accesso a Genie.
Per connettere in modo sicuro la tua app Web personalizzata a Genie, inizia registrandola nel tuo account Databricks. Questo passaggio consente a Databricks di emettere in modo sicuro token con ambito utente per la tua app nei passaggi successivi. Consulta la documentazione del prodotto per saperne di più.
Nella console dell'account Databricks, aggiungere una nuova connessione OAuth e configurare quanto segue:
Dopo aver salvato questa connessione, Databricks genererà quanto segue:
Archivia queste credenziali in modo sicuro nel tuo backend: saranno necessarie per scambiare i codici di autorizzazione con token di accesso e per autenticare le chiamate alle API di conversazione di Genie.
Il passaggio successivo è assicurarsi che la propria app reindirizzi gli utenti finali a Databricks in modo che possano accedere e approvare la propria app per comunicare con Genie per loro conto. Dopo un accesso e un'approvazione riusciti, Databricks reindirizzerà l'utente alla tua app con un codice di autorizzazione di breve durata.
Questo codice di autorizzazione è la prova che l'utente si è autenticato correttamente in Databricks e ha approvato l'accesso richiesto dalla tua app. Il backend della tua app utilizzerà questo codice di autorizzazione nel passaggio successivo per ottenere i token di accesso.
Per iniziare, genera valori PKCE e di stato per ogni accesso per proteggere la tua applicazione web:
Successivamente, il frontend dovrebbe costruire un URL di autorizzazione utilizzando l'endpoint OAuth di Databricks:
Includi i seguenti parametri del modulo per identificare la tua applicazione per i tuoi utenti:
Dopo che un utente ha effettuato l'accesso al proprio account Databricks, verrà reindirizzato a redirect_url con i parametri di query: https://<redirect_url>/oauth/callback?code=<authorization_code>&state=<state>
Il gestore di callback dovrebbe leggere l'authorization_code e lo state dalla stringa di query. Verifica che il valore di state corrisponda a quanto memorizzato nei cookie o nelle sessioni web. In caso contrario, scarta l'authorization_code. Con il authorization_code restituito, la tua applicazione può ora scambiarlo con token di accesso.
Il codice di autorizzazione recuperato nel passaggio precedente non può essere utilizzato per chiamare direttamente le APIs, ma deve essere scambiato con token di accesso sul backend, necessari per comunicare in modo sicuro con Genie. Per ulteriori informazioni, consulta la nostra documentazione del prodotto).
Di seguito è riportato un esempio di Python per lo scambio di codici di autorizzazione con token di accesso e di refresh (per maggiori dettagli, vedi la documentazione dell'SDK OAuth):
Includi i seguenti parametri:
È importante salvare i seguenti valori dall'oggetto result nel database dell'app:
Per gestire in modo sicuro i token di accesso, è anche importante che l'app tenga traccia delle scadenze e utilizzi i token di aggiornamento per ottenere nuovi token di accesso quando necessario. L'esempio di codice seguente astrae la logica di refresh per restituire sempre un token di accesso utente valido:
Ora che la tua applicazione dispone di token di accesso a Databricks con ambito utente, può inviare prompt a uno spazio Genie per conto dell'utente che ha effettuato l'accesso. Consigliamo di creare un router API di backend per la tua applicazione web per proteggere i token di accesso a Databricks dal browser e per centralizzare l'osservabilità, la gestione degli errori e la limitazione della velocità. Gli esempi di codice riportati di seguito sfruttano FastAPI e l'SDK di Genie per una logica più semplice.
Dopo questi passaggi, la tua app Web personalizzata sarà integrata in modo sicuro con Genie, consentendo agli utenti di porre domande in linguaggio naturale e recuperare informazioni dettagliate gestite direttamente negli strumenti che già utilizzano.
Genie è progettato per raggiungere gli utenti ovunque lavorino. In questo blog abbiamo illustrato come le organizzazioni incorporano in modo sicuro le funzionalità di analitiche conversazionali di Genie in Microsoft Teams e app personalizzate con l'autenticazione OAuth.
Portando Genie ovunque i tuoi team pongano domande, accorci il percorso dalla domanda all'approfondimento e dall'approfondimento all'azione. Inizia a creare spazi Genie e a metterli a disposizione dei tuoi utenti oggi stesso. Come sempre, per domande e feedback contatta i team del tuo account Databricks.
(Questo post sul blog è stato tradotto utilizzando strumenti basati sull'intelligenza artificiale) Post originale
Produto
June 12, 2024/11 min de leitura

