Installare ed eseguire contenitori Docker per LUIS
Importante
LUIS verrà ritirato il 1° ottobre 2025 e a partire dal 1° aprile 2023 non sarà possibile creare nuove risorse LUIS. È consigliabile eseguire la migrazione delle applicazioni LUIS alla comprensione del linguaggio conversazionale per trarre vantaggio dal supporto continuo del prodotto e dalle funzionalità multilingue.
Nota
La posizione dell'immagine del contenitore è stata modificata di recente. Leggere questo articolo per visualizzare il percorso aggiornato per questo contenitore.
I contenitori consentono di usare LUIS nel proprio ambiente. I contenitori sono ottimi per requisiti specifici di sicurezza e governance dei dati. Questo articolo illustra come scaricare, installare ed eseguire un contenitore LUIS.
Il contenitore Language Understanding (LUIS) carica il modello di comprensione del linguaggio sottoposto a training o pubblicato. Come app LUIS, il contenitore Docker fornisce l'accesso alle stime delle query dagli endpoint API del contenitore. È possibile raccogliere i log di query dal contenitore e caricarli nell'app Language Understanding per migliorare l'accuratezza delle stime dell'app.
Il video seguente illustra l'uso di questo contenitore.
Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.
Prerequisiti
Per eseguire il contenitore LUIS, tenere presente i prerequisiti seguenti:
- Docker installato in un computer host. Docker deve essere configurato per consentire ai contenitori di connettersi ai dati di fatturazione e inviarli ad Azure.
- In Windows, è anche necessario configurare Docker per supportare i contenitori Linux.
- È necessario avere una conoscenza di base dei concetti di Docker.
- Una risorsa LUIS con il piano tariffario gratuito (F0) o Standard (S).
- Un'app con training o pubblicata inserita in un pacchetto come input montato nel contenitore con l'ID app associato. È possibile ottenere il file in pacchetto dal portale LUIS o dalle API di creazione. Se si riceve un'app in pacchetto LUIS dalle API di creazione, sarà necessaria anche la chiave di creazione.
Raccogliere i parametri obbligatori
Sono necessari tre parametri principali per tutti i contenitori di Intelligenza artificiale di Azure. Le Condizioni di licenza software Microsoft devono essere presenti con il valore accept. Sono necessari anche un URI endpoint e una chiave API.
URI endpoint
Il {ENDPOINT_URI}
valore è disponibile nella pagina panoramica portale di Azure della risorsa dei servizi di intelligenza artificiale di Azure corrispondente. Passare alla pagina Panoramica, passare il puntatore del mouse sull'endpoint e viene visualizzata un'icona Copia negli Appunti. Copiare e usare l'endpoint, se necessario.
Chiavi
Il {API_KEY}
valore viene usato per avviare il contenitore ed è disponibile nella pagina Chiavi di portale di Azure della risorsa corrispondente dei servizi di intelligenza artificiale di Azure. Passare alla pagina Chiavi e selezionare l'icona Copia negli Appunti.
Importante
Queste chiavi di sottoscrizione vengono usate per accedere all'API dei servizi di intelligenza artificiale di Azure. Non condividere le chiavi. Archiviarli in modo sicuro. Ad esempio, usare Azure Key Vault. È anche consigliabile rigenerare regolarmente queste chiavi. Per effettuare una chiamata API è necessaria una sola chiave. Quando si rigenera la prima chiave, è possibile usare la seconda chiave per l'accesso continuo al servizio.
App ID {APP_ID}
Questo ID viene usato per selezionare l'app. È possibile trovare l'ID app nel portale LUIS facendo clic su Gestisci nella parte superiore della schermata per l'app e quindi Impostazioni.
Chiave di creazione {AUTHORING_KEY}
questa chiave viene usata per ottenere il pacchetto dell'app dal servizio LUIS nel cloud e caricare i log di query nel cloud. Se si esporta l'app usando l'API REST, sarà necessaria la chiave di creazione, descritta più avanti nell'articolo.
È possibile ottenere la chiave di creazione dal portale LUIS facendo clic su Gestisci nella parte superiore della schermata per l'app e quindi su Risorse di Azure.
API di creazione per il file del pacchetto
API di creazione per le app in pacchetto:
Computer host
L'host è un computer basato su x64 che esegue il contenitore Docker. Può essere un computer dell'ambiente locale o un servizio di hosting Docker in Azure, tra cui:
- Servizio Azure Kubernetes.
- Istanze di Azure Container.
- Cluster Kubernetes distribuito in Azure Stack. Per altre informazioni, vedere Deploy Kubernetes to Azure Stack (Distribuire Kubernetes in Azure Stack).
Indicazioni e requisiti per i contenitori
Nella tabella seguente sono elencati i valori minimi e consigliati per l'host contenitore. I requisiti possono cambiare a seconda del volume di traffico.
Contenitore | Requisiti minimi | Requisiti consigliati | TPS (Minimo, Massimo) |
---|---|---|---|
LUIS | 1 core, 2 GB di memoria | 1 core, 4 GB di memoria | 20, 40 |
- Ogni core deve essere di almeno 2,6 gigahertz (GHz) o superiore.
- TPS - transazioni al secondo
Core e memoria corrispondono alle impostazioni --cpus
e --memory
che vengono usate come parte del comando docker run
.
Ottenere l'immagine del contenitore con docker pull
L'immagine del contenitore LUIS è disponibile nel sindacato del mcr.microsoft.com
registro contenitori. Si trova all'interno del azure-cognitive-services/language
repository ed è denominato luis
. Il nome completo dell'immagine del contenitore è , mcr.microsoft.com/azure-cognitive-services/language/luis
.
Per usare la versione più recente del contenitore, è possibile usare il latest
tag . È anche possibile trovare un elenco completo dei tag in MCR.
Usare il comando docker pull
per scaricare un'immagine del contenitore dal repository mcr.microsoft.com/azure-cognitive-services/language/luis
:
docker pull mcr.microsoft.com/azure-cognitive-services/language/luis:latest
Per una descrizione completa dei tag disponibili, ad esempio latest
usato nel comando precedente, vedere LUIS nel sito Docker Hub.
Suggerimento
È possibile usare il comando docker images per visualizzare l'elenco delle immagini dei contenitori scaricate. Ad esempio, il comando seguente visualizza l'ID, il repository e il tag di ogni immagine del contenitore scaricata, in formato tabella:
docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"
IMAGE ID REPOSITORY TAG
<image-id> <repository-path/name> <tag-name>
Come usare il contenitore
Dopo aver aggiunto il contenitore nel computer host, seguire questa procedura per usare il contenitore.
- Esportare il pacchetto per il contenitore dal portale di LUIS o tramite le API LUIS.
- Spostare il file del pacchetto nella directory di input richiesta nel computer host. Non rinominare, modificare, sovrascrivere o decomprimere il file del pacchetto LUIS.
- Eseguire il contenitore, con il punto di montaggio di input e le impostazioni di fatturazione richiesti. Sono disponibili altri esempi del comando
docker run
. - Eseguire query sull'endpoint di stima del contenitore.
- Dopo aver completato le operazioni con il contenitore, importare i log dell'endpoint dal punto di montaggio di output nel portale di LUIS e arrestare il contenitore.
- Usare la funzionalità di apprendimento attivo nella pagina Review endpoint utterances (Esamina espressioni endpoint) del portale di LUIS per migliorare l'app.
Non è possibile modificare l'app in esecuzione nel contenitore. Per modificare l'app nel contenitore, è necessario modificare l'app nel servizio LUIS usando il portale LUIS o usare le API di creazione LUIS. Eseguire quindi il training e/o la pubblicazione, scaricare un nuovo pacchetto ed eseguire nuovamente il contenitore.
L'app LUIS all'interno del contenitore non può essere esportata di nuovo nel servizio LUIS. È possibile caricare solo i log di query.
Esportare il pacchetto dell'app da LUIS
Il contenitore LUIS richiede un'app LUIS sottoposta a training o pubblicata per rispondere alle query di stima delle espressioni utente. Per ottenere l'app LUIS, usare l'API del pacchetto pubblicato o sottoposto a training.
La posizione predefinita è la sottodirectory input
in relazione alla posizione in cui viene eseguito il comando docker run
.
Posizionare il file del pacchetto in una directory e fare riferimento alla directory come punto di montaggio di input quando si esegue il contenitore Docker.
Tipi di pacchetto
La directory di montaggio di input può contenere contemporaneamente i modelli Production, Staging e Versioned dell'app. Tutti i pacchetti vengono montati.
Tipo di pacchetto | API endpoint di query | Disponibilità query | Formato nome file pacchetto |
---|---|---|---|
Controllo delle versioni | GET, POST | Solo contenitore | {APP_ID}_v{APP_VERSION}.gz |
Staging | GET, POST | Azure e contenitore | {APP_ID}_STAGING.gz |
Produzione | GET, POST | Azure e contenitore | {APP_ID}_PRODUCTION.gz |
Importante
Non rinominare, modificare, sovrascrivere o decomprimere i file del pacchetto LUIS.
Prerequisiti per la creazione di pacchetti
Prima di creare un pacchetto di un'applicazione LUIS, è necessario quanto segue:
Requisiti di creazione di pacchetti | Dettagli |
---|---|
Istanza di risorsa dei servizi di intelligenza artificiale di Azure | Le aree supportate includono Stati Uniti occidentali ( westus )Europa occidentale ( westeurope )Australia orientale ( australiaeast ) |
App LUIS sottoposta a training o pubblicata | Senza dipendenze non supportate. |
Accesso al file system del computer host | Il computer host deve consentire un punto di montaggio di input. |
Esportare il pacchetto dell'app dal portale di LUIS
Il portale di LUIS consente di esportare il pacchetto dell'app sottoposta a training o pubblicata.
Esportare il pacchetto dell'app pubblicata dal portale di LUIS
Il pacchetto dell'app pubblicata è disponibile nella pagina di elenco My Apps (App personali).
- Accedere al portale di LUIS.
- Selezionare la casella di controllo a sinistra del nome dell'app nell'elenco.
- Scegliere la voce Export (Esporta) sulla barra degli strumenti contestuale sopra l'elenco.
- Selezionare Export for container (GZIP) (Esporta per contenitore - GZIP).
- Selezionare Production slot (Slot di produzione) o Staging slot (Slot di staging) come ambiente.
- Il pacchetto viene scaricato dal browser.
Esportare il pacchetto dell'app con versione dal portale LUIS
Il pacchetto dell'app con versione è disponibile nella pagina elenco Versioni .
- Accedere al portale di LUIS.
- Selezionare l'app nell'elenco.
- Selezionare Manage (Gestisci) sulla barra di spostamento dell'app.
- Selezionare Versions (Versioni) sulla barra di spostamento a sinistra.
- Selezionare la casella di controllo a sinistra del nome della versione nell'elenco.
- Scegliere la voce Export (Esporta) sulla barra degli strumenti contestuale sopra l'elenco.
- Selezionare Export for container (GZIP) (Esporta per contenitore - GZIP).
- Il pacchetto viene scaricato dal browser.
Esportare il pacchetto dell'app pubblicata dall'API
Usare il metodo dell'API REST seguente per creare il pacchetto di un'app LUIS già pubblicata. Sostituire i segnaposto con i valori appropriati nella chiamata API, facendo riferimento alla tabella riportata sotto la specifica HTTP.
GET /luis/api/v2.0/package/{APP_ID}/slot/{SLOT_NAME}/gzip HTTP/1.1
Host: {AZURE_REGION}.api.cognitive.microsoft.com
Ocp-Apim-Subscription-Key: {AUTHORING_KEY}
Segnaposto | Valore |
---|---|
{APP_ID} | ID applicazione dell'app LUIS pubblicata. |
{SLOT_NAME} | Ambiente dell'app LUIS pubblicata. Utilizzare uno dei valori seguenti:PRODUCTION STAGING |
{AUTHORING_KEY} | Chiave di creazione dell'account LUIS per l'app LUIS pubblicata. È possibile ottenere la chiave di creazione nella pagina User Settings (Impostazioni utente) nel portale di LUIS. |
{AZURE_REGION} | Area di Azure appropriata:westus - Stati Uniti occidentaliwesteurope - Europa occidentaleaustraliaeast - Australia orientale |
Per scaricare il pacchetto pubblicato, vedere la documentazione dell'API qui. Se è stato scaricato correttamente, la risposta è un file di pacchetto LUIS. Salvare il file nella posizione di archiviazione specificata per il punto di montaggio di input del contenitore.
Esportare il pacchetto dell'app con versione dall'API
Usare il metodo dell'API REST seguente per creare il pacchetto di un'applicazione LUIS già sottoposta a training. Sostituire i segnaposto con i valori appropriati nella chiamata API, facendo riferimento alla tabella riportata sotto la specifica HTTP.
GET /luis/api/v2.0/package/{APP_ID}/versions/{APP_VERSION}/gzip HTTP/1.1
Host: {AZURE_REGION}.api.cognitive.microsoft.com
Ocp-Apim-Subscription-Key: {AUTHORING_KEY}
Segnaposto | Valore |
---|---|
{APP_ID} | ID applicazione dell'app LUIS sottoposta a training. |
{APP_VERSION} | Versione dell'applicazione dell'app LUIS sottoposta a training. |
{AUTHORING_KEY} | Chiave di creazione dell'account LUIS per l'app LUIS pubblicata. È possibile ottenere la chiave di creazione nella pagina User Settings (Impostazioni utente) nel portale di LUIS. |
{AZURE_REGION} | Area di Azure appropriata:westus - Stati Uniti occidentaliwesteurope - Europa occidentaleaustraliaeast - Australia orientale |
Per scaricare il pacchetto con versione, vedere la documentazione dell'API qui. Se è stato scaricato correttamente, la risposta è un file di pacchetto LUIS. Salvare il file nella posizione di archiviazione specificata per il punto di montaggio di input del contenitore.
Eseguire il contenitore con docker run
Usare il comando docker run per eseguire il contenitore. Per informazioni dettagliate su come ottenere i {ENDPOINT_URI}
valori e {API_KEY}
, vedere raccogliere i parametri obbligatori.
Sono disponibili esempi di docker run
comando.
docker run --rm -it -p 5000:5000 ^
--memory 4g ^
--cpus 2 ^
--mount type=bind,src=c:\input,target=/input ^
--mount type=bind,src=c:\output\,target=/output ^
mcr.microsoft.com/azure-cognitive-services/language/luis ^
Eula=accept ^
Billing={ENDPOINT_URI} ^
ApiKey={API_KEY}
- In questo esempio viene utilizzata la directory all'esterno dell'unità
C:
per evitare conflitti di autorizzazione in Windows. Se è necessario usare una directory specifica come directory di input, potrebbe essere necessario concedere l'autorizzazione per il servizio Docker. - Non modificare l'ordine degli argomenti se non si ha dimestichezza con i contenitori Docker.
- Se si usa un sistema operativo diverso, usare la console/terminale corretta, la sintassi della cartella per i montaggi e il carattere di continuazione della riga per il sistema. Questi esempi presuppongono una console di Windows con un carattere
^
di continuazione di riga. Poiché il contenitore è un sistema operativo Linux, il montaggio di destinazione usa una sintassi di cartella di tipo Linux.
Questo comando:
- Esegue un contenitore dall'immagine del contenitore LUIS
- Carica l'app LUIS dal montaggio di input in C:\input, che si trova nell'host contenitore
- Alloca due core CPU e 4 gigabyte (GB) di memoria
- Espone la porta TCP 5000 e alloca un pseudo terminale TTY per il contenitore
- Salva i log di contenitori e LUIS nel montaggio di output in C:\output, che si trova nell'host contenitore
- Rimuove automaticamente il contenitore dopo la chiusura. L'immagine del contenitore rimane disponibile nel computer host.
Sono disponibili altri esempi del comando docker run
.
Importante
È necessario specificare le opzioni Eula
, Billing
e ApiKey
per eseguire il contenitore. In caso contrario, il contenitore non si avvia. Per altre informazioni, vedereFatturazione.
Il valore ApiKey è la chiave della pagina Risorse di Azure nel portale LUIS ed è disponibile anche nella pagina Chiavi di risorsa di AzureAzure AI services
.
Eseguire più contenitori nello stesso host
Se si intende eseguire più contenitori con porte esposte, assicurarsi di eseguire ogni contenitore con una porta esposta diversa. Eseguire ad esempio il primo contenitore sulla porta 5000 e il secondo sulla porta 5001.
È possibile avere questo contenitore e un contenitore di servizi di intelligenza artificiale di Azure diverso in esecuzione nell'host insieme. È anche possibile avere più contenitori dello stesso contenitore di servizi di intelligenza artificiale di Azure in esecuzione.
API endpoint supportate dal contenitore
Entrambe le versioni V2 e V3 dell'API sono disponibili con il contenitore.
Eseguire una query sull'endpoint di stima del contenitore
Il contenitore fornisce le API dell'endpoint di stima della query basata su REST. Gli endpoint per le app pubblicate (di staging o di produzione) hanno una route diversa rispetto agli endpoint per le app con controllo delle versioni.
Usare l'host http://localhost:5000
per le API del contenitore.
Tipo di pacchetto | Verbo HTTP | Itinerario | Parametri di query |
---|---|---|---|
Pubblicazione completata | GET, POST | /luis/v3.0/apps/{appId}/slots/{slotName}/predict? /luis/prediction/v3.0/apps/{appId}/slots/{slotName}/predict? |
query={query} [ &verbose ][ &log ][ &show-all-intents ] |
Controllo delle versioni | GET, POST | /luis/v3.0/apps/{appId}/versions/{versionId}/predict? /luis/prediction/v3.0/apps/{appId}/versions/{versionId}/predict |
query={query} [ &verbose ][ &log ][ &show-all-intents ] |
I parametri di query specificano la modalità e i contenuti restituiti nella risposta della query:
Query parameter (Parametro di query) | Type | Scopo |
---|---|---|
query |
string | Espressione dell'utente. |
verbose |
boolean | Valore booleano che indica se restituire tutti i metadati per i modelli stimati. Il valore predefinito è false. |
log |
boolean | Registra le query, che successivamente possono essere usate per l'apprendimento attivo. Il valore predefinito è false. |
show-all-intents |
boolean | Valore booleano che indica se restituire tutte le finalità o solo la finalità di punteggio superiore. Il valore predefinito è false. |
Eseguire query sull'app LUIS
Ecco un esempio di comando CURL per eseguire query sul contenitore per un'app pubblicata:
Per eseguire query su un modello in uno slot, usare l'API seguente:
curl -G \
-d verbose=false \
-d log=true \
--data-urlencode "query=turn the lights on" \
"http://localhost:5000/luis/v3.0/apps/{APP_ID}/slots/production/predict"
Per eseguire query nell'ambiente di gestione temporanea , sostituire production
nella route con staging
:
http://localhost:5000/luis/v3.0/apps/{APP_ID}/slots/staging/predict
Per eseguire query su un modello con controllo delle versioni, usare l'API seguente:
curl -G \
-d verbose=false \
-d log=false \
--data-urlencode "query=turn the lights on" \
"http://localhost:5000/luis/v3.0/apps/{APP_ID}/versions/{APP_VERSION}/predict"
Importare i log dell'endpoint per l'apprendimento attivo
Se viene specificato un montaggio di output per il contenitore LUIS, i file di log delle query dell'app vengono salvati nella directory di output, dove {INSTANCE_ID}
è l'ID contenitore. Il log di query dell'app contiene la query, la risposta e i timestamp per ogni query di stima inviata al contenitore LUIS.
Il percorso seguente indica la struttura di directory nidificata per i file di log del contenitore.
/output/luis/{INSTANCE_ID}/
Dal portale di LUIS selezionare l'app, quindi selezionare Import endpoint logs (Importa log endpoint) per caricare i log.
Dopo il caricamento del log, esaminare le espressioni dell'endpoint nel portale di LUIS.
Verificare che il contenitore sia in esecuzione
Per verificare se il contenitore è in esecuzione, sono disponibili diverse opzioni. Individuare l'indirizzo IP esterno e la porta esposta del contenitore in questione e aprire il Web browser preferito. Usare i vari URL di richiesta che seguono per verificare che il contenitore sia in esecuzione. Gli URL di richiesta di esempio elencati di seguito sono http://localhost:5000
, ma il contenitore specifico può variare. Assicurarsi di basarsi sull'indirizzo IP esterno del contenitore e sulla porta esposta.
Richiesta URL | Scopo |
---|---|
http://localhost:5000/ |
Il contenitore fornisce un home page. |
http://localhost:5000/ready |
Richiesto con GET, questo URL fornisce una verifica che il contenitore sia pronto per accettare una query sul modello. Questa richiesta può essere usata per i probe di attività e di idoneità di Kubernetes. |
http://localhost:5000/status |
Richiesto anche con GET, questo URL verifica se la chiave API usata per avviare il contenitore è valida senza causare una query dell'endpoint. Questa richiesta può essere usata per i probe di attività e di idoneità di Kubernetes. |
http://localhost:5000/swagger |
Il contenitore fornisce un set completo di documentazione per gli endpoint e una funzionalità Prova. Con questa funzionalità, è possibile immettere le impostazioni in un modulo HTML basato sul Web ed eseguire la query senza scrivere codice. Dopo che la query restituisce il risultato, viene fornito un comando CURL di esempio per illustrare il formato richiesto per il corpo e le intestazioni HTTP. |
Eseguire il contenitore disconnesso da Internet
Per usare questo contenitore disconnesso da Internet, è prima necessario richiedere l'accesso compilando un'applicazione e acquistando un piano di impegno. Per altre informazioni, vedere Usare contenitori Docker in ambienti disconnessi.
Se è stato approvato per eseguire il contenitore disconnesso da Internet, usare l'esempio seguente che mostra la formattazione del docker run
comando che verrà usato con valori segnaposto. Sostituire questi valori segnaposto con i propri valori.
Il DownloadLicense=True
parametro nel docker run
comando scaricherà un file di licenza che consentirà l'esecuzione del contenitore Docker quando non è connesso a Internet. Contiene anche una data di scadenza, dopo la quale il file di licenza non sarà valido per eseguire il contenitore. È possibile usare un file di licenza solo con il contenitore appropriato per cui si è stati approvati. Ad esempio, non è possibile usare un file di licenza per un contenitore di riconoscimento vocale con un contenitore di Document Intelligence.
Segnaposto | Valore | Formato o esempio |
---|---|---|
{IMAGE} |
Immagine del contenitore da usare. | mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice |
{LICENSE_MOUNT} |
Percorso in cui verrà scaricata la licenza e montata. | /host/license:/path/to/license/directory |
{ENDPOINT_URI} |
Endpoint per l'autenticazione della richiesta di servizio. È possibile trovarla nella pagina Chiave ed endpoint della risorsa, nella portale di Azure. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{API_KEY} |
Chiave per la risorsa Analisi del testo. È possibile trovarla nella pagina Chiave ed endpoint della risorsa, nella portale di Azure. | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
{CONTAINER_LICENSE_DIRECTORY} |
Percorso della cartella di licenza nel file system locale del contenitore. | /path/to/license/directory |
docker run --rm -it -p 5000:5000 \
-v {LICENSE_MOUNT} \
{IMAGE} \
eula=accept \
billing={ENDPOINT_URI} \
apikey={API_KEY} \
DownloadLicense=True \
Mounts:License={CONTAINER_LICENSE_DIRECTORY}
Dopo aver scaricato il file di licenza, è possibile eseguire il contenitore in un ambiente disconnesso. Nell'esempio seguente viene illustrata la formattazione del docker run
comando che verrà usato con i valori segnaposto. Sostituire questi valori segnaposto con i propri valori.
Ovunque venga eseguito il contenitore, il file di licenza deve essere montato nel contenitore e il percorso della cartella di licenza nel file system locale del contenitore deve essere specificato con Mounts:License=
. È necessario specificare anche un montaggio di output in modo che sia possibile scrivere i record di utilizzo della fatturazione.
Segnaposto | Valore | Formato o esempio |
---|---|---|
{IMAGE} |
Immagine del contenitore da usare. | mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice |
{MEMORY_SIZE} |
Dimensioni appropriate della memoria da allocare per il contenitore. | 4g |
{NUMBER_CPUS} |
Numero appropriato di CPU da allocare per il contenitore. | 4 |
{LICENSE_MOUNT} |
Percorso in cui verrà posizionata e montata la licenza. | /host/license:/path/to/license/directory |
{OUTPUT_PATH} |
Percorso di output per la registrazione dei record di utilizzo. | /host/output:/path/to/output/directory |
{CONTAINER_LICENSE_DIRECTORY} |
Percorso della cartella di licenza nel file system locale del contenitore. | /path/to/license/directory |
{CONTAINER_OUTPUT_DIRECTORY} |
Percorso della cartella di output nel file system locale del contenitore. | /path/to/output/directory |
docker run --rm -it -p 5000:5000 --memory {MEMORY_SIZE} --cpus {NUMBER_CPUS} \
-v {LICENSE_MOUNT} \
-v {OUTPUT_PATH} \
{IMAGE} \
eula=accept \
Mounts:License={CONTAINER_LICENSE_DIRECTORY}
Mounts:Output={CONTAINER_OUTPUT_DIRECTORY}
Arrestare il contenitore
Per arrestare il contenitore, nell'ambiente della riga di comando in cui è in esecuzione il contenitore premere CTRL+C.
Risoluzione dei problemi
Se si esegue il contenitore con un punto di montaggio di output e la registrazione attivata, il contenitore genera file di log utili per risolvere i problemi che si verificano durante l'avvio o l'esecuzione del contenitore.
Suggerimento
Per altre informazioni sulla risoluzione dei problemi e indicazioni, vedere Domande frequenti sui contenitori di Intelligenza artificiale di Azure.
Se si verificano problemi durante l'esecuzione di un contenitore di servizi di intelligenza artificiale di Azure, è possibile provare a usare il contenitore di diagnostica Microsoft. Usare questo contenitore per diagnosticare gli errori comuni nell'ambiente di distribuzione che potrebbero impedire il funzionamento dei contenitori di Intelligenza artificiale di Azure come previsto.
Per ottenere il contenitore, usare il comando seguente docker pull
:
docker pull mcr.microsoft.com/azure-cognitive-services/diagnostic
Eseguire quindi il contenitore. Sostituire {ENDPOINT_URI}
con l'endpoint e sostituire {API_KEY}
con la chiave alla risorsa:
docker run --rm mcr.microsoft.com/azure-cognitive-services/diagnostic \
eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}
Il contenitore verificherà la connettività di rete all'endpoint di fatturazione.
Fatturazione
Il contenitore LUIS invia informazioni di fatturazione ad Azure usando una risorsa dei servizi di intelligenza artificiale di Azure nell'account Azure.
Le query al contenitore vengono fatturate al piano tariffario della risorsa di Azure usata per il ApiKey
parametro .
I contenitori dei servizi di intelligenza artificiale di Azure non sono concessi in licenza per l'esecuzione senza essere connessi all'endpoint di misurazione o fatturazione. È necessario consentire ai contenitori di comunicare sempre le informazioni di fatturazione all'endpoint di fatturazione. I contenitori dei servizi di intelligenza artificiale di Azure non inviano dati dei clienti, ad esempio l'immagine o il testo da analizzare, a Microsoft.
Connect to Azure
Per eseguire il contenitore, sono necessari i valori dell'argomento di fatturazione. Questi valori consentono al contenitore di connettersi all'endpoint di fatturazione. Il contenitore segnala l'utilizzo ogni 10-15 minuti. Se il contenitore non si connette ad Azure entro la finestra temporale consentita, continuerà a essere eseguito ma non fornirà query finché l'endpoint di fatturazione non verrà ripristinato. Il tentativo di connessione viene effettuato 10 volte nello stesso intervallo di tempo di 10-15 minuti. Se non riesce a connettersi all'endpoint di fatturazione entro i 10 tentativi, il contenitore smette di gestire le richieste. Per un esempio delle informazioni inviate a Microsoft per la fatturazione, vedere domande frequenti sul contenitore dei servizi di intelligenza artificiale di Azure.
Argomenti di fatturazione
Il docker run
comando avvierà il contenitore quando vengono fornite tutte e tre le opzioni seguenti con valori validi:
Opzione | Descrizione |
---|---|
ApiKey |
Chiave API della risorsa dei servizi di intelligenza artificiale di Azure usata per tenere traccia delle informazioni di fatturazione. Il valore di questa opzione deve essere impostato su una chiave API per la risorsa di cui è stato effettuato il provisioning specificata in Billing . |
Billing |
Endpoint della risorsa dei servizi di intelligenza artificiale di Azure usata per tenere traccia delle informazioni di fatturazione. Il valore di questa opzione deve essere impostato sull'URI dell'endpoint di una risorsa di Azure di cui è stato effettuato il provisioning. |
Eula |
Indica che è la licenza per il contenitore è stata accettata. Il valore di questa opzione deve essere impostato su accept. |
Per altre informazioni su queste opzioni, vedere Configurare i contenitori.
Riepilogo
In questo articolo sono stati descritti i concetti e il flusso di lavoro per scaricare, installare ed eseguire contenitori Language Understanding (LUIS). Riepilogo:
- LUIS (Language Understanding) offre un contenitore Linux per Docker per le stime di query degli endpoint per le espressioni.
- Le immagini dei contenitori vengono scaricate da Registro Container Microsoft.
- Le immagini dei contenitori vengono eseguite in Docker.
- È possibile usare l'API REST per eseguire query sugli endpoint dei contenitori specificando l'URI dell'host del contenitore.
- Quando si crea un'istanza di un contenitore, è necessario specificare le informazioni di fatturazione.
Importante
I contenitori di Intelligenza artificiale di Azure non vengono concessi in licenza per l'esecuzione senza essere connessi ad Azure per la misurazione. I clienti devono consentire ai contenitori di comunicare sempre le informazioni di fatturazione al servizio di misurazione. I contenitori di Intelligenza artificiale di Azure non inviano i dati dei clienti (ad esempio, l'immagine o il testo analizzato) a Microsoft.
Passaggi successivi
- Vedere Configurare i contenitori per informazioni sulle impostazioni di configurazione.
- Vedere Limitazioni dei contenitori LUIS per le restrizioni note delle funzionalità.
- Per risolvere i problemi correlati alle funzionalità di LUIS, vedere Risoluzione dei problemi.
- Usare altri contenitori di Intelligenza artificiale di Azure