Gestione di modelli con Azure Databricks

Questo articolo descrive la gestione del modello di Azure Databricks, inclusi i vantaggi e le limitazioni.

Che cos'è Model Serving?

Databricks Model Serving offre un'interfaccia unificata per distribuire, gestire ed eseguire query sui modelli di intelligenza artificiale. Ogni modello usato è disponibile come API REST che è possibile integrare nell'applicazione Web o client.

Model Serving offre un servizio a disponibilità elevata e bassa latenza per la distribuzione di modelli. Il servizio aumenta o riduce automaticamente le prestazioni per soddisfare le modifiche della domanda, risparmiando i costi dell'infrastruttura ottimizzando al tempo stesso le prestazioni della latenza. Questa funzionalità usa il calcolo serverless. Per altri dettagli, vedere la pagina dei prezzi di Model Serving.

La gestione dei modelli supporta la gestione:

  • Modelli personalizzati. Si tratta di modelli Python inclusi nel formato MLflow. Possono essere registrati nel catalogo unity o nel registro dei modelli dell'area di lavoro. Gli esempi includono i modelli scikit-learn, XGBoost, PyTorch e Hugging Face transformer.
  • Modelli aperti all'avanguardia resi disponibili dalle API del modello foundation. Questi modelli sono architetture di modelli di base curate che supportano l'inferenza ottimizzata. I modelli di base, come Llama-2-70B-chat, BGE-Large e Mistral-7B sono disponibili per l'uso immediato con prezzi con pagamento per token e carichi di lavoro che richiedono garanzie di prestazioni e varianti di modello ottimizzate possono essere distribuite con velocità effettiva con provisioning.
  • Modelli esterni. Si tratta di modelli ospitati all'esterno di Databricks. Gli endpoint che servono modelli esterni possono essere regolati centralmente e i clienti possono stabilire limiti di velocità e controllo di accesso per loro. Alcuni esempi includono modelli di base come GPT-4 di OpenAI, Claude di Anthropic e altri.

Nota

È possibile interagire con i modelli linguistici di grandi dimensioni supportati usando AI Playground. Ai Playground è un ambiente simile a una chat in cui è possibile testare, richiedere e confrontare i moduli di operatore. Questa funzionalità è disponibile nell'area di lavoro di Azure Databricks.

La gestione dei modelli offre un'API REST unificata e un'API di distribuzione MLflow per attività CRUD ed esecuzione di query. Fornisce inoltre una singola interfaccia utente per gestire tutti i modelli e i rispettivi endpoint di gestione. È anche possibile accedere ai modelli direttamente da SQL usando funzioni di intelligenza artificiale per semplificare l'integrazione nei flussi di lavoro di analisi.

Per un'esercitazione introduttiva su come gestire modelli personalizzati in Azure Databricks, vedere Esercitazione: Distribuire ed eseguire query su un modello personalizzato.

Per un'esercitazione introduttiva su come eseguire query su un modello di base in Databricks, vedere Introduzione all'esecuzione di query su LLMs in Databricks.

Perché usare Model Serving?

  • Distribuire ed eseguire query su qualsiasi modello: Model Serving fornisce un'interfaccia unificata che consente di gestire tutti i modelli in un'unica posizione ed eseguirne query con una singola API, indipendentemente dal fatto che siano ospitati in Databricks o esternamente. Questo approccio semplifica il processo di sperimentazione con, personalizzazione e distribuzione di modelli nell'ambiente di produzione in diversi cloud e provider.

  • Personalizzare in modo sicuro i modelli con i dati privati: basato su una piattaforma di Data Intelligence, Model Serving semplifica l'integrazione di funzionalità e incorporamenti in modelli tramite l'integrazione nativa con Databricks Feature Store e Databricks Vector Search. Per migliorare ulteriormente l'accuratezza e la comprensione contestuale, i modelli possono essere ottimizzati con dati proprietari e distribuiti senza problemi in Model Serving.

  • Governance e monitoraggio dei modelli: l'interfaccia utente di gestione consente di gestire centralmente tutti gli endpoint del modello in un'unica posizione, inclusi quelli ospitati esternamente. È possibile gestire le autorizzazioni, tenere traccia e impostare i limiti di utilizzo e monitorare la qualità di tutti i tipi di modelli. In questo modo è possibile democratizzare l'accesso a SaaS e aprire llms all'interno dell'organizzazione assicurando al tempo stesso la protezione appropriata.

  • Ridurre i costi con inferenza ottimizzata e scalabilità rapida: Databricks ha implementato una gamma di ottimizzazioni per garantire la velocità effettiva e la latenza migliori per i modelli di grandi dimensioni. Gli endpoint aumentano o riduceno automaticamente le prestazioni per soddisfare le modifiche della domanda, risparmiando i costi dell'infrastruttura ottimizzando al tempo stesso le prestazioni della latenza.

  • Offrire affidabilità e sicurezza alla gestione dei modelli: la gestione dei modelli è progettata per l'uso di produzione a disponibilità elevata e a bassa latenza e può supportare più di 25.000 query al secondo con una latenza di overhead inferiore a 50 ms. I carichi di lavoro di gestione sono protetti da più livelli di sicurezza, garantendo un ambiente sicuro e affidabile anche per le attività più sensibili.

Requisiti

  • Modello registrato in Unity Catalog o nel Registro dei modelli di area di lavoro.
  • Autorizzazioni per i modelli registrati, come descritto in Gestire gli ACL degli endpoint.
  • MLflow 1.29 o versione successiva

Abilitare la gestione dei modelli per l'area di lavoro

Non sono necessari passaggi aggiuntivi per abilitare la gestione dei modelli nell'area di lavoro.

Limitazioni e disponibilità in base all'area geografica

Databricks Model Serving impone limiti predefiniti per garantire prestazioni affidabili. Vedere Model Serving limits and regions (Limiti e aree di gestione dei modelli). Se si hanno commenti e suggerimenti su questi limiti o un endpoint in un'area non supportata, contattare il team dell'account Databricks.

Protezione dei dati nella gestione dei modelli

Databricks prende sul serio la sicurezza dei dati. Databricks riconosce l'importanza dei dati analizzati usando Databricks Model Serving e implementa i controlli di sicurezza seguenti per proteggere i dati.

  • Ogni richiesta cliente a Model Serving è isolata, autenticata e autorizzata logicamente.
  • Databricks Model Serving crittografa tutti i dati inattivi (AES-256) e in transito (TLS 1.2+).

Per tutti gli account a pagamento, Databricks Model Serving non usa input utente inviati al servizio o output dal servizio per eseguire il training di qualsiasi modello o migliorare qualsiasi servizio Databricks.

Per le API del modello di Databricks Foundation, nell'ambito della fornitura del servizio, Databricks può elaborare temporaneamente e archiviare input e output ai fini della prevenzione, rilevamento e mitigazione di abusi o usi dannosi. Gli input e gli output sono isolati da quelli di altri clienti, archiviati nella stessa area dell'area di lavoro per un massimo di trenta (30) giorni e accessibili solo per rilevare e rispondere a problemi di sicurezza o abusi.

Risorse aggiuntive