Delen via


AksWebservice Klas

Vertegenwoordigt een machine learning-model dat is geïmplementeerd als een webservice-eindpunt op Azure Kubernetes Service.

Een geïmplementeerde service wordt gemaakt op basis van een model, script en bijbehorende bestanden. De resulterende webservice is een HTTP-eindpunt met gelijke taakverdeling met een REST API. U kunt gegevens naar deze API verzenden en de voorspelling ontvangen die door het model wordt geretourneerd.

AksWebservice implementeert één service op één eindpunt. Als u meerdere services op één eindpunt wilt implementeren, gebruikt u de AksEndpoint klasse .

Zie Een model implementeren in een Azure Kubernetes Service cluster voor meer informatie.

Initialiseer het webservice-exemplaar.

De webserviceconstructor haalt een cloudweergave op van een webserviceobject dat is gekoppeld aan de opgegeven werkruimte. Er wordt een exemplaar van een onderliggende klasse geretourneerd die overeenkomt met het specifieke type van het opgehaalde webserviceobject.

Overname
AksWebservice

Constructor

AksWebservice(workspace, name)

Parameters

Name Description
workspace
Vereist

Het werkruimteobject met het webserviceobject dat moet worden opgehaald.

name
Vereist
str

De naam van het webserviceobject dat moet worden opgehaald.

Opmerkingen

Het aanbevolen implementatiepatroon is om een implementatieconfiguratieobject te maken met de deploy_configuration methode en dit vervolgens te gebruiken met de deploy methode van de Model klasse, zoals hieronder wordt weergegeven.


   # 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)

Volledig voorbeeld is beschikbaar via https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb

Er zijn een aantal manieren om een model als webservice te implementeren, waaronder met de:

  • deploy van de Model for-modellen die al zijn geregistreerd in de werkruimte.

  • deploy_from_image methode van Webservice.

  • deploy_from_model methode van Webservice voor modellen die al zijn geregistreerd in de werkruimte. Met deze methode wordt een installatiekopieën gemaakt.

  • deploy van de Webservice, waarmee een model wordt geregistreerd en een installatiekopieën worden gemaakt.

Zie voor meer informatie over het werken met webservices

De sectie Variabelen bevat kenmerken van een lokale weergave van het cloud-AksWebservice-object. Deze variabelen moeten worden beschouwd als alleen-lezen. Het wijzigen van de waarden wordt niet weergegeven in het bijbehorende cloudobject.

Variabelen

Name Description
enable_app_insights

Of AppInsights-logboekregistratie is ingeschakeld voor de webservice.

autoscaler

Het object Autoscaler voor de webservice.

compute_name
str

De naam van de ComputeTarget waarop de webservice is geïmplementeerd.

container_resource_requirements

De resourcevereisten voor de container voor de webservice.

liveness_probe_requirements

De vereisten voor de statustest voor de webservice.

data_collection

Het DataCollection-object voor de webservice.

max_concurrent_requests_per_container
int

Het maximum aantal gelijktijdige aanvragen per container voor de webservice.

max_request_wait_time
int

De maximale wachttijd voor aanvragen voor de webservice, in milliseconden.

num_replicas
int

Het aantal replica's voor de webservice. Elke replica komt overeen met een AKS-pod.

scoring_timeout_ms
int

De time-out voor scores voor de webservice, in milliseconden.

azureml.core.webservice.AksWebservice.scoring_uri
str

Het score-eindpunt voor de webservice

is_default

Als de webservice de standaardversie is voor het bovenliggende AksEndpoint.

traffic_percentile
int

Welk percentage verkeer moet worden gerouteerd naar de webservice in het bovenliggende AksEndpoint.

version_type

Het versietype voor de webservice in het bovenliggende AksEndpoint.

token_auth_enabled

Of tokenverificatie is ingeschakeld voor de webservice.

environment

Het omgevingsobject dat is gebruikt om de webservice te maken.

azureml.core.webservice.AksWebservice.models

Een lijst met modellen die zijn geïmplementeerd in de webservice.

deployment_status
str

De implementatiestatus van de webservice.

namespace
str

De AKS-naamruimte van de webservice.

azureml.core.webservice.AksWebservice.swagger_uri
str

Het swagger-eindpunt voor de webservice.

Methoden

add_properties

Voeg sleutelwaardeparen toe aan de woordenlijst met eigenschappen van deze webservice.

add_tags

Voeg sleutelwaardeparen toe aan de woordenlijst met tags van deze webservice.

Verhoogt een WebserviceException.

deploy_configuration

Maak een configuratieobject voor implementatie naar een AKS-rekendoel.

get_access_token

Verificatietoken voor deze webservice ophalen.

get_token

AFGEKEURD. Gebruik get_access_token in plaats daarvan de methode.

Verificatietoken voor deze webservice ophalen.

