AksWebservice Klass

Representerar en maskininlärningsmodell som distribuerats som en webbtjänstslutpunkt på Azure Kubernetes Service.

En distribuerad tjänst skapas från en modell, ett skript och associerade filer. Den resulterande webbtjänsten är en belastningsutjämnings-HTTP-slutpunkt med ett REST-API. Du kan skicka data till det här API:et och få förutsägelsen som returneras av modellen.

AksWebservice distribuerar en enda tjänst till en slutpunkt. Om du vill distribuera flera tjänster till en slutpunkt använder du AksEndpoint klassen .

Mer information finns i Distribuera en modell till ett Azure Kubernetes Service kluster.

Initiera webbtjänstinstansen.

Webbtjänstkonstruktorn hämtar en molnrepresentation av ett webbtjänstobjekt som är associerat med den angivna arbetsytan. Den returnerar en instans av en underordnad klass som motsvarar den specifika typen av det hämtade webbtjänstobjektet.

Arv
AksWebservice

Konstruktor

AksWebservice(workspace, name)

Parametrar

workspace
Workspace
Obligatorisk

Arbetsyteobjektet som innehåller webbtjänstobjektet som ska hämtas.

name
str
Obligatorisk

Namnet på webbtjänstobjektet som ska hämtas.

Kommentarer

Det rekommenderade distributionsmönstret är att skapa ett distributionskonfigurationsobjekt med deploy_configuration metoden och sedan använda det med deploy metoden i Model klassen enligt nedan.


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

Fullständigt exempel är tillgängligt från https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb

Det finns ett antal sätt att distribuera en modell som en webbtjänst, bland annat med:

  • deploy metoden för för modeller som Model redan är registrerade på arbetsytan.

  • deploy_from_image -metod för Webservice.

  • deploy_from_modelWebservice metoden för för modeller som redan har registrerats på arbetsytan. Den här metoden skapar en avbildning.

  • deploy -metoden för Webservice, som registrerar en modell och skapar en avbildning.

Information om hur du arbetar med webbtjänster finns i

I avsnittet Variabler visas attribut för en lokal representation av akswebserviceobjektet i molnet. Dessa variabler bör betraktas som skrivskyddade. Att ändra deras värden återspeglas inte i motsvarande molnobjekt.

Variabler

enable_app_insights
bool

Om AppInsights-loggning är aktiverat för webbtjänsten eller inte.

autoscaler
AutoScaler

Autoskalningsobjektet för webbtjänsten.

compute_name
str

Namnet på den ComputeTarget som webbtjänsten distribueras till.

container_resource_requirements
ContainerResourceRequirements

Resurskraven för containern för webbtjänsten.

liveness_probe_requirements
LivenessProbeRequirements

Kraven för livenessavsökning för webbtjänsten.

data_collection
DataCollection

DataCollection-objektet för webbtjänsten.

max_concurrent_requests_per_container
int

Det maximala antalet samtidiga begäranden per container för webbtjänsten.

max_request_wait_time
int

Den maximala väntetiden för begäran för webbtjänsten, i millisekunder.

num_replicas
int

Antalet repliker för webbtjänsten. Varje replik motsvarar en AKS-podd.

scoring_timeout_ms
int

Tidsgränsen för bedömning för webbtjänsten i millisekunder.

azureml.core.webservice.AksWebservice.scoring_uri
str

Slutpunkten för bedömning för webbtjänsten

is_default
bool

Om webbtjänsten är standardversionen för den överordnade AksEndpoint.

traffic_percentile
int

Vilken procentandel av trafiken som ska dirigeras till webbtjänsten i den överordnade AksEndpoint.

version_type
VersionType

Versionstypen för webbtjänsten i den överordnade AksEndpoint.

token_auth_enabled
bool

Huruvida tokenautentisering är aktiverat för webbtjänsten eller inte.

environment
Environment

Miljöobjektet som användes för att skapa webbtjänsten.

azureml.core.webservice.AksWebservice.models
list[Model]

En lista över modeller som distribuerats till webbtjänsten.

deployment_status
str

Distributionsstatus för webbtjänsten.

namespace
str

AKS-namnområdet för webbtjänsten.

azureml.core.webservice.AksWebservice.swagger_uri
str

Swagger-slutpunkten för webbtjänsten.

Metoder

add_properties

Lägg till nyckelvärdepar i den här webbtjänstens egenskapsordlista.

add_tags

Lägg till nyckel/värde-par i ordlistan för den här webbtjänstens taggar.

