Sdílet prostřednictvím


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
str

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
str

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

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
str

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
str

Uživatel, který vytvořil webovou službu.

error
str

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 key není zadána nebo není primární nebo sekundární.

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
str
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
str

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
str

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
str

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
str

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
(str, str)

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
int

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
str

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
str

Vyfiltrujte seznam pouze konkrétních typů webových služeb. Možnosti jsou ACI, AKS.

Default value: None
image_name
str

Vyfiltrujte seznam tak, aby zahrnoval jenom webové služby nasazené s konkrétním názvem image.

Default value: None
image_id
str

Vyfiltrujte seznam tak, aby zahrnoval jenom webové služby nasazené s konkrétním ID image.

Default value: None
model_name
str

Vyfiltrujte seznam tak, aby zahrnoval jenom webové služby nasazené s konkrétním názvem modelu.

Default value: None
model_id
str

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
str

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
str

Klíč, který se má znovu vygenerovat. Možnosti jsou "Primární" nebo "Sekundární".

set_key
str

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