remove_tags

Verwijder de opgegeven sleutels uit de woordenlijst met tags van deze webservice.

run

Roep deze webservice aan met de opgegeven invoer.

serialize

Converteer deze webservice naar een geserialiseerde JSON-woordenlijst.

update

Werk de webservice bij met de opgegeven eigenschappen.

Waarden die als Geen zijn opgegeven, blijven ongewijzigd in deze webservice.

add_properties

Voeg sleutelwaardeparen toe aan de woordenlijst met eigenschappen van deze webservice.

add_properties(properties)

Parameters

Name Description
properties
Vereist

De woordenlijst met eigenschappen die u wilt toevoegen.

add_tags

Voeg sleutelwaardeparen toe aan de woordenlijst met tags van deze webservice.

Verhoogt een WebserviceException.

add_tags(tags)

Parameters

Name Description
tags
Vereist

De woordenlijst met tags die u wilt toevoegen.

Uitzonderingen

Type Description

deploy_configuration

Maak een configuratieobject voor implementatie naar een AKS-rekendoel.

static deploy_configuration(autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, auth_enabled=None, cpu_cores=None, memory_gb=None, enable_app_insights=None, scoring_timeout_ms=None, replica_max_concurrent_requests=None, max_request_wait_time=None, num_replicas=None, primary_key=None, secondary_key=None, tags=None, properties=None, description=None, gpu_cores=None, period_seconds=None, initial_delay_seconds=None, timeout_seconds=None, success_threshold=None, failure_threshold=None, namespace=None, token_auth_enabled=None, compute_target_name=None, cpu_cores_limit=None, memory_gb_limit=None, blobfuse_enabled=None)

Parameters

Name Description
autoscale_enabled

Of automatisch schalen al dan niet moet worden ingeschakeld voor deze webservice. De standaardwaarde is True als num_replicas Geen is.

Default value: None
autoscale_min_replicas
int

Het minimale aantal containers dat moet worden gebruikt bij het automatisch schalen van deze webservice. Standaardwaarde is 1.

Default value: None
autoscale_max_replicas
int

Het maximum aantal containers dat moet worden gebruikt bij het automatisch schalen van deze webservice. De standaardwaarde is 10.

Default value: None
autoscale_refresh_seconds
int

Hoe vaak de automatische schaalaanpassing moet proberen deze webservice te schalen. Standaardwaarde is 1.

Default value: None
autoscale_target_utilization
int

Het doelgebruik (in procenten van 100) dat de automatische schaalaanpassing moet proberen te onderhouden voor deze webservice. De standaardwaarde is 70.

Default value: None
collect_model_data

Of het verzamelen van modelgegevens voor deze webservice al dan niet moet worden ingeschakeld. Standaard ingesteld op False.

Default value: None
auth_enabled

Of sleutelverificatie voor deze webservice moet worden ingeschakeld. De standaardwaarde is True.

Default value: None
cpu_cores

Het aantal CPU-kernen dat moet worden toegewezen voor deze webservice. Kan een decimaal getal zijn. De standaardwaarde is 0.1. Komt overeen met de pod core-aanvraag, niet de limiet, in Azure Kubernetes Service.

Default value: None
memory_gb

De hoeveelheid geheugen (in GB) die voor deze webservice moet worden toegewezen. Kan een decimaal getal zijn. De standaardwaarde is 0,5. Komt overeen met de podgeheugenaanvraag, niet de limiet, in Azure Kubernetes Service.

Default value: None
enable_app_insights

Of application insights-logboekregistratie voor deze webservice al dan niet moet worden ingeschakeld. Standaard ingesteld op False.

Default value: None
scoring_timeout_ms
int

Een time-out die moet worden afgedwongen voor het scoren van aanroepen naar deze webservice. De standaardwaarde is 60000.

Default value: None
replica_max_concurrent_requests
int

Het aantal maximale gelijktijdige aanvragen per replica dat deze webservice toestaat. Standaardwaarde is 1. Wijzig deze instelling niet van de standaardwaarde 1, tenzij u hiervoor instructies krijgt van de technische ondersteuning van Microsoft of een lid van het Azure Machine Learning-team.

Default value: None
max_request_wait_time
int

De maximale hoeveelheid tijd die een aanvraag in de wachtrij blijft (in milliseconden) voordat een fout van 503 wordt geretourneerd. De standaardwaarde is 500.

Default value: None
num_replicas
int

Het aantal containers dat moet worden toegewezen voor deze webservice. Geen standaardwaarde, als deze parameter niet is ingesteld, is automatische schaalaanpassing standaard ingeschakeld.

Default value: None
primary_key
str

Een primaire verificatiesleutel die moet worden gebruikt voor deze webservice.

Default value: None
secondary_key
str

Een secundaire verificatiesleutel die moet worden gebruikt voor deze webservice.

