Webservice Třída
Definuje základní funkce pro nasazování modelů jako koncových bodů webové služby ve službě Azure Machine Learning.
Konstruktor webové služby se používá k načtení cloudové reprezentace objektu webové služby přidruženého k poskytnutému pracovnímu prostoru. Vrátí instanci podřízené třídy odpovídající konkrétnímu typu načteného objektu Webservice. Třída Webservice umožňuje nasadit modely strojového učení z objektu Model nebo Image .
Další informace o práci s webovou službou najdete v tématu Nasazení modelů pomocí služby Azure Machine Learning.
Inicializuje instanci webové služby.
Konstruktor webové služby načte cloudovou reprezentaci objektu webové služby přidruženého k poskytnutému pracovnímu prostoru. Vrátí instanci podřízené třídy odpovídající konkrétnímu typu načteného objektu Webové služby.
- Dědičnost
-
Webservice
Konstruktor
Webservice(workspace, name)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
Objekt pracovního prostoru obsahující objekt Webservice, který se má načíst. |
name
Vyžadováno
|
Název objektu Webservice, který se má načíst. |
workspace
Vyžadováno
|
Objekt pracovního prostoru obsahující objekt Webservice, který se má načíst. |
name
Vyžadováno
|
Název objektu Webservice, který se má načíst. |
Poznámky
Následující ukázka ukazuje doporučený vzor nasazení, kdy nejprve vytvoříte objekt konfigurace pomocí deploy_configuration
metody podřízené třídy Webservice (v tomto případě AksWebservice) a pak použijete konfiguraci s deploy
metodou Model třídy.
# 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)
Úplná ukázka je k dispozici od https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb
Následující ukázka ukazuje, jak najít existující AciWebservice v pracovním prostoru a odstranit ho, pokud existuje, aby bylo možné název znovu použít.
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)
Existuje několik způsobů, jak nasadit model jako webovou službu, včetně:
deploy
Model metoda pro modely již zaregistrované v pracovním prostoru.deploy_from_image
Webservice pro obrázky již vytvořené z modelu.deploy_from_model
Webservice pro modely již zaregistrované v pracovním prostoru. Tato metoda vytvoří image.deploy
Webservicemetoda , která zaregistruje model a vytvoří image.
Informace o práci s webovými službami najdete v tématu
Využívání modelu služby Azure Machine Learning nasazeného jako webová služba
Monitorování a shromažďování dat z koncových bodů webové služby ML
V části Variables (Proměnné) jsou uvedeny atributy místní reprezentace objektu webové služby cloudu. Tyto proměnné by měly být považovány za jen pro čtení. Změna jejich hodnot se neprojeví v odpovídajícím cloudovém objektu.
Proměnné
Name | Description |
---|---|
auth_enabled
|
Určuje, jestli má webová služba povolené ověřování. |
compute_type
|
Do jakého typu výpočetních prostředků je webová služba nasazená. |
created_time
|
Při vytvoření webové služby |
azureml.core.Webservice.description
|
Popis objektu webové služby. |
azureml.core.Webservice.tags
|
Slovník značek pro objekt Webové služby. |
azureml.core.Webservice.name
|
Název webové služby. |
azureml.core.Webservice.properties
|
Slovník vlastností hodnoty klíče pro webovou službu. Tyto vlastnosti nelze po nasazení změnit, je však možné přidat nové páry hodnot klíčů. |
created_by
|
Uživatel, který vytvořil webovou službu. |
error
|
Pokud se nasazení webové služby nezdařilo, bude obsahovat chybovou zprávu s informacemi o tom, proč selhala. |
azureml.core.Webservice.state
|
Aktuální stav webové služby. |
updated_time
|
Čas poslední aktualizace webové služby |
azureml.core.Webservice.workspace
|
Pracovní prostor služby Azure Machine Learning, který obsahuje tuto webovou službu. |
token_auth_enabled
|
Určuje, jestli má webová služba povolené ověřování tokenů. |
Metody
check_for_existing_webservice |
Zkontrolujte, že webová služba existuje. |
delete |
Odstraňte tuto webovou službu z jejího přidruženého pracovního prostoru. Toto volání funkce není asynchronní. Volání se spustí až do odstranění prostředku. Vyvolá WebserviceException se, pokud dojde k potížím s odstraněním modelu ze služby správa modelů. |
deploy |
Nasaďte webovou službu z nuly nebo více Model objektů. Tato funkce zaregistruje všechny soubory modelů, které jsou k dispozici, a v procesu vytvoří image, která je přidružená k zadanému Workspaceobjektu . Tuto funkci použijte, pokud máte adresář modelů k nasazení, které ještě nebyly zaregistrované. Výsledná webová služba je koncový bod v reálném čase, který lze použít pro žádosti o odvozování. Další informace najdete v tématu Využití modelu nasazeného jako webová služba. |
deploy_from_image |
Nasazení webové služby z objektu Image Tuto funkci použijte, pokud už máte objekt Image vytvořený pro model. Výsledná webová služba je koncový bod v reálném čase, který lze použít pro žádosti o odvozování. Další informace najdete v tématu Využití modelu nasazeného jako webová služba. |
deploy_from_model |
Nasaďte webovou službu z nuly nebo více Model objektů. Tato funkce je podobná deployfunkci , ale neregistruje modely. Tuto funkci použijte, pokud máte objekty modelu, které jsou už zaregistrované. Tím se v procesu vytvoří image přidružená k zadanému pracovnímu prostoru. Výsledná webová služba je koncový bod v reálném čase, který lze použít pro žádosti o odvozování. Další informace najdete v tématu Využití modelu nasazeného jako webová služba. |
deploy_local_from_model |
Sestavte a nasaďte pro LocalWebservice účely testování. Vyžaduje instalaci a konfiguraci Dockeru. |
deserialize |
Převeďte objekt JSON odpovědi služby Správa modelů na objekt Webservice. Chyba selže, pokud zadaný pracovní prostor není pracovním prostorem, ve které je webová služba zaregistrovaná. |
get_keys |
Načtěte ověřovací klíče pro tuto webovou službu. |
get_logs |
Načtěte protokoly pro tuto webovou službu. |
get_token |
Načtěte ověřovací token pro tuto webovou službu s oborem pro aktuálního uživatele. |
list |
Seznam webových služeb přidružených k odpovídající Workspaceslužbě Vrácené výsledky lze filtrovat pomocí parametrů. |
regen_key |
Znovu vygenerujte jeden z klíčů webové služby, primární nebo sekundární klíč. Hodnota A WebserviceException se vyvolá, pokud |
run |
Zavolejte tuto webovou službu se zadaným vstupem. Abstraktní metoda implementovaná podřízenými třídami .Webservice |
serialize |
Převeďte tento objekt webové služby na serializovaný slovník JSON. Slouží deserialize k převodu zpět na objekt webové služby. |
update |
Aktualizujte parametry webové služby. Toto je abstraktní metoda implementovaná podřízenými třídami .Webservice Možné parametry pro aktualizaci se liší v závislosti na typu podřízené služby WebService. Pokud například Azure Container Instances webové služby, podívejte se update na konkrétní parametry. |
update_deployment_state |
Aktualizujte aktuální stav objektu v paměti. Proveďte místní aktualizaci vlastností objektu na základě aktuálního stavu odpovídajícího cloudového objektu. Primárně užitečné pro ruční dotazování stavu vytvoření. |
wait_for_deployment |
Automaticky se dotazovat na spuštěné nasazení webové služby. Počkejte, až webová služba dosáhne stavu terminálu. Vyvolá chybu, WebserviceException pokud dosáhne stavu terminálu, který není úspěšný nebo překročí zadaný časový limit. |
check_for_existing_webservice
Zkontrolujte, že webová služba existuje.
static check_for_existing_webservice(workspace, name, overwrite=False, request_func=None, check_func=None)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
|
name
Vyžadováno
|
|
overwrite
|
Default value: False
|
request_func
|
<xref:function>
function to request service to check if service name exists Default value: None
|
check_func
|
<xref:function>
funkce pro kontrolu obsahu odpovědi request_func Default value: None
|
Výjimky
Typ | Description |
---|---|
delete
Odstraňte tuto webovou službu z jejího přidruženého pracovního prostoru.
Toto volání funkce není asynchronní. Volání se spustí až do odstranění prostředku. Vyvolá WebserviceException se, pokud dojde k potížím s odstraněním modelu ze služby správa modelů.
delete()
Výjimky
Typ | Description |
---|---|
deploy
Nasaďte webovou službu z nuly nebo více Model objektů.
Tato funkce zaregistruje všechny soubory modelů, které jsou k dispozici, a v procesu vytvoří image, která je přidružená k zadanému Workspaceobjektu . Tuto funkci použijte, pokud máte adresář modelů k nasazení, které ještě nebyly zaregistrované.
Výsledná webová služba je koncový bod v reálném čase, který lze použít pro žádosti o odvozování. Další informace najdete v tématu Využití modelu nasazeného jako webová služba.
static deploy(workspace, name, model_paths, image_config, deployment_config=None, deployment_target=None, overwrite=False)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
A Workspace objektu, který chcete přidružit webovou službu. |
name
Vyžadováno
|
Název, který má dát nasazené službě. Musí být jedinečné pro pracovní prostor, musí se skládat pouze z malých písmen, číslic nebo pomlček, musí začínat písmenem a musí mít délku 3 až 32 znaků. |
model_paths
Vyžadováno
|
Seznam cest k souborům nebo složkám modelu na disku. Může být prázdný seznam. |
image_config
Vyžadováno
|
Objekt ImageConfig sloužící k určení požadovaných vlastností image. |
deployment_config
|
A WebserviceDeploymentConfiguration slouží ke konfiguraci webové služby. Pokud ho nezadáte, použije se prázdný objekt konfigurace na základě požadovaného cíle. Default value: None
|
deployment_target
|
A ComputeTarget , do které nasadíte webovou službu. Vzhledem k tomu, že Azure Container Instances nemá žádný přidružený ComputeTargetparametr , ponechte tento parametr pro nasazení do Azure Container Instances jako Žádný. Default value: None
|
overwrite
|
Přepište existující službu, pokud už služba s názvem existuje. Default value: False
|
Návraty
Typ | Description |
---|---|
Objekt Webservice odpovídající nasazené webové službě. |
Výjimky
Typ | Description |
---|---|
deploy_from_image
Nasazení webové služby z objektu Image
Tuto funkci použijte, pokud už máte objekt Image vytvořený pro model.
Výsledná webová služba je koncový bod v reálném čase, který lze použít pro žádosti o odvozování. Další informace najdete v tématu Využití modelu nasazeného jako webová služba.
static deploy_from_image(workspace, name, image, deployment_config=None, deployment_target=None, overwrite=False)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
A Workspace objektu, který chcete přidružit webovou službu. |
name
Vyžadováno
|
Název, který má dát nasazené službě. Musí být jedinečné pro pracovní prostor, musí se skládat pouze z malých písmen, číslic nebo pomlček, musí začínat písmenem a musí mít délku 3 až 32 znaků. |
image
Vyžadováno
|
Objekt Image , který se má nasadit. |
deployment_config
|
A WebserviceDeploymentConfiguration slouží ke konfiguraci webové služby. Pokud ho nezadáte, použije se prázdný objekt konfigurace na základě požadovaného cíle. Default value: None
|
deployment_target
|
A ComputeTarget , do které nasadíte webovou službu. Vzhledem k tomu, že Azure Container Instances nemá žádný přidružený ComputeTargetparametr , ponechte tento parametr pro nasazení do Azure Container Instances jako Žádný. Default value: None
|
overwrite
|
Přepište existující službu, pokud už služba s názvem existuje. Default value: False
|
Návraty
Typ | Description |
---|---|
Objekt Webservice odpovídající nasazené webové službě. |
Výjimky
Typ | Description |
---|---|
deploy_from_model
Nasaďte webovou službu z nuly nebo více Model objektů.
Tato funkce je podobná deployfunkci , ale neregistruje modely. Tuto funkci použijte, pokud máte objekty modelu, které jsou už zaregistrované. Tím se v procesu vytvoří image přidružená k zadanému pracovnímu prostoru.
Výsledná webová služba je koncový bod v reálném čase, který lze použít pro žádosti o odvozování. Další informace najdete v tématu Využití modelu nasazeného jako webová služba.
static deploy_from_model(workspace, name, models, image_config, deployment_config=None, deployment_target=None, overwrite=False)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
A Workspace objektu, který chcete přidružit webovou službu. |
name
Vyžadováno
|
Název, který má dát nasazené službě. Musí být jedinečné pro pracovní prostor, musí se skládat pouze z malých písmen, číslic nebo pomlček, musí začínat písmenem a musí mít délku 3 až 32 znaků. |
models
Vyžadováno
|
Seznam objektů modelu. Může být prázdný seznam. |
image_config
Vyžadováno
|
Objekt ImageConfig sloužící k určení požadovaných vlastností image. |
deployment_config
|
A WebserviceDeploymentConfiguration slouží ke konfiguraci webové služby. Pokud ho nezadáte, použije se prázdný objekt konfigurace na základě požadovaného cíle. Default value: None
|
deployment_target
|
A ComputeTarget , do které nasadíte webovou službu. Vzhledem k tomu, že ACI nemá žádný přidružený ComputeTargetparametr , ponechte tento parametr pro nasazení do ACI na hodnotě None. Default value: None
|
overwrite
|
Přepište existující službu, pokud už služba s názvem existuje. Default value: False
|
Návraty
Typ | Description |
---|---|
Objekt Webservice odpovídající nasazené webové službě. |
Výjimky
Typ | Description |
---|---|
deploy_local_from_model
Sestavte a nasaďte pro LocalWebservice účely testování.
Vyžaduje instalaci a konfiguraci Dockeru.
static deploy_local_from_model(workspace, name, models, image_config, deployment_config=None, wait=False)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
A Workspace objekt, ke kterému chcete přidružit webovou službu. |
name
Vyžadováno
|
Název, který má dát nasazené službě. Musí být na místním počítači jedinečný. |
models
Vyžadováno
|
Seznam objektů modelu. Může být prázdný seznam. |
image_config
Vyžadováno
|
Objekt ImageConfig sloužící k určení požadovaných vlastností image služby. |
deployment_config
|
A LocalWebserviceDeploymentConfiguration slouží ke konfiguraci webové služby. Pokud ho nezadáte, použije se prázdný objekt konfigurace. Default value: None
|
wait
|
Jestli se má čekat, až se kontejner Dockeru LocalWebservice zobrazí jako v pořádku. Pokud dojde k chybě kontejneru, vyvolá výjimku. Výchozí hodnota je Nepravda. Default value: False
|
Návraty
Typ | Description |
---|---|
Výjimky
Typ | Description |
---|---|
deserialize
Převeďte objekt JSON odpovědi služby Správa modelů na objekt Webservice.
Chyba selže, pokud zadaný pracovní prostor není pracovním prostorem, ve které je webová služba zaregistrovaná.
deserialize(workspace, webservice_payload)
Parametry
Name | Description |
---|---|
cls
Vyžadováno
|
Označuje, že se jedná o metodu třídy. |
workspace
Vyžadováno
|
Objekt pracovního prostoru, pod kterým je webová služba zaregistrovaná. |
webservice_payload
Vyžadováno
|
Objekt JSON, který se má převést na objekt Webservice. |
Návraty
Typ | Description |
---|---|
Reprezentace webové služby poskytnutého objektu JSON. |
Výjimky
Typ | Description |
---|---|
get_keys
Načtěte ověřovací klíče pro tuto webovou službu.
get_keys()
Návraty
Typ | Description |
---|---|
Ověřovací klíče pro tuto webovou službu. |
Výjimky
Typ | Description |
---|---|
get_logs
Načtěte protokoly pro tuto webovou službu.
get_logs(num_lines=5000, init=False)
Parametry
Name | Description |
---|---|
num_lines
|
Maximální počet řádků protokolu, které se mají načíst. Default value: 5000
|
init
|
Získání protokolů kontejneru init Default value: False
|
Návraty
Typ | Description |
---|---|
Protokoly pro tuto webovou službu. |
Výjimky
Typ | Description |
---|---|
get_token
Načtěte ověřovací token pro tuto webovou službu s oborem pro aktuálního uživatele.
get_token()
Návraty
Typ | Description |
---|---|
Ověřovací token pro tuto webovou službu a informace o tom, kdy se má aktualizovat. |
Výjimky
Typ | Description |
---|---|
list
Seznam webových služeb přidružených k odpovídající Workspaceslužbě
Vrácené výsledky lze filtrovat pomocí parametrů.
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)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
Objekt Workspace pro výpis webových služeb v. |
compute_type
|
Vyfiltrujte seznam pouze konkrétních typů webových služeb. Možnosti jsou ACI, AKS. Default value: None
|
image_name
|
Vyfiltrujte seznam tak, aby zahrnoval jenom webové služby nasazené s konkrétním názvem image. Default value: None
|
image_id
|
Vyfiltrujte seznam tak, aby zahrnoval jenom webové služby nasazené s konkrétním ID image. Default value: None
|
model_name
|
Vyfiltrujte seznam tak, aby zahrnoval jenom webové služby nasazené s konkrétním názvem modelu. Default value: None
|
model_id
|
Vyfiltrujte seznam tak, aby zahrnoval jenom webové služby nasazené s konkrétním ID modelu. Default value: None
|
tags
|
Vyfiltrujte podle zadaného seznamu buď klíč, nebo [klíč, hodnota]. Například ['klíč', ['klíč2', 'hodnota klíče2']] Default value: None
|
properties
|
Vyfiltrujte podle zadaného seznamu buď klíč, nebo [klíč, hodnota]. Například ['klíč', ['klíč2', 'hodnota klíče2']] Default value: None
|
image_digest
|
Vyfiltrujte seznam tak, aby zahrnoval pouze webové služby nasazené s konkrétní hodnotou hash obrázku. Default value: None
|
Návraty
Typ | Description |
---|---|
Filtrovaný seznam webových služeb v zadaném pracovním prostoru. |
Výjimky
Typ | Description |
---|---|
regen_key
Znovu vygenerujte jeden z klíčů webové služby, primární nebo sekundární klíč.
Hodnota A WebserviceException se vyvolá, pokud key
není zadána nebo není primární nebo sekundární.
regen_key(key, set_key=None)
Parametry
Name | Description |
---|---|
key
Vyžadováno
|
Klíč, který se má znovu vygenerovat. Možnosti jsou "Primární" nebo "Sekundární". |
set_key
|
Uživatel zadal hodnotu umožňující ruční specifikaci hodnoty klíče. Default value: None
|
Výjimky
Typ | Description |
---|---|
run
Zavolejte tuto webovou službu se zadaným vstupem.
Abstraktní metoda implementovaná podřízenými třídami .Webservice
abstract run(input)
Parametry
Name | Description |
---|---|
input
Vyžadováno
|
<xref:varies>
Vstupní data, která se mají volat webovou službu. Jedná se o data, která váš model strojového učení očekává jako vstup pro spouštění předpovědí. |
Návraty
Typ | Description |
---|---|
Výsledek volání webové služby. Tím se vrátí předpovědi spuštěné z modelu strojového učení. |
Výjimky
Typ | Description |
---|---|
serialize
Převeďte tento objekt webové služby na serializovaný slovník JSON.
Slouží deserialize k převodu zpět na objekt webové služby.
serialize()
Návraty
Typ | Description |
---|---|
Reprezentace této webové služby ve formátu JSON. |
Výjimky
Typ | Description |
---|---|
update
Aktualizujte parametry webové služby.
Toto je abstraktní metoda implementovaná podřízenými třídami .Webservice Možné parametry pro aktualizaci se liší v závislosti na typu podřízené služby WebService. Pokud například Azure Container Instances webové služby, podívejte se update na konkrétní parametry.
abstract update(*args)
Parametry
Name | Description |
---|---|
args
Vyžadováno
|
<xref:varies>
Hodnoty, které se mají aktualizovat. |
Výjimky
Typ | Description |
---|---|
update_deployment_state
Aktualizujte aktuální stav objektu v paměti.
Proveďte místní aktualizaci vlastností objektu na základě aktuálního stavu odpovídajícího cloudového objektu. Primárně užitečné pro ruční dotazování stavu vytvoření.
update_deployment_state()
Výjimky
Typ | Description |
---|---|
wait_for_deployment
Automaticky se dotazovat na spuštěné nasazení webové služby.
Počkejte, až webová služba dosáhne stavu terminálu. Vyvolá chybu, WebserviceException pokud dosáhne stavu terminálu, který není úspěšný nebo překročí zadaný časový limit.
wait_for_deployment(show_output=False, timeout_sec=None)
Parametry
Name | Description |
---|---|
show_output
|
Určuje, jestli se má vytisknout podrobnější výstup. Default value: False
|
timeout_sec
|
Pokud nasazení překročí daný časový limit, vytvořte výjimku. Default value: None
|
Výjimky
Typ | Description |
---|---|