Genererar en WebserviceException.

deploy_configuration

Skapa ett konfigurationsobjekt för distribution till ett AKS-beräkningsmål.

get_access_token

Hämta autentiseringstoken för den här webbtjänsten.

get_token

DEPRECATED. Använd get_access_token metoden i stället.

Hämta autentiseringstoken för den här webbtjänsten.

remove_tags

Ta bort de angivna nycklarna från den här webbtjänstens ordlista med taggar.

run

Anropa den här webbtjänsten med angivna indata.

serialize

Konvertera den här webbtjänsten till en JSON-serialiserad ordlista.

update

Uppdatera webbtjänsten med angivna egenskaper.

Värden kvar som Ingen förblir oförändrade i den här webbtjänsten.

add_properties

Lägg till nyckelvärdepar i den här webbtjänstens egenskapsordlista.

add_properties(properties)

Parametrar

properties
dict[str, str]
Obligatorisk

Ordlistan med egenskaper som ska läggas till.

add_tags

Lägg till nyckel/värde-par i ordlistan för den här webbtjänstens taggar.

Genererar en WebserviceException.

add_tags(tags)

Parametrar

tags
dict[str, str]
Obligatorisk

Ordlistan med taggar som ska läggas till.

Undantag

deploy_configuration

Skapa ett konfigurationsobjekt för distribution till ett AKS-beräkningsmål.

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)

Parametrar

autoscale_enabled
bool
standardvärde: None

Om du vill aktivera automatisk skalning för den här webbtjänsten eller inte. Standardvärdet är True om num_replicas är Ingen.

autoscale_min_replicas
int
standardvärde: None

Det minsta antalet containrar som ska användas vid automatisk skalning av den här webbtjänsten. Standardvärdet är 1.

autoscale_max_replicas
int
standardvärde: None

Det maximala antalet containrar som ska användas vid automatisk skalning av den här webbtjänsten. Standardvärdet är 10.

autoscale_refresh_seconds
int
standardvärde: None

Hur ofta autoskalning ska försöka skala den här webbtjänsten. Standardvärdet är 1.

autoscale_target_utilization
int
standardvärde: None

Målanvändningen (i procent av 100) som autoskalningen ska försöka underhålla för den här webbtjänsten. Standardvärdet är 70.

collect_model_data
bool
standardvärde: None

Om du vill aktivera insamling av modelldata för den här webbtjänsten eller inte. Standardvärdet är False.

auth_enabled
bool
standardvärde: None

Om du vill aktivera nyckelautentisering för den här webbtjänsten eller inte. Standardvärdet är True.

cpu_cores
float
standardvärde: None

Antalet processorkärnor som ska allokeras för den här webbtjänsten. Kan vara en decimal. Standardvärdet är 0,1. Motsvarar pod core-begäran, inte gränsen, i Azure Kubernetes Service.

memory_gb
float
standardvärde: None

Mängden minne (i GB) som ska allokeras för den här webbtjänsten. Kan vara en decimal. Standardvärdet är 0,5. Motsvarar poddminnesbegäran, inte gränsen, i Azure Kubernetes Service.

enable_app_insights
bool
standardvärde: None

Om du vill aktivera Application Insights-loggning för den här webbtjänsten eller inte. Standardvärdet är False.

scoring_timeout_ms
int
standardvärde: None

En timeout för att framtvinga poängsättning av anrop till den här webbtjänsten. Standardvärdet är 60000.

replica_max_concurrent_requests
int
standardvärde: None

Antalet samtidiga begäranden per replik som tillåts för den här webbtjänsten. Standardvärdet är 1. Ändra inte den här inställningen från standardvärdet 1 om du inte instrueras av Microsofts tekniska support eller en medlem i Azure Machine Learning-teamet.

max_request_wait_time
int
standardvärde: None

Den maximala tiden som en begäran finns kvar i kön (i millisekunder) innan ett 503-fel returneras. Standardvärdet är 500.

num_replicas
int
standardvärde: None

Antalet containrar som ska allokeras för den här webbtjänsten. Inget standardvärde, om den här parametern inte har angetts är autoskalning aktiverad som standard.

primary_key
str
standardvärde: None

En primär autentiseringsnyckel som ska användas för den här webbtjänsten.

secondary_key
str
standardvärde: None

En sekundär autentiseringsnyckel som ska användas för den här webbtjänsten.

tags
dict[str, str]
standardvärde: None