Default value: None
tags

Woordenlijst met sleutelwaardetags voor deze webservice.

Default value: None
properties

Woordenlijst met sleutelwaarde-eigenschappen voor deze webservice. Deze eigenschappen kunnen niet worden gewijzigd na de implementatie, maar er kunnen wel nieuwe sleutelwaardeparen worden toegevoegd.

Default value: None
description
str

Een beschrijving voor deze webservice.

Default value: None
gpu_cores
int

Het aantal GPU-kernen dat voor deze webservice moet worden toegewezen. De standaardwaarde is 0.

Default value: None
period_seconds
int

Hoe vaak (in seconden) de activiteitstest moet worden uitgevoerd. De standaardwaarde is 10 seconden. Minimumwaarde is 1.

Default value: None
initial_delay_seconds
int

Het aantal seconden nadat de container is gestart voordat de activiteitstests worden gestart. De standaardwaarde is 310.

Default value: None
timeout_seconds
int

Het aantal seconden waarna er een time-out optreedt voor de activiteitstest. De standaardinstelling is 2 seconden. Minimumwaarde is 1.

Default value: None
success_threshold
int

De minimale opeenvolgende successen voor de liveness-test om als geslaagd te worden beschouwd nadat deze is mislukt. Standaardwaarde is 1. Minimumwaarde is 1.

Default value: None
failure_threshold
int

Wanneer een pod wordt gestart en de activiteitstest mislukt, probeert Kubernetes failureThreshold keer voordat hij stopt. Standaardwaarde is 3. Minimumwaarde is 1.

Default value: None
namespace
str

De Kubernetes-naamruimte waarin deze webservice moet worden geïmplementeerd: maximaal 63 kleine alfanumerieke tekens ('a'-'z', '0'-'9') en afbreekstreepjes ('-'). De eerste en laatste tekens mogen geen afbreekstreepjes zijn.

Default value: None
token_auth_enabled

Of tokenverificatie voor deze webservice moet worden ingeschakeld. Als dit is ingeschakeld, hebben gebruikers toegang tot deze webservice door een toegangstoken op te halen met behulp van hun Azure Active Directory-referenties. Standaard ingesteld op False.

Default value: None
compute_target_name
str

De naam van het rekendoel voor implementatie

Default value: None
cpu_cores_limit

Het maximum aantal CPU-kernen dat deze webservice mag gebruiken. Kan een decimaal getal zijn.

Default value: None
memory_gb_limit

De maximale hoeveelheid geheugen (in GB) die deze webservice mag gebruiken. Kan een decimaal getal zijn.

Default value: None
blobfuse_enabled

Of u blobfuse wilt inschakelen voor het downloaden van modellen voor deze webservice. De standaardwaarde is True

Default value: None

Retouren

Type Description

Een configuratieobject dat moet worden gebruikt bij het implementeren van een AksWebservice.

Uitzonderingen

Type Description

get_access_token

Verificatietoken voor deze webservice ophalen.

get_access_token()

Retouren

Type Description

Een object dat het verificatietoken voor deze webservice beschrijft.

Uitzonderingen

Type Description

get_token

AFGEKEURD. Gebruik get_access_token in plaats daarvan de methode.

Verificatietoken voor deze webservice ophalen.

get_token()

Retouren

Type Description

Het verificatietoken voor deze webservice en wanneer moet worden vernieuwd.

Uitzonderingen

Type Description

remove_tags

Verwijder de opgegeven sleutels uit de woordenlijst met tags van deze webservice.

remove_tags(tags)

Parameters

Name Description
tags
Vereist

De lijst met sleutels die u wilt verwijderen

run

Roep deze webservice aan met de opgegeven invoer.

run(input_data)

Parameters

Name Description
input_data
Vereist
<xref:varies>

De invoer voor het aanroepen van de webservice met

Retouren

Type Description

Het resultaat van het aanroepen van de webservice

Uitzonderingen

Type Description

serialize

Converteer deze webservice naar een geserialiseerde JSON-woordenlijst.

serialize()

Retouren

Type Description

De JSON-weergave van deze webservice.

update

Werk de webservice bij met de opgegeven eigenschappen.

Waarden die als Geen zijn opgegeven, blijven ongewijzigd in deze webservice.

update(image=None, autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, auth_enabled=None, cpu_cores=None, memory_gb=None, enable_app_insights=None, scoring_timeout_ms=None, replica_max_concurrent_requests=None, max_request_wait_time=None, num_replicas=None, tags=None, properties=None, description=None, models=None, inference_config=None, gpu_cores=None, period_seconds=None, initial_delay_seconds=None, timeout_seconds=None, success_threshold=None, failure_threshold=None, namespace=None, token_auth_enabled=None, cpu_cores_limit=None, memory_gb_limit=None, **kwargs)

