È possibile utilizzare modelli predefiniti per distribuire i servizi di intelligenza artificiale in watsonx.ai. I modelli di servizio AI forniscono una base precostituita per le applicazioni AI, consentendo agli sviluppatori di concentrarsi sulla logica di base della loro applicazione, anziché partire da zero.
Standardizzazione delle distribuzioni dei servizi AI con i modelli
I modelli di servizio AI sono componenti precostituiti, riutilizzabili e personalizzabili che forniscono un approccio strutturato alla distribuzione e alla gestione di applicazioni AI generative. Offrono un modo standardizzato per confezionare, distribuire e integrare i modelli di intelligenza artificiale con altre applicazioni e sistemi, consentendo agli sviluppatori di concentrarsi sulla creazione e sulla formazione dei modelli senza preoccuparsi dell'infrastruttura sottostante e della logistica di distribuzione. Fornendo una struttura, una configurazione e un insieme di strumenti predefiniti, i modelli di servizi di IA semplificano il processo di distribuzione dei servizi di IA, riducono il rischio di errori e migliorano l'efficienza complessiva e la coerenza dello sviluppo e della distribuzione dell'IA.
Componenti dei modelli di servizio AI
I componenti di un modello di servizio AI sono i seguenti:
Directory dei sorgenti : La directory dei sorgenti contiene il codice utilizzato dalle funzioni distribuite (dal file
ai_service.py
). Al momento della distribuzione, la directory di origine viene impacchettata e inviata al cloud come estensione del pacchetto.Logica applicativa di base : La logica dell'applicazione principale è contenuta nel file
ai_service.py
. Questo file comprende le funzioni da distribuire, inclusa la logica di base dell'applicazione, la definizione dello schema di input e il codice di autenticazione.File di configurazione : Il file
config.toml
memorizza i metadati di distribuzione e le impostazioni di configurazione del modello.Test :
tests/
contiene i test unitari per il template, compresi i test per gli strumenti e le funzioni di utilità.Script di distribuzione : Il sito
scripts/deploy.py
distribuisce il modello su IBM Cloud. Il sitoexamples/execute_ai_service_locally.py
può essere utilizzato per eseguire il servizio AI localmente. Il sitoexamples/query_existing_deployment.py
può essere usato per dedurre una distribuzione esistente.Configurazione del progetto : Il file
pyproject.toml
gestisce le dipendenze e i pacchetti del progetto.
Distribuzione dei servizi AI con i modelli
Seguire questi passaggi per distribuire i servizi AI con i modelli:
Preparare il modello : Per preparare il modello, è necessario clonare il repository del modello, installare le dipendenze e gli strumenti necessari, come
Pipx
oPoetry
, configurare l'ambiente sul sistema locale e attivare l'ambiente virtuale. Questo assicura che il modello sia configurato correttamente e pronto per la distribuzione.Configurare il modello : Configurare il modello compilando il file
config.toml
con le credenziali e le impostazioni di configurazione necessarie. Ciò include la personalizzazione del modello con la logica applicativa, se necessario, per soddisfare i requisiti specifici del servizio AI. Il file di configurazione memorizza i metadati di distribuzione e le impostazioni di configurazione del modello e viene usato per modificare il modello per le esecuzioni locali.È inoltre possibile fornire ulteriori dati chiave-valore all'applicazione utilizzando
Parameter sets
o l'oggettoCUSTOM
nel fileconfig.toml
. Per saperne di più sulla memorizzazione e la gestione dei set di parametri, vedere Set di parametri nella documentazione della libreria client Python di watsonx.aiPer gestire le credenziali esterne, è possibile utilizzare IBM Secrets Manager. Secrets Manager è un servizio che consente di archiviare e gestire in modo sicuro informazioni sensibili, come chiavi API e password. Utilizzando Secrets Manager, è possibile tenere le credenziali fuori dal codice e dai file di configurazione, migliorando così la sicurezza dell'applicazione. Per ulteriori informazioni, consultare la documentazione API di IBM Cloud Secrets Manager.
Testare il modello : Prima di distribuire il modello, è essenziale testarlo per assicurarsi che funzioni correttamente. Questo comporta l'esecuzione di test unitari per verificare che il modello funzioni come previsto, testando l'applicazione localmente con l'esecuzione dello script
examples/execute_ai_service_locally.py
. È possibile eseguire questo script per eseguire il servizio AI localmente e testarlo con input di esempio.Distribuire il modello : Una volta che il modello è stato testato e convalidato, può essere distribuito usando lo script
scripts/deploy.py
. Questo script automatizza il processo di distribuzione e crea un'estensione del pacchetto. È possibile utilizzare Secrets Manager per gestire le credenziali esterne durante la distribuzione. A tal fine, creare un segreto che contenga le credenziali che si desidera utilizzare. Una volta creato il segreto, è possibile farvi riferimento durante la distribuzione. L'applicazione verrà distribuita con le credenziali del segreto. Il processo di distribuzione può richiedere alcuni minuti per essere completato, dopodiché si riceverà un ID di distribuzione.Inferenza del modello : È possibile dedurre il servizio di intelligenza artificiale distribuito usando lo script
examples/query_existing_deployment.py
. Utilizzare questo script per testare il servizio AI con input di esempio e verificare l'output. È inoltre possibile utilizzare l'interfaccia utente per dedurre l'implementazione e interagire con il servizio AI. Per fornire ulteriori dati chiave-valore all'applicazione durante l'inferenza, si può usareParameter sets
o l'oggettoCUSTOM
nel fileconfig.toml
. Queste coppie chiave-valore saranno passate all'applicazione durante la distribuzione e potranno essere consultate durante l'inferenza.
Modello di esempio
Per imparare a distribuire i servizi AI utilizzando i modelli, vedere il seguente modello di esempio:
Modello | Descrizione |
---|---|
Un modello di applicazione LangGraph LLM con funzionalità di chiamata di funzione |
|
Argomento principale: Distribuzione dei servizi AI