Ordlista med nyckelvärdestaggar för att ge den här webbtjänsten.

properties
dict[str, str]
standardvärde: None

Ordlista med nyckelvärdesegenskaper som ger den här webbtjänsten. Dessa egenskaper kan inte ändras efter distributionen, men nya nyckel/värde-par kan läggas till.

description
str
standardvärde: None

En beskrivning som ger den här webbtjänsten.

gpu_cores
int
standardvärde: None

Antalet GPU-kärnor som ska allokeras för den här webbtjänsten. Standardvärdet är 0.

period_seconds
int
standardvärde: None

Hur ofta (i sekunder) liveavsökningen ska utföras. Standardvärdet är 10 sekunder. Minimivärdet är 1.

initial_delay_seconds
int
standardvärde: None

Antalet sekunder efter att containern har startats innan liveavsökningar initieras. Standardvärdet är 310.

timeout_seconds
int
standardvärde: None

Antalet sekunder som liveavsökningen överskrider tidsgränsen. Standardvärdet är 2 sekunder. Minimivärdet är 1.

success_threshold
int
standardvärde: None

Minsta antal lyckade resultat i följd för att liveavsökningen ska anses vara lyckad efter att ha misslyckats. Standardvärdet är 1. Minimivärdet är 1.

failure_threshold
int
standardvärde: None

När en podd startar och liveavsökningen misslyckas, kommer Kubernetes att prova failureThreshold gånger innan den ger upp. Standardvärdet är 3. Minimivärdet är 1.

namespace
str
standardvärde: None

Kubernetes-namnområdet där den här webbtjänsten ska distribueras: upp till 63 alfanumeriska gemener ('a'-'z', '0'-'9') och bindestreck ('-') tecken. Det första och sista tecknen får inte vara bindestreck.

token_auth_enabled
bool
standardvärde: None

Om tokenautentisering ska aktiveras eller inte för den här webbtjänsten. Om detta är aktiverat kan användarna komma åt den här webbtjänsten genom att hämta en åtkomsttoken med sina Azure Active Directory-autentiseringsuppgifter. Standardvärdet är False.

compute_target_name
str
standardvärde: None

Namnet på beräkningsmålet som ska distribueras till

cpu_cores_limit
float
standardvärde: None

Det maximala antalet processorkärnor som den här webbtjänsten tillåts använda. Kan vara en decimal.

memory_gb_limit
float
standardvärde: None

Den maximala mängden minne (i GB) som den här webbtjänsten tillåts använda. Kan vara en decimal.

blobfuse_enabled
bool
standardvärde: None

Om blobfuse ska aktiveras eller inte för modellnedladdning för den här webbtjänsten. Standardvärdet är True

Returer

Ett konfigurationsobjekt som ska användas när du distribuerar en AksWebservice.

Returtyp

Undantag

get_access_token

Hämta autentiseringstoken för den här webbtjänsten.

get_access_token()

Returer

Ett objekt som beskriver autentiseringstoken för den här webbtjänsten.

Returtyp

Undantag

get_token

DEPRECATED. Använd get_access_token metoden i stället.

Hämta autentiseringstoken för den här webbtjänsten.

get_token()

Returer

Autentiseringstoken för den här webbtjänsten och när den ska uppdateras.

Returtyp

Undantag

remove_tags

Ta bort de angivna nycklarna från den här webbtjänstens ordlista med taggar.

remove_tags(tags)

Parametrar

tags
list[str]
Obligatorisk

Listan över nycklar som ska tas bort

run

Anropa den här webbtjänsten med angivna indata.

run(input_data)

Parametrar

input_data
<xref:varies>
Obligatorisk

Indata för att anropa webbtjänsten med

Returer

Resultatet av att anropa webbtjänsten

Returtyp

Undantag

serialize

Konvertera den här webbtjänsten till en JSON-serialiserad ordlista.

serialize()

Returer

JSON-representationen av den här webbtjänsten.

Returtyp

update

Uppdatera webbtjänsten med angivna egenskaper.

Värden kvar som Ingen förblir oförändrade i den här webbtjänsten.

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)

Parametrar

image
Image
standardvärde: None

En ny avbildning som ska distribueras till webbtjänsten

autoscale_enabled
bool
standardvärde: None

Aktivera eller inaktivera automatisk skalning av den här webbtjänsten

autoscale_min_replicas
int
standardvärde: None

Det minsta antalet containrar som ska användas vid automatisk skalning av den här webbtjänsten