Parameters

Name Description
image

Een nieuwe installatiekopieën voor implementatie in de webservice

Default value: None
autoscale_enabled

Automatisch schalen van deze webservice in- of uitschakelen

Default value: None
autoscale_min_replicas
int

Het minimale aantal containers dat moet worden gebruikt bij het automatisch schalen van deze webservice

Default value: None
autoscale_max_replicas
int

Het maximum aantal containers dat moet worden gebruikt bij het automatisch schalen van deze webservice

Default value: None
autoscale_refresh_seconds
int

Hoe vaak de automatische schaalaanpassing moet proberen deze webservice te schalen

Default value: None
autoscale_target_utilization
int

Het doelgebruik (in procent van 100) dat de automatische schaalaanpassing moet proberen te onderhouden voor deze webservice

Default value: None
collect_model_data

Het verzamelen van modelgegevens voor deze webservice in- of uitschakelen

Default value: None
auth_enabled

Verificatie inschakelen voor deze webservice

Default value: None
cpu_cores

Het aantal CPU-kernen dat moet worden toegewezen voor deze webservice. Kan een decimaal zijn

Default value: None
memory_gb

De hoeveelheid geheugen (in GB) die voor deze webservice moet worden toegewezen. Kan een decimaal zijn

Default value: None
enable_app_insights

Application Insights-logboekregistratie inschakelen voor deze webservice

Default value: None
scoring_timeout_ms
int

Een time-out die moet worden afgedwongen voor score-aanroepen naar deze webservice

Default value: None
replica_max_concurrent_requests
int

Het aantal maximale gelijktijdige aanvragen per replica dat deze webservice toestaat.

Default value: None
max_request_wait_time
int

De maximale hoeveelheid tijd die een aanvraag in de wachtrij blijft (in milliseconden) voordat een fout van 503 wordt geretourneerd

Default value: None
num_replicas
int

Het aantal containers dat voor deze webservice moet worden toegewezen

Default value: None
tags

Woordenlijst met sleutelwaardetags voor deze webservice. Vervangt bestaande tags.

Default value: None
properties

Woordenlijst met sleutelwaarde-eigenschappen die moeten worden toegevoegd aan bestaande eigenschappenwoordenlijst

Default value: None
description
str

Een beschrijving voor deze webservice

Default value: None
models

Een lijst met modelobjecten die moeten worden verpakt met de bijgewerkte service

Default value: None
inference_config

Een InferenceConfig-object dat wordt gebruikt om de vereiste eigenschappen voor modelimplementatie te bieden.

Default value: None
gpu_cores
int

Het aantal GPU-kernen dat voor deze webservice moet worden toegewezen

Default value: None
period_seconds
int

Hoe vaak (in seconden) de activiteitstest moet worden uitgevoerd. De standaardwaarde is 10 seconden. Minimumwaarde is 1.

Default value: None
initial_delay_seconds
int

Aantal seconden nadat de container is gestart voordat de activiteitstests worden gestart.

Default value: None
timeout_seconds
int

Het aantal seconden waarna er een time-out optreedt voor de activiteitstest. De standaardinstelling is 1 seconde. Minimumwaarde is 1.

Default value: None
success_threshold
int

De minimale opeenvolgende successen voor de activiteitstest voordat de test succesvol of mislukt is. Standaardwaarde is 1. Minimumwaarde is 1.

Default value: None
failure_threshold
int

Wanneer een pod wordt gestart en de activiteitstest mislukt, probeert Kubernetes failureThreshold keer voordat hij stopt. Standaardwaarde is 3. Minimumwaarde is 1.

Default value: None
namespace
str

De Kubernetes-naamruimte waarin deze webservice moet worden geïmplementeerd: maximaal 63 kleine alfanumerieke tekens ('a'-'z', '0'-'9') en afbreekstreepjes ('-'). De eerste en laatste tekens mogen geen afbreekstreepjes zijn.

Default value: None
token_auth_enabled

Of tokenverificatie voor deze webservice moet worden ingeschakeld. Als dit is ingeschakeld, hebben gebruikers toegang tot deze webservice door het toegangstoken op te halen met behulp van hun Azure Active Directory-referenties. Standaard ingesteld op False.

Default value: None
cpu_cores_limit

Het maximum aantal CPU-kernen dat deze webservice mag gebruiken. Kan een decimaal getal zijn.

Default value: None
memory_gb_limit

De maximale hoeveelheid geheugen (in GB) die deze webservice mag gebruiken. Kan een decimaal getal zijn.

Default value: None
kwargs
Vereist
<xref:varies>

params opnemen ter ondersteuning van het migreren van de AKS-webservice naar het online-eindpunt en de implementatie van Kubernetes. is_migration=Waar| False, compute_target=.

Uitzonderingen

Type Description