Webservice Classe
Definisce le funzionalità di base per la distribuzione di modelli come endpoint di servizio Web in Azure Machine Learning.
Il costruttore del servizio Web viene usato per recuperare una rappresentazione cloud di un oggetto Webservice associato all'area di lavoro specificata. Restituisce un'istanza di una classe figlio corrispondente al tipo specifico dell'oggetto Webservice recuperato. La classe Webservice consente di distribuire modelli di Machine Learning da un Model oggetto o Image .
Per altre informazioni sull'uso del servizio Web, vedere Distribuire modelli con Azure Machine Learning.
Inizializzare l'istanza del servizio Web.
Il costruttore del servizio Web recupera una rappresentazione cloud di un oggetto Webservice associato all'area di lavoro specificata. Restituirà un'istanza di una classe figlio corrispondente al tipo specifico dell'oggetto Webservice recuperato.
- Ereditarietà
-
Webservice
Costruttore
Webservice(workspace, name)
Parametri
- workspace
- Workspace
Oggetto area di lavoro contenente l'oggetto Webservice da recuperare.
- workspace
- Workspace
Oggetto area di lavoro contenente l'oggetto Webservice da recuperare.
Commenti
Nell'esempio seguente viene illustrato il modello di distribuzione consigliato in cui si crea prima un oggetto di configurazione con il deploy_configuration
metodo della classe figlio del servizio Web (in questo caso AksWebservice) e quindi si usa la configurazione con il deploy
metodo della Model classe.
# Set the web service configuration (using default here)
aks_config = AksWebservice.deploy_configuration()
# # Enable token auth and disable (key) auth on the webservice
# aks_config = AksWebservice.deploy_configuration(token_auth_enabled=True, auth_enabled=False)
L'esempio completo è disponibile da https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb
L'esempio seguente illustra come trovare un esistente AciWebservice in un'area di lavoro ed eliminarlo se esiste in modo che il nome possa essere riutilizzato.
from azureml.core.model import InferenceConfig
from azureml.core.webservice import AciWebservice
service_name = 'my-custom-env-service'
inference_config = InferenceConfig(entry_script='score.py', environment=environment)
aci_config = AciWebservice.deploy_configuration(cpu_cores=1, memory_gb=1)
service = Model.deploy(workspace=ws,
name=service_name,
models=[model],
inference_config=inference_config,
deployment_config=aci_config,
overwrite=True)
service.wait_for_deployment(show_output=True)
Esistono diversi modi per distribuire un modello come servizio Web, tra cui:
deploy
metodo dei modelli già registrati nell'area di Model lavoro.deploy_from_image
metodo di Webservice per le immagini già create da un modello.deploy_from_model
metodo di per i modelli già registrati nell'area di Webservice lavoro. Questo metodo creerà un'immagine.deploy
metodo di Webservice, che registrerà un modello e creerà un'immagine.
Per informazioni sull'uso dei servizi Web, vedere
Utilizzare un modello di Azure Machine Learning distribuito come servizio Web
Monitorare e raccogliere dati da endpoint servizio Web di ML
La sezione Variabili elenca gli attributi di una rappresentazione locale dell'oggetto Webservice cloud. Queste variabili devono essere considerate di sola lettura. La modifica dei valori non verrà riflessa nell'oggetto cloud corrispondente.
Variabili
- auth_enabled
- bool
Indipendentemente dal fatto che il servizio Web sia abilitato.
- compute_type
- str
In quale tipo di calcolo viene distribuito il servizio Web.
- created_time
- datetime
Quando è stato creato il servizio Web.
- azureml.core.Webservice.description
Descrizione dell'oggetto Webservice.
- azureml.core.Webservice.tags
Dizionario dei tag per l'oggetto Webservice.
- azureml.core.Webservice.name
Nome del servizio Web.
- azureml.core.Webservice.properties
Dizionario delle proprietà del valore chiave per il servizio Web. Queste proprietà non possono essere modificate dopo la distribuzione, ma è possibile aggiungere nuove coppie di valori chiave.
- created_by
- str
Utente che ha creato il servizio Web.
- error
- str
Se il servizio Web non è riuscito a distribuire, questo conterrà il messaggio di errore per il motivo per cui non è riuscito.
- azureml.core.Webservice.state
Stato corrente del servizio Web.
- updated_time
- datetime
Ultima volta che il servizio Web è stato aggiornato.
- azureml.core.Webservice.workspace
Area di lavoro di Azure Machine Learning che contiene questo servizio Web.
- token_auth_enabled
- bool
Indipendentemente dal fatto che il servizio Web disponga dell'autenticazione del token abilitato.
Metodi
check_for_existing_webservice |
Controllare che esista un servizio Web. |
delete |
Eliminare questo servizio Web dall'area di lavoro associata. Questa chiamata di funzione non è asincrona. La chiamata viene eseguita finché la risorsa non viene eliminata. Viene generato un WebserviceException problema se si verifica un problema durante l'eliminazione del modello dal servizio gestione modelli. |
deploy |
Distribuire un servizio Web da zero o più Model oggetti. Questa funzione registra tutti i file di modelli forniti e crea un'immagine nel processo, tutti associati all'oggetto specificato Workspace. Usare questa funzione quando si dispone di una directory di modelli per distribuire che non sono stati registrati in precedenza. Il servizio Web risultante è un endpoint in tempo reale che può essere usato per le richieste di inferenza. Per altre informazioni, vedere Usare un modello distribuito come servizio Web. |
deploy_from_image |
Distribuire un servizio Web da un Image oggetto. Usare questa funzione se è già stato creato un oggetto Image per un modello. Il servizio Web risultante è un endpoint in tempo reale che può essere usato per le richieste di inferenza. Per altre informazioni, vedere Usare un modello distribuito come servizio Web. |
deploy_from_model |
Distribuire un servizio Web da zero o più Model oggetti. Questa funzione è simile a deploy, ma non registra i modelli. Usare questa funzione se sono già registrati oggetti modello. Verrà creata un'immagine nel processo, associata all'area di lavoro specificata. Il servizio Web risultante è un endpoint in tempo reale che può essere usato per le richieste di inferenza. Per altre informazioni, vedere Usare un modello distribuito come servizio Web. |
deploy_local_from_model |
Compilare e distribuire un LocalWebservice oggetto per i test. Richiede l'installazione e la configurazione di Docker. |
deserialize |
Convertire un oggetto JSON della risposta del servizio di gestione modelli in un oggetto Webservice. Avrà esito negativo se l'area di lavoro specificata non è l'area di lavoro in cui è registrato il servizio Web. |
get_keys |
Recuperare le chiavi di autenticazione per questo servizio Web. |
get_logs |
Recuperare i log per questo servizio Web. |
get_token |
Recuperare il token di autenticazione per questo servizio Web, con ambito all'utente corrente. |
list |
Elencare i servizi Web associati all'oggetto corrispondente Workspace. I risultati restituiti possono essere filtrati usando parametri. |
regen_key |
Rigenerare una delle chiavi del servizio Web, ovvero la chiave 'Primaria' o 'Secondaria'. Viene generato se WebserviceException |
run |
Chiamare questo servizio Web con l'input specificato. Metodo astratto implementato dalle classi figlio di Webservice. |
serialize |
Convertire questo oggetto Webservice in un dizionario serializzato JSON. Usare deserialize per convertire nuovamente in un oggetto Webservice. |
update |
Aggiornare i parametri del servizio Web. Si tratta di un metodo astratto implementato dalle classi figlio di Webservice. I parametri possibili da aggiornare variano in base al tipo figlio del servizio Web. Ad esempio, per Istanze di Azure Container servizi Web, vedere update per parametri specifici. |
update_deployment_state |
Aggiornare lo stato corrente dell'oggetto in memoria. Eseguire un aggiornamento sul posto delle proprietà dell'oggetto in base allo stato corrente dell'oggetto cloud corrispondente. Principalmente utile per il polling manuale dello stato di creazione. |
wait_for_deployment |
Eseguire automaticamente il polling nella distribuzione del servizio Web in esecuzione. Attendere che il servizio Web raggiunga uno stato del terminale. Genera un valore se raggiunge uno WebserviceException stato terminale non riuscito o supera il timeout specificato. |
check_for_existing_webservice
Controllare che esista un servizio Web.
static check_for_existing_webservice(workspace, name, overwrite=False, request_func=None, check_func=None)
Parametri
- workspace
- Workspace
- name
- str
- overwrite
- bool
- request_func
- <xref:function>
funzione per richiedere al servizio di controllare se esiste il nome del servizio
- check_func
- <xref:function>
funzione per controllare il contenuto della risposta di request_func
Eccezioni
delete
Eliminare questo servizio Web dall'area di lavoro associata.
Questa chiamata di funzione non è asincrona. La chiamata viene eseguita finché la risorsa non viene eliminata. Viene generato un WebserviceException problema se si verifica un problema durante l'eliminazione del modello dal servizio gestione modelli.
delete()
Eccezioni
deploy
Distribuire un servizio Web da zero o più Model oggetti.
Questa funzione registra tutti i file di modelli forniti e crea un'immagine nel processo, tutti associati all'oggetto specificato Workspace. Usare questa funzione quando si dispone di una directory di modelli per distribuire che non sono stati registrati in precedenza.
Il servizio Web risultante è un endpoint in tempo reale che può essere usato per le richieste di inferenza. Per altre informazioni, vedere Usare un modello distribuito come servizio Web.
static deploy(workspace, name, model_paths, image_config, deployment_config=None, deployment_target=None, overwrite=False)
Parametri
- name
- str
Nome da assegnare al servizio distribuito. Deve essere univoco per l'area di lavoro, costituito solo da lettere minuscole, numeri o trattini, iniziare con una lettera e essere compreso tra 3 e 32 caratteri lunghi.
Elenco dei percorsi su disco per modellare file o cartelle. Può essere un elenco vuoto.
- image_config
- ImageConfig
Oggetto ImageConfig usato per determinare le proprietà Image necessarie.
- deployment_config
- WebserviceDeploymentConfiguration
WebserviceDeploymentConfiguration usato per configurare il servizio Web. Se non viene specificato, verrà usato un oggetto di configurazione vuoto in base alla destinazione desiderata.
- deployment_target
- ComputeTarget
Oggetto ComputeTarget in cui distribuire il servizio Web. Poiché Istanze di Azure Container non è associatoComputeTarget, lasciare questo parametro come None per la distribuzione in Istanze di Azure Container.
- overwrite
- bool
Sovrascrivere il servizio esistente se il servizio con nome esiste già.
Restituisce
Oggetto Webservice corrispondente al servizio Web distribuito.
Tipo restituito
Eccezioni
deploy_from_image
Distribuire un servizio Web da un Image oggetto.
Usare questa funzione se è già stato creato un oggetto Image per un modello.
Il servizio Web risultante è un endpoint in tempo reale che può essere usato per le richieste di inferenza. Per altre informazioni, vedere Usare un modello distribuito come servizio Web.
static deploy_from_image(workspace, name, image, deployment_config=None, deployment_target=None, overwrite=False)
Parametri
- name
- str
Nome da assegnare al servizio distribuito. Deve essere univoco per l'area di lavoro, costituito solo da lettere minuscole, numeri o trattini, iniziare con una lettera e essere compreso tra 3 e 32 caratteri lunghi.
- deployment_config
- WebserviceDeploymentConfiguration
WebserviceDeploymentConfiguration usato per configurare il servizio Web. Se non viene specificato, verrà usato un oggetto di configurazione vuoto in base alla destinazione desiderata.
- deployment_target
- ComputeTarget
Oggetto ComputeTarget in cui distribuire il servizio Web. Poiché Istanze di Azure Container non è associatoComputeTarget, lasciare questo parametro come None per la distribuzione in Istanze di Azure Container.
- overwrite
- bool
Sovrascrivere il servizio esistente se il servizio con nome esiste già.
Restituisce
Oggetto Webservice corrispondente al servizio Web distribuito.
Tipo restituito
Eccezioni
deploy_from_model
Distribuire un servizio Web da zero o più Model oggetti.
Questa funzione è simile a deploy, ma non registra i modelli. Usare questa funzione se sono già registrati oggetti modello. Verrà creata un'immagine nel processo, associata all'area di lavoro specificata.
Il servizio Web risultante è un endpoint in tempo reale che può essere usato per le richieste di inferenza. Per altre informazioni, vedere Usare un modello distribuito come servizio Web.
static deploy_from_model(workspace, name, models, image_config, deployment_config=None, deployment_target=None, overwrite=False)
Parametri
- name
- str
Nome da assegnare al servizio distribuito. Deve essere univoco per l'area di lavoro, costituito solo da lettere minuscole, numeri o trattini, iniziare con una lettera e essere compreso tra 3 e 32 caratteri lunghi.
- image_config
- ImageConfig
Oggetto ImageConfig usato per determinare le proprietà Image necessarie.
- deployment_config
- WebserviceDeploymentConfiguration
WebserviceDeploymentConfiguration usato per configurare il servizio Web. Se non viene specificato, verrà usato un oggetto di configurazione vuoto in base alla destinazione desiderata.
- deployment_target
- ComputeTarget
Oggetto ComputeTarget in cui distribuire il servizio Web. Poiché ACI non ha associato ComputeTarget, lasciare questo parametro come None per la distribuzione in ACI.
- overwrite
- bool
Sovrascrivere il servizio esistente se il servizio con nome esiste già.
Restituisce
Oggetto Webservice corrispondente al servizio Web distribuito.
Tipo restituito
Eccezioni
deploy_local_from_model
Compilare e distribuire un LocalWebservice oggetto per i test.
Richiede l'installazione e la configurazione di Docker.
static deploy_local_from_model(workspace, name, models, image_config, deployment_config=None, wait=False)
Parametri
- name
- str
Nome da assegnare al servizio distribuito. Deve essere univoco nel computer locale.
- image_config
- ImageConfig
Oggetto ImageConfig usato per determinare le proprietà dell'immagine del servizio necessarie.
- deployment_config
- LocalWebserviceDeploymentConfiguration
LocalWebserviceDeploymentConfiguration usato per configurare il servizio Web. Se non viene specificato, verrà usato un oggetto di configurazione vuoto.
- wait
- bool
Se attendere che il contenitore Docker di LocalWebservice venga visualizzato come integro. Genera un'eccezione se il contenitore si arresta in modo anomalo. Il valore predefinito è False.
Tipo restituito
Eccezioni
deserialize
Convertire un oggetto JSON della risposta del servizio di gestione modelli in un oggetto Webservice.
Avrà esito negativo se l'area di lavoro specificata non è l'area di lavoro in cui è registrato il servizio Web.
deserialize(workspace, webservice_payload)
Parametri
- cls
Indica che si tratta di un metodo di classe.
Restituisce
Rappresentazione del servizio Web dell'oggetto JSON specificato.
Tipo restituito
Eccezioni
get_keys
Recuperare le chiavi di autenticazione per questo servizio Web.
get_keys()
Restituisce
Chiavi di autenticazione per questo servizio Web.
Tipo restituito
Eccezioni
get_logs
Recuperare i log per questo servizio Web.
get_logs(num_lines=5000, init=False)
Parametri
Restituisce
Log per questo servizio Web.
Tipo restituito
Eccezioni
get_token
Recuperare il token di autenticazione per questo servizio Web, con ambito all'utente corrente.
get_token()
Restituisce
Token di autenticazione per questo servizio Web e quando deve essere aggiornato dopo.
Tipo restituito
Eccezioni
list
Elencare i servizi Web associati all'oggetto corrispondente Workspace.
I risultati restituiti possono essere filtrati usando parametri.
static list(workspace, compute_type=None, image_name=None, image_id=None, model_name=None, model_id=None, tags=None, properties=None, image_digest=None)
Parametri
- compute_type
- str
Filtrare per elencare solo tipi di servizio Web specifici. Le opzioni sono 'ACI', 'AKS'.
- image_name
- str
Elenco di filtri per includere solo i servizi Web distribuiti con il nome di immagine specifico.
- image_id
- str
Elenco di filtri per includere solo i servizi Web distribuiti con l'ID immagine specifico.
- model_name
- str
Elenco di filtri per includere solo i servizi Web distribuiti con il nome del modello specifico.
- model_id
- str
Elenco di filtri per includere solo i servizi Web distribuiti con l'ID modello specifico.
- tags
- list
Filtrare in base all'elenco specificato, in base a 'key' o '[key, value]'. Ex. ['key', ['key2', 'key2 value']]
- properties
- list
Filtrare in base all'elenco specificato, in base a 'key' o '[key, value]'. Ex. ['key', ['key2', 'key2 value']]
- image_digest
- str
Elenco di filtri per includere solo i servizi Web distribuiti con il digest di immagini specifico.
Restituisce
Elenco filtrato di servizi Web nell'area di lavoro specificata.
Tipo restituito
Eccezioni
regen_key
Rigenerare una delle chiavi del servizio Web, ovvero la chiave 'Primaria' o 'Secondaria'.
Viene generato se WebserviceExceptionkey
non è specificato o non è 'Primario' o 'Secondario'.
regen_key(key, set_key=None)
Parametri
- set_key
- str
Valore specificato dall'utente che consente la specifica manuale del valore della chiave
Eccezioni
run
Chiamare questo servizio Web con l'input specificato.
Metodo astratto implementato dalle classi figlio di Webservice.
abstract run(input)
Parametri
- input
- <xref:varies>
Dati di input con cui chiamare il servizio Web. Si tratta dei dati previsti dal modello di Machine Learning come input per eseguire stime.
Restituisce
Risultato della chiamata al servizio Web. Verrà restituita la stima eseguita dal modello di Machine Learning.
Tipo restituito
Eccezioni
serialize
Convertire questo oggetto Webservice in un dizionario serializzato JSON.
Usare deserialize per convertire nuovamente in un oggetto Webservice.
serialize()
Restituisce
Rappresentazione JSON di questo servizio Web.
Tipo restituito
Eccezioni
update
Aggiornare i parametri del servizio Web.
Si tratta di un metodo astratto implementato dalle classi figlio di Webservice. I parametri possibili da aggiornare variano in base al tipo figlio del servizio Web. Ad esempio, per Istanze di Azure Container servizi Web, vedere update per parametri specifici.
abstract update(*args)
Parametri
- args
- <xref:varies>
Valori da aggiornare.
Eccezioni
update_deployment_state
Aggiornare lo stato corrente dell'oggetto in memoria.
Eseguire un aggiornamento sul posto delle proprietà dell'oggetto in base allo stato corrente dell'oggetto cloud corrispondente. Principalmente utile per il polling manuale dello stato di creazione.
update_deployment_state()
Eccezioni
wait_for_deployment
Eseguire automaticamente il polling nella distribuzione del servizio Web in esecuzione.
Attendere che il servizio Web raggiunga uno stato del terminale. Genera un valore se raggiunge uno WebserviceException stato terminale non riuscito o supera il timeout specificato.
wait_for_deployment(show_output=False, timeout_sec=None)
Parametri
- timeout_sec
- float
Generare un'eccezione se la distribuzione supera il timeout specificato.
Eccezioni
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per