autoscale_max_replicas
int
standardvärde: None

Det maximala antalet containrar som ska användas vid automatisk skalning av den här webbtjänsten

autoscale_refresh_seconds
int
standardvärde: None

Hur ofta autoskalningen ska försöka skala den här webbtjänsten

autoscale_target_utilization
int
standardvärde: None

Målanvändningen (i procent av 100) som autoskalningen ska försöka underhålla för den här webbtjänsten

collect_model_data
bool
standardvärde: None

Aktivera eller inaktivera modelldatainsamling för den här webbtjänsten

auth_enabled
bool
standardvärde: None

Om du vill aktivera autentisering för den här webbtjänsten eller inte

cpu_cores
float
standardvärde: None

Antalet processorkärnor som ska allokeras för den här webbtjänsten. Kan vara en decimal

memory_gb
float
standardvärde: None

Mängden minne (i GB) som ska allokeras för den här webbtjänsten. Kan vara en decimal

enable_app_insights
bool
standardvärde: None

Om du vill aktivera Application Insights-loggning för den här webbtjänsten eller inte

scoring_timeout_ms
int
standardvärde: None

En timeout för att framtvinga poängsättning av anrop till den här webbtjänsten

replica_max_concurrent_requests
int
standardvärde: None

Antalet samtidiga begäranden per replik som tillåts för den här webbtjänsten.

max_request_wait_time
int
standardvärde: None

Den maximala tiden som en begäran finns kvar i kön (i millisekunder) innan ett 503-fel returneras

num_replicas
int
standardvärde: None

Antalet containrar som ska allokeras för den här webbtjänsten

tags
dict[str, str]
standardvärde: None

Ordlista med nyckelvärdestaggar för att ge den här webbtjänsten. Ersätter befintliga taggar.

properties
dict[str, str]
standardvärde: None

Ordlista med nyckelvärdesegenskaper som ska läggas till i en befintlig egenskapsordlista

description
str
standardvärde: None

En beskrivning för att ge den här webbtjänsten

models
list[Model]
standardvärde: None

En lista över modellobjekt som ska paketera med den uppdaterade tjänsten

inference_config
InferenceConfig
standardvärde: None

Ett InferenceConfig-objekt som används för att tillhandahålla de nödvändiga modelldistributionsegenskaperna.

gpu_cores
int
standardvärde: None

Antalet gpu-kärnor som ska allokeras för den här webbtjänsten

period_seconds
int
standardvärde: None

Hur ofta (i sekunder) liveavsökningen ska utföras. Standardvärdet är 10 sekunder. Minimivärdet är 1.

initial_delay_seconds
int
standardvärde: None

Antal sekunder efter att containern har startats innan liveavsökningar initieras.

timeout_seconds
int
standardvärde: None

Antal sekunder varefter liveavsökningen överskrider tidsgränsen. Standardvärdet är 1 sekund. Minimivärdet är 1.

success_threshold
int
standardvärde: None

Minsta antal lyckade resultat i följd för att liveavsökningen ska anses vara lyckad efter att ha misslyckats. Standardvärdet är 1. Minimivärdet är 1.

failure_threshold
int
standardvärde: None

När en podd startar och liveavsökningen misslyckas, kommer Kubernetes att prova failureThreshold gånger innan den ger upp. Standardvärdet är 3. Minimivärdet är 1.

namespace
str
standardvärde: None

Kubernetes-namnområdet där den här webbtjänsten ska distribueras: upp till 63 alfanumeriska gemener ('a'-'z', '0'-'9') och bindestreck ('-') tecken. Det första och sista tecknen får inte vara bindestreck.

token_auth_enabled
bool
standardvärde: None

Om tokenautentisering ska aktiveras eller inte för den här webbtjänsten. Om detta är aktiverat kan användarna komma åt den här webbtjänsten genom att hämta åtkomsttoken med sina Azure Active Directory-autentiseringsuppgifter. Standardvärdet är Falskt

cpu_cores_limit
float
standardvärde: None

Det maximala antalet processorkärnor som den här webbtjänsten tillåts använda. Kan vara en decimal.

memory_gb_limit
float
standardvärde: None

Den maximala mängden minne (i GB) som den här webbtjänsten tillåts använda. Kan vara en decimal.

kwargs
<xref:varies>
Obligatorisk

inkludera params för att stödja migrering av AKS-webbtjänsten till Kubernetes onlineslutpunkt och -distribution. is_migration=True| False, compute_target=.

Undantag