Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Distribuisci l'agente di intelligenza artificiale in Mosaic AI Model Serving usando la deploy() funzione dall'API Python di Agent Framework. La distribuzione crea un endpoint di servizio con strumenti predefiniti di scalabilità, monitoraggio e collaborazione.
L'agente distribuito si integra automaticamente con le funzionalità di valutazione e monitoraggio di MLflow 3 , tra cui la traccia in tempo reale, l'app di revisione per il feedback degli stakeholder e il monitoraggio.
Requirements
MLflow 3
- Registrare il tuo agente in Unity Catalog.
- Installare MLflow 3.1.3 o versione successiva per distribuire gli agenti usando l'API
deploy()dadatabricks.agents. - La distribuzione di agenti dall'esterno di un notebook di Databricks richiede
databricks-agentsSDK versione 1.1.0 o successiva.
Installare i prerequisiti:
# Install prerequisites
%pip install mlflow>=3.1.3 databricks-agents>=1.1.0
# Restart Python to make sure the new packages are picked up
dbutils.library.restartPython()
MLflow 2.x
Important
Databricks consiglia di usare MLflow 3 per distribuire gli agenti perché alcune funzionalità di registrazione di MLflow 2 saranno deprecate. Vedere azioni di distribuzione dettagliate.
- Registrare il tuo agente in Unity Catalog.
- Installare MLflow 2.13.1 o versione successiva per distribuire gli agenti usando l'API
deploy()dadatabricks.agents. - La distribuzione di agenti dall'esterno di un notebook di Databricks richiede
databricks-agentsSDK versione 0.12.0 o successiva.
Installare i prerequisiti:
# Install prerequisites
%pip install mlflow>=2.13.1 databricks-agents>=0.12.0
# Restart Python to make sure the new packages are picked up
dbutils.library.restartPython()
Distribuire gli agenti con deploy()
Distribuire l'agente in un endpoint di gestione del modello:
from databricks import agents
deployment = agents.deploy(uc_model_name, uc_model_info.version)
# Retrieve the query endpoint URL for making API requests
deployment.query_endpoint
Quando si chiama deploy(), Databricks configura automaticamente l'infrastruttura di produzione e integra l'agente con le funzionalità di intelligenza artificiale MLflow gen seguendo questa procedura:
Avvertimento
Se si distribuisce un agente da un notebook archiviato in una cartella Git di Databricks, la traccia in tempo reale di MLflow 3 non funzionerà per impostazione predefinita.
Per abilitare la traccia in tempo reale, impostare l'esperimento su un esperimento non associato a Git usando mlflow.set_experiment() prima di eseguire agents.deploy().
Per impostazione predefinita, la deploy() funzione esegue le azioni seguenti:
- Crea un endpoint di servizio del modello per ospitare l'agente con scalabilità automatica e bilanciamento del carico
- Fornisce un'autenticazione sicura per consentire all'agente di accedere alle risorse sottostanti.
- Abilita il monitoraggio in tempo reale tramite la traccia dell'esperimento MLflow e la valutazione della qualità automatizzata sul traffico di produzione
- Configura la collaborazione degli stakeholder usando la raccolta di commenti e suggerimenti dell'app di revisione
Per altre informazioni, vedere Azioni di distribuzione dettagliate.
Personalizzare la distribuzione
Passa argomenti aggiuntivi a deploy() per personalizzare la distribuzione. Ad esempio, è possibile abilitare la scalabilità su zero per gli endpoint inattivi passando scale_to_zero_enabled=True. Ciò riduce i costi, ma aumenta il tempo necessario per gestire le query iniziali.
Per altri parametri, vedere API Python degli agenti di Databricks.
Recuperare ed eliminare le distribuzioni degli agenti
Recuperare o gestire le distribuzioni dell'agente esistenti. Vedere l'API Python degli agenti di Databricks.
from databricks.agents import list_deployments, get_deployments, delete_deployment
# Print all current deployments
deployments = list_deployments()
print(deployments)
# Get the deployment for a specific agent model name and version
agent_model_name = "" # Set to your Unity Catalog model name
agent_model_version = 1 # Set to your agent model version
deployment = get_deployments(model_name=agent_model_name, model_version=agent_model_version)
# List all deployments
all_deployments = list_deployments()
# Delete an agent deployment
delete_deployment(model_name=agent_model_name, model_version=agent_model_version)
Autenticazione per le risorse dipendenti
Gli agenti spesso devono autenticarsi ad altre risorse per completare le attività quando vengono distribuiti. Ad esempio, un agente potrebbe dover accedere a un indice di ricerca vettoriale per eseguire query su dati non strutturati.
Per informazioni sui metodi di autenticazione, inclusi quando usarli e su come configurarli, vedere Autenticazione per gli agenti di intelligenza artificiale.
Azioni di distribuzione dettagliate
Nella tabella seguente sono elencate le azioni di distribuzione dettagliate risultanti da una deploy() chiamata. Il completamento dell’implementazione può richiedere fino a 15 minuti.
MLflow 3
deploy() azione |
Description |
|---|---|
| Creare un endpoint di gestione del modello | Crea un endpoint API REST scalabile che serve l'agente alle applicazioni rivolte agli utenti con bilanciamento del carico automatico. |
| Fornire l'autenticazione sicura | Fornisce automaticamente credenziali di breve durata che consentono all'agente di accedere alle risorse gestite da Databricks (indici di ricerca vettoriale, funzioni di Unity Catalog e così via) con autorizzazioni minime necessarie. Databricks verifica che il proprietario dell'endpoint disponga delle autorizzazioni appropriate prima di rilasciare le credenziali, impedendo l'accesso non autorizzato. Per le risorse non Databricks, passare variabili di ambiente con informazioni riservate a deploy(). Vedere Configurare l’accesso alle risorse dagli endpoint di servizio dei modelli. |
| Abilitare l'app di revisione | Fornisce un'interfaccia Web in cui gli stakeholder possono interagire con l'agente e fornire feedback. Vedere Raccogliere feedback e aspettative etichettando le tracce esistenti. |
| Abilitare la traccia in tempo reale | Registra tutte le interazioni dell'agente a un esperimento MLflow in tempo reale, offrendo visibilità immediata per il monitoraggio e il debug.
|
| Abilitare il monitoraggio della produzione (beta) | Configura la valutazione della qualità automatizzata che esegue i valutatori sui dati di traffico di produzione. Vedere Monitoraggio della produzione. |
| Abilitare le tabelle di inferenza | Crea tabelle che registrano input e risposte per il controllo e l'analisi.
|
| Registrare le richieste dell'API REST e rivedere il feedback dell'app | Registra le richieste api e il feedback a una tabella di inferenza. Avvertimento: Il modello di feedback è deprecato e verrà rimosso in una versione futura. Eseguire l'aggiornamento a MLflow 3 e usare invece l'API log_feedback . Vedere Raccogliere commenti e suggerimenti degli utenti.
|
MLflow 2
deploy() azione |
Description |
|---|---|
| Creare un endpoint di gestione del modello | Crea un endpoint API REST scalabile che serve l'agente alle applicazioni rivolte agli utenti con bilanciamento del carico automatico. |
| Fornire l'autenticazione sicura | Fornisce automaticamente credenziali di breve durata che consentono all'agente di accedere alle risorse gestite da Databricks (indici di ricerca vettoriale, funzioni di Unity Catalog e così via) con autorizzazioni minime necessarie. Databricks verifica che il proprietario dell'endpoint disponga delle autorizzazioni appropriate prima di rilasciare le credenziali, impedendo l'accesso non autorizzato. Per le risorse non Databricks, passare variabili di ambiente con informazioni riservate a deploy(). Vedere Configurare l’accesso alle risorse dagli endpoint di servizio dei modelli. |
| Abilitare l'app di revisione | Fornisce un'interfaccia Web in cui gli stakeholder possono interagire con l'agente e fornire feedback. Vedere Raccogliere feedback e aspettative etichettando le tracce esistenti. |
| Abilitare le tabelle di inferenza | Crea tabelle che registrano input e risposte per il controllo e l'analisi. Avvertimento: I log delle richieste e i log di valutazione sono deprecati e verranno rimossi in una versione futura. Per indicazioni sulla migrazione, vedere la deprecazione dei log delle richieste e dei log di valutazione.
|
| Registrare le richieste dell'API REST e rivedere il feedback dell'app (deprecato) | Registra le richieste api e il feedback a una tabella di inferenza. Avvertimento: Il modello di feedback è deprecato e verrà rimosso in una versione futura. Eseguire l'aggiornamento a MLflow 3 e usare invece l'API log_feedback . Vedere Raccogliere commenti e suggerimenti degli utenti.
|