AksWebservice Klasse
Stellt ein Machine Learning-Modell dar, das als Webdienstendpunkt in Azure Kubernetes Service bereitgestellt wird.
Ein bereitgestellter Dienst wird aus einem Modell, Skript und zugehörigen Dateien erstellt. Der resultierende Webdienst ist ein lastenausgleichender HTTP-Endpunkt mit einer REST-API. Sie können Daten an diese API senden und die vom Modell zurückgegebene Vorhersage empfangen.
AksWebservice stellt einen einzelnen Dienst auf einem Endpunkt bereit. Verwenden Sie die AksEndpoint Klasse, um mehrere Dienste auf einem Endpunkt bereitzustellen.
Weitere Informationen finden Sie unter Bereitstellen eines Modells für einen Azure Kubernetes-Dienstcluster.
Initialisieren Sie die Webservice-Instanz.
Der Webservice-Konstruktor ruft eine Clouddarstellung eines Webservice-Objekts ab, das dem bereitgestellten Arbeitsbereich zugeordnet ist. Es wird eine Instanz einer untergeordneten Klasse zurückgegeben, die dem spezifischen Typ des abgerufenen Webservice-Objekts entspricht.
Konstruktor
AksWebservice(workspace, name)
Parameter
| Name | Beschreibung |
|---|---|
|
workspace
Erforderlich
|
Das Arbeitsbereichsobjekt, das das abzurufende Webservice-Objekt enthält. |
|
name
Erforderlich
|
Der Name des abzurufenden Webservice-Objekts. |
Hinweise
Das empfohlene Bereitstellungsmuster besteht darin, ein Bereitstellungskonfigurationsobjekt mit der deploy_configuration Methode zu erstellen und es dann mit der deploy Methode der Model Klasse zu verwenden, wie unten dargestellt.
# 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)
Es gibt eine Reihe von Möglichkeiten, ein Modell als Webdienst bereitzustellen, einschließlich der folgenden:
deployDie Methode der modelle, die Model bereits im Arbeitsbereich registriert sind.deploy_from_imageMethode von Webservice.deploy_from_modelMethode für Webservice Modelle, die bereits im Arbeitsbereich registriert sind. Diese Methode erstellt ein Bild.deploy-Methode, Webservicedie ein Modell registriert und ein Bild erstellt.
Informationen zum Arbeiten mit Webservices finden Sie unter
Nutzen eines als Webdienst bereitgestellten Azure Machine Learning-Modells
Überwachen und Erfassen von Daten von ML-Webdienst-Endpunkten
Im Abschnitt "Variablen " werden Attribute einer lokalen Darstellung des Cloud AksWebservice-Objekts aufgelistet. Diese Variablen sollten als schreibgeschützt betrachtet werden. Das Ändern ihrer Werte wird nicht im entsprechenden Cloudobjekt wiedergegeben.
Variablen
| Name | Beschreibung |
|---|---|
|
enable_app_insights
|
Gibt an, ob die AppInsights-Protokollierung für den Webdienst aktiviert ist. |
|
autoscaler
|
Das Autoscaler-Objekt für den Webdienst. |
|
compute_name
|
Der Name des ComputeTarget,für den der Webdienst bereitgestellt wird. |
|
container_resource_requirements
|
Die Containerressourcenanforderungen für den Webdienst. |
|
liveness_probe_requirements
|
Die Anforderungen der Liveness-Probe für den Webservice. |
|
data_collection
|
Das DataCollection-Objekt für den Webdienst. |
|
max_concurrent_requests_per_container
|
Die maximale Anzahl gleichzeitiger Anforderungen pro Container für den Webdienst. |
|
max_request_wait_time
|
Die maximale Wartezeit für die Anforderung für den Webdienst in Millisekunden. |
|
num_replicas
|
Die Anzahl der Replikate für den Webdienst. Jedes Replikat entspricht einem AKS-Pod. |
|
scoring_timeout_ms
|
Das Bewertungstimeout für den Webdienst in Millisekunden. |
|
azureml.core.webservice.AksWebservice.scoring_uri
|
Der Bewertungsendpunkt für den Webdienst |
|
is_default
|
Wenn der Webdienst die Standardversion für das übergeordnete AksEndpoint ist. |
|
traffic_percentile
|
Der Prozentsatz des Datenverkehrs, der an den Webdienst im übergeordneten AksEndpoint weitergeleitet werden soll. |
|
version_type
|
Der Versionstyp für den Webdienst im übergeordneten AksEndpoint. |
|
token_auth_enabled
|
Gibt an, ob die Tokenauthentifizierung für den Webdienst aktiviert ist. |
|
environment
|
Das Environment-Objekt, das zum Erstellen des Webdiensts verwendet wurde. |
|
azureml.core.webservice.AksWebservice.models
|
Eine Liste der im Webdienst bereitgestellten Modelle. |
|
deployment_status
|
Der Bereitstellungsstatus des Webdiensts. |
|
namespace
|
Der AKS-Namespace des Webdiensts. |
|
azureml.core.webservice.AksWebservice.swagger_uri
|
Der Swagger-Endpunkt für den Webdienst. |
Methoden
| add_properties |
Fügen Sie schlüsselwertpaare zum Eigenschaftenverzeichnis dieses Webdiensts hinzu. |
| add_tags |
Fügen Sie schlüsselwertpaare zum Tagsverzeichnis dieses Webdiensts hinzu. Löst ein WebserviceException. |
| deploy_configuration |
Erstellen Sie ein Konfigurationsobjekt für die Bereitstellung in einem AKS-Computeziel. |
| get_access_token |
Abrufen des Authentifizierungstokens für diesen Webdienst. |
| get_token |
VERALTET. Verwenden Sie Abrufen des Authentifizierungstokens für diesen Webdienst. |
| remove_tags |
Entfernen Sie die angegebenen Schlüssel aus dem Wörterbuch der Tags dieses Webdiensts. |
| run |
Rufen Sie diesen Webdienst mit der bereitgestellten Eingabe auf. |
| serialize |
Konvertieren Sie diesen Webdienst in ein serialisiertes JSON-Wörterbuch. |
| update |
Aktualisieren Sie den Webdienst mit den bereitgestellten Eigenschaften. Werte, die in diesem Webdienst unverändert bleiben, bleiben unverändert. |
add_properties
add_tags
Fügen Sie schlüsselwertpaare zum Tagsverzeichnis dieses Webdiensts hinzu.
Löst ein WebserviceException.
add_tags(tags)
Parameter
| Name | Beschreibung |
|---|---|
|
tags
Erforderlich
|
Das Wörterbuch der hinzuzufügenden Tags. |
Ausnahmen
| Typ | Beschreibung |
|---|---|
deploy_configuration
Erstellen Sie ein Konfigurationsobjekt für die Bereitstellung in einem AKS-Computeziel.
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)
Parameter
| Name | Beschreibung |
|---|---|
|
autoscale_enabled
|
Gibt an, ob die automatische Skalierung für diesen Webdienst aktiviert werden soll. Standardwert ist "True", wenn num_replicas "None" ist. Standardwert: None
|
|
autoscale_min_replicas
|
Die Mindestanzahl der Container, die beim automatischenCaling dieses Webdiensts verwendet werden sollen. Der Standardwert lautet 1. Standardwert: None
|
|
autoscale_max_replicas
|
Die maximale Anzahl von Containern, die beim automatischenCaling dieses Webdiensts verwendet werden sollen. Standardwert ist 10. Standardwert: None
|
|
autoscale_refresh_seconds
|
Wie oft der Autoscaler versuchen sollte, diesen Webdienst zu skalieren. Der Standardwert lautet 1. Standardwert: None
|
|
autoscale_target_utilization
|
Die Zielauslastung (in Prozent von 100) sollte der Autoscaler versuchen, diesen Webdienst beizubehalten. Der Standardwert ist 70. Standardwert: None
|
|
collect_model_data
|
Gibt an, ob die Modelldatensammlung für diesen Webdienst aktiviert werden soll. Der Standardwert lautet „False“. Standardwert: None
|
|
auth_enabled
|
Gibt an, ob die Schlüsselauthentifizierung für diesen Webdienst aktiviert werden soll. Der Standardwert ist „True“. Standardwert: None
|
|
cpu_cores
|
Die Anzahl der CPU-Kerne, die für diesen Webdienst zugewiesen werden sollen. Dies kann eine Dezimalzahl sein. Der Standardwert ist 0.1. Entspricht der Pod-Core-Anforderung, nicht dem Grenzwert, in Azure Kubernetes Service. Standardwert: None
|
|
memory_gb
|
Die Speichermenge (in GB), die für diesen Webdienst zugewiesen werden soll. Dies kann eine Dezimalzahl sein. Der Standardwert ist 0,5. Entspricht der Pod-Speicheranforderung, nicht dem Grenzwert, im Azure Kubernetes-Dienst. Standardwert: None
|
|
enable_app_insights
|
Gibt an, ob die Application Insights-Protokollierung für diesen Webdienst aktiviert werden soll. Der Standardwert lautet „False“. Standardwert: None
|
|
scoring_timeout_ms
|
Ein Timeout zum Erzwingen von Bewertungsaufrufen für diesen Webdienst. Standardwert ist 60000. Standardwert: None
|
|
replica_max_concurrent_requests
|
Die Anzahl der maximalen gleichzeitigen Anforderungen pro Replikat, die für diesen Webdienst zulässig sind. Der Standardwert lautet 1. Ändern Sie diese Einstellung nicht vom Standardwert 1, es sei denn, der technische Support von Microsoft oder ein Mitglied des Azure Machine Learning-Teams. Standardwert: None
|
|
max_request_wait_time
|
Die maximale Zeitspanne, die eine Anforderung in der Warteschlange (in Millisekunden) verbleibt, bevor ein 503-Fehler zurückgegeben wird. Standardwert ist 500. Standardwert: None
|
|
num_replicas
|
Die Anzahl der Container, die für diesen Webdienst zugewiesen werden sollen. Wenn dieser Parameter nicht festgelegt ist, ist der Autoscaler standardmäßig aktiviert. Standardwert: None
|
|
primary_key
|
Ein primärer Authentifizierungsschlüssel, der für diesen Webdienst verwendet werden soll. Standardwert: None
|
|
secondary_key
|
Ein sekundärer Authentifizierungsschlüssel, der für diesen Webdienst verwendet werden soll. Standardwert: None
|
|
tags
|
Wörterbuch der Schlüsselwerttags, die diesem Webdienst zugewiesen werden sollen. Standardwert: None
|
|
properties
|
Wörterbuch der Schlüsselwerteigenschaften, die diesem Webdienst zugewiesen werden sollen. Diese Eigenschaften können nach der Bereitstellung nicht geändert werden, aber neue Schlüsselwertpaare können hinzugefügt werden. Standardwert: None
|
|
description
|
Eine Beschreibung für diesen Webdienst. Standardwert: None
|
|
gpu_cores
|
Die Anzahl der GPU-Kerne, die für diesen Webdienst zugewiesen werden sollen. Standardmäßig auf 0 gesetzt. Standardwert: None
|
|
period_seconds
|
Gibt an, wie häufig (in Sekunden) ein Livetest durchgeführt werden soll. Der Standardwert ist 10 Sekunden. Der Mindestwert ist 1. Standardwert: None
|
|
initial_delay_seconds
|
Die Anzahl der Sekunden, nachdem der Container gestartet wurde, bevor Liveness-Probes initiiert werden. Standardwert ist 310. Standardwert: None
|
|
timeout_seconds
|
Die Anzahl der Sekunden, nach denen die Livenesssonde eine Zeitüberschreitung aufweist. Der Standardwert ist 2 Sekunde. Der Mindestwert ist 1. Standardwert: None
|
|
success_threshold
|
Die minimalen aufeinander folgenden Erfolge für die Livenesssonde, die nach einem Fehler als erfolgreich angesehen werden. Der Standardwert lautet 1. Der Mindestwert ist 1. Standardwert: None
|
|
failure_threshold
|
Wenn ein Pod startet und der Livetest fehlschlägt, versucht Kubernetes, die Zeiten des Parameters FailureThreshold zu verwenden, bevor aufgegeben wird. Der Standardwert ist 3. Der Mindestwert ist 1. Standardwert: None
|
|
namespace
|
Der Kubernetes-Namespace, in dem dieser Webdienst bereitgestellt werden soll: bis zu 63 alphanumerische Zeichen ('-'z', '0'-'9') und Bindestriche ('-'). Die ersten und letzten Zeichen dürfen keine Bindestriche sein. Standardwert: None
|
|
token_auth_enabled
|
Gibt an, ob die Tokenauthentifizierung für diesen Webdienst aktiviert werden soll. Wenn dies aktiviert ist, können Benutzer auf diesen Webdienst zugreifen, indem sie ein Zugriffstoken mithilfe ihrer Azure Active Directory-Anmeldeinformationen abrufen. Der Standardwert lautet „False“. Standardwert: None
|
|
compute_target_name
|
Der Name des Computeziels, für das bereitgestellt werden soll Standardwert: None
|
|
cpu_cores_limit
|
Die maximale Anzahl von CPU-Kernen, die dieser Webdienst verwenden darf. Dies kann eine Dezimalzahl sein. Standardwert: None
|
|
memory_gb_limit
|
Die maximale Arbeitsspeichermenge (in GB) dieses Webdiensts darf verwendet werden. Dies kann eine Dezimalzahl sein. Standardwert: None
|
|
blobfuse_enabled
|
Gibt an, ob blobfuse für den Modelldownload für diesen Webdienst aktiviert werden soll. Standardwert ist "True". Standardwert: None
|
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Ein Konfigurationsobjekt, das beim Bereitstellen eines AksWebservice verwendet werden soll. |
Ausnahmen
| Typ | Beschreibung |
|---|---|
get_access_token
Abrufen des Authentifizierungstokens für diesen Webdienst.
get_access_token()
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Ein Objekt, das das Authentifizierungstoken für diesen Webdienst beschreibt. |
Ausnahmen
| Typ | Beschreibung |
|---|---|
get_token
VERALTET. Verwenden Sie get_access_token stattdessen die Methode.
Abrufen des Authentifizierungstokens für diesen Webdienst.
get_token()
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Das Authentifizierungstoken für diesen Webdienst und wann sie aktualisiert werden soll. |
Ausnahmen
| Typ | Beschreibung |
|---|---|
remove_tags
run
Rufen Sie diesen Webdienst mit der bereitgestellten Eingabe auf.
run(input_data)
Parameter
| Name | Beschreibung |
|---|---|
|
input_data
Erforderlich
|
<xref:varies>
Die Eingabe zum Aufrufen des Webdiensts mit |
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Das Ergebnis des Aufrufens des Webdiensts |
Ausnahmen
| Typ | Beschreibung |
|---|---|
serialize
Konvertieren Sie diesen Webdienst in ein serialisiertes JSON-Wörterbuch.
serialize()
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Die JSON-Darstellung dieses Webdiensts. |
update
Aktualisieren Sie den Webdienst mit den bereitgestellten Eigenschaften.
Werte, die in diesem Webdienst unverändert bleiben, bleiben unverändert.
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)
Parameter
| Name | Beschreibung |
|---|---|
|
image
|
Ein neues Image, das für den Webdienst bereitgestellt werden soll Standardwert: None
|
|
autoscale_enabled
|
Aktivieren oder Deaktivieren der automatischen Skalierung dieses Webdiensts Standardwert: None
|
|
autoscale_min_replicas
|
Die Mindestanzahl der Container, die beim automatischenCaling dieses Webdiensts verwendet werden sollen Standardwert: None
|
|
autoscale_max_replicas
|
Die maximale Anzahl von Containern, die beim automatischenCaling dieses Webdiensts verwendet werden sollen Standardwert: None
|
|
autoscale_refresh_seconds
|
Wie oft der Autoscaler versuchen sollte, diesen Webdienst zu skalieren Standardwert: None
|
|
autoscale_target_utilization
|
Die Zielauslastung (in Prozent von 100) sollte der Autoscaler versuchen, für diesen Webdienst beizubehalten. Standardwert: None
|
|
collect_model_data
|
Aktivieren oder Deaktivieren der Modelldatensammlung für diesen Webdienst Standardwert: None
|
|
auth_enabled
|
Gibt an, ob die Authentifizierung für diesen Webdienst aktiviert werden soll. Standardwert: None
|
|
cpu_cores
|
Die Anzahl der CPU-Kerne, die für diesen Webdienst zugewiesen werden sollen. Kann eine Dezimalzahl sein Standardwert: None
|
|
memory_gb
|
Die Speichermenge (in GB), die für diesen Webdienst zugewiesen werden soll. Kann eine Dezimalzahl sein Standardwert: None
|
|
enable_app_insights
|
Gibt an, ob die Application Insights-Protokollierung für diesen Webdienst aktiviert werden soll. Standardwert: None
|
|
scoring_timeout_ms
|
Ein Timeout zum Erzwingen von Bewertungsaufrufen für diesen Webdienst Standardwert: None
|
|
replica_max_concurrent_requests
|
Die Anzahl der maximalen gleichzeitigen Anforderungen pro Replikat, die für diesen Webdienst zulässig sind. Standardwert: None
|
|
max_request_wait_time
|
Die maximale Zeitspanne, die eine Anforderung in der Warteschlange (in Millisekunden) verbleibt, bevor ein 503-Fehler zurückgegeben wird. Standardwert: None
|
|
num_replicas
|
Die Anzahl der Container, die für diesen Webdienst zugewiesen werden sollen Standardwert: None
|
|
tags
|
Wörterbuch der Schlüsselwerttags, die diesem Webdienst zugewiesen werden sollen. Ersetzt vorhandene Tags. Standardwert: None
|
|
properties
|
Wörterbuch der Schlüsselwerteigenschaften, die zum vorhandenen Eigenschaftenwörterbuch hinzugefügt werden sollen Standardwert: None
|
|
description
|
Eine Beschreibung, die diesem Webdienst zu verleihen ist Standardwert: None
|
|
models
|
Eine Liste der Model-Objekte, die mit dem aktualisierten Dienst verpackt werden sollen Standardwert: None
|
|
inference_config
|
Ein InferenceConfig -Objekt, das verwendet wird, um die erforderlichen Modellbereitstellungseigenschaften bereitzustellen. Standardwert: None
|
|
gpu_cores
|
Die Anzahl der GPU-Kerne, die für diesen Webdienst zugewiesen werden sollen Standardwert: None
|
|
period_seconds
|
Gibt an, wie häufig (in Sekunden) ein Livetest durchgeführt werden soll. Der Standardwert ist 10 Sekunden. Der Mindestwert ist 1. Standardwert: None
|
|
initial_delay_seconds
|
Die Anzahl der Sekunden, nachdem der Container gestartet wurde, bevor Livenesssonden initiiert werden. Standardwert: None
|
|
timeout_seconds
|
Die Anzahl der Sekunden, nach denen die Livenesssonde eine Zeitüberschreitung aufweist. Der Standardwert ist 1 Sekunde. Der Mindestwert ist 1. Standardwert: None
|
|
success_threshold
|
Die Anzahl der Erfolge, die mindestens aufeinander folgen müssen, damit ein Livetest nach einem Fehler wieder als erfolgreich betrachtet wird. Der Standardwert lautet 1. Der Mindestwert ist 1. Standardwert: None
|
|
failure_threshold
|
Wenn ein Pod startet und der Livetest fehlschlägt, versucht Kubernetes, die Zeiten des Parameters FailureThreshold zu verwenden, bevor aufgegeben wird. Der Standardwert ist 3. Der Mindestwert ist 1. Standardwert: None
|
|
namespace
|
Der Kubernetes-Namespace, in dem dieser Webdienst bereitgestellt werden soll: bis zu 63 alphanumerische Zeichen ('-'z', '0'-'9') und Bindestriche ('-'). Die ersten und letzten Zeichen dürfen keine Bindestriche sein. Standardwert: None
|
|
token_auth_enabled
|
Gibt an, ob die Tokenauthentifizierung für diesen Webdienst aktiviert werden soll. Wenn dies aktiviert ist, können Benutzer auf diesen Webdienst zugreifen, indem sie Zugriffstoken mithilfe ihrer Azure Active Directory-Anmeldeinformationen abrufen. Der Standardwert ist „FALSE“. Standardwert: None
|
|
cpu_cores_limit
|
Die maximale Anzahl von CPU-Kernen, die dieser Webdienst verwenden darf. Dies kann eine Dezimalzahl sein. Standardwert: None
|
|
memory_gb_limit
|
Die maximale Arbeitsspeichermenge (in GB) dieses Webdiensts darf verwendet werden. Dies kann eine Dezimalzahl sein. Standardwert: None
|
|
kwargs
Erforderlich
|
<xref:varies>
enthalten Params zur Unterstützung der Migration des AKS-Webdiensts zu Kubernetes-Onlineendpunkt und -Bereitstellung. is_migration=True|False, compute_target=<compute target with AzureML extension installed to hostd Kubernetes online endpoint and deployment>. |
Ausnahmen
| Typ | Beschreibung |
|---|---|