Share via


AksEndpoint 類別

注意

這是實驗性類別,隨時可能會變更。 請參閱 https://aka.ms/azuremlexperimental 以取得詳細資訊。

表示在Azure Kubernetes Service上執行之相同端點後方的 Web 服務版本集合。

而 部署 AksWebservice 具有單一評分端點的單一服務,AksEndpoint 類別可讓您在相同的評分端點後方部署多個 Web 服務版本。 每個 Web 服務版本都可以設定為提供流量百分比,讓您可以以受控制的方式部署模型,例如 A/B 測試。 AksEndpoint 允許從類似 AksWebservice 的模型物件進行部署。

初始化 Webservice 實例。

Webservice 建構函式會擷取與所提供工作區相關聯之 Webservice 物件的雲端標記法。 它會傳回對應至所擷取之 Webservice 物件之特定類型的子類別實例。

繼承
AksEndpoint

建構函式

AksEndpoint(workspace, name)

參數

workspace
Workspace
必要

包含要擷取之 Webservice 物件的工作區物件。

name
str
必要

要擷取之 Webservice 物件的 名稱。

變數

versions
dict[str, AksWebservice]

版本名稱至 version 物件的字典。 包含部署為此端點一部分的所有版本。

方法

create_version

在端點中新增具有所提供屬性的新版本。

delete_version

刪除端點中的版本。

deploy_configuration

建立組態物件以部署至 AKS 計算目標。

serialize

將此 Webservice 轉換成 JSON 序列化字典。

update

使用所提供的屬性更新端點。

保留為 [無] 的值將會在此端點中保持不變

update_version

使用所提供的屬性更新端點中的現有版本。

保留為 None 的值將會在此版本中保持不變。

create_version

在端點中新增具有所提供屬性的新版本。

create_version(version_name, autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, cpu_cores=None, memory_gb=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, traffic_percentile=None, is_default=None, is_control_version_type=None, cpu_cores_limit=None, memory_gb_limit=None)

參數

version_name
str
必要

要新增至端點的版本名稱。

autoscale_enabled
bool
預設值: None

是否要在端點中啟用此版本的自動調整。 如果 num_replicas 為 None,則預設為 True。

autoscale_min_replicas
int
預設值: None

在端點中自動調整此版本時要使用的容器數目下限。 預設值為 1

autoscale_max_replicas
int
預設值: None

在端點中自動調整此版本時要使用的容器數目上限。 預設為 10

autoscale_refresh_seconds
int
預設值: None

自動調整程式應該嘗試在端點中調整此版本的頻率。 預設值為 1

autoscale_target_utilization
int
預設值: None

自動調整程式應該嘗試在端點中維護此版本的目標使用率 (百分比為 100) 。 預設值為 70

collect_model_data
bool
預設值: None

是否要在端點中啟用此版本的模型資料收集。 預設為 False

cpu_cores
float
預設值: None

要配置給端點中此版本的 CPU 核心數目。 可以是十進位。 預設值為 0.1

memory_gb
float
預設值: None

要配置給端點中此版本的記憶體 (以 GB 為單位) 。 可以是十進位。 預設值為 0.5

scoring_timeout_ms
int
預設值: None

在端點中強制對這個版本的呼叫進行評分的逾時。 預設值為 60000。

replica_max_concurrent_requests
int
預設值: None

每個複本允許此版本的端點並行要求數目上限。 預設值為 1。 除非 Microsoft 技術支援或 Azure Machine Learning 小組的成員指示,否則請勿從預設值 1 變更此設定。

max_request_wait_time
int
預設值: None

要求在傳回 503 錯誤之前,要求會停留在佇列 (以毫秒為單位) 的最大時間量。 預設值為 500。

num_replicas
int
預設值: None

要配置給端點中此版本的容器數目。 沒有預設值,如果未設定此參數,則預設會啟用自動調整程式。

tags
dict[str, str]
預設值: None

索引鍵值標籤的字典,以提供此端點。

properties
dict[str, str]
預設值: None

索引鍵值屬性的字典,以提供此端點。 部署之後無法變更這些屬性,不過可以新增新的索引鍵值組。

description
str
預設值: None

提供此端點的描述。

models
list[Model]
預設值: None

要與更新服務一起封裝的 Model 物件清單。

inference_config
InferenceConfig
預設值: None

InferenceConfig 物件,用來提供所需的模型部署屬性。

gpu_cores
int
預設值: None

要配置給端點中此版本的 GPU 核心數目。 預設為 0。

period_seconds
int
預設值: None

執行活躍度探查的頻率 (以秒為單位)。 預設值為 10 秒。 最小值為 1。

initial_delay_seconds
int
預設值: None

啟動容器之後的秒數,才會起始活躍度探查。 預設值為 310。

timeout_seconds
int
預設值: None

存留時間探查逾時的秒數。預設值為 2 秒。 最小值為 1。

success_threshold
int
預設值: None

在失敗之後,將活躍度探查視為成功的最小連續成功。 預設值為 1。 最小值為 1。

failure_threshold
int
預設值: None

當 Pod 啟動且活躍度探查失敗時,Kubernetes 會在放棄之前先嘗試使用 failureThreshold 時間。 預設值為 3。 最小值為 1。

traffic_percentile
float
預設值: None

版本在端點中採用的流量。

is_default
bool
預設值: None

是否要在端點中將此版本設為預設版本。 預設為 False。

is_control_version_type
bool
預設值: None

是否要在端點中將此版本設為控制版本。 預設為 False。

cpu_cores_limit
float
預設值: None

允許此 Webservice 使用的 CPU 核心數目上限。 可以是十進位。

memory_gb_limit
float
預設值: None

允許使用此 Web 服務) 以 GB 為單位的最大記憶體 (量。 可以是十進位。

例外狀況

delete_version

刪除端點中的版本。

delete_version(version_name)

參數

version_name
str
必要

要刪除之端點中的版本名稱。

例外狀況

deploy_configuration

建立組態物件以部署至 AKS 計算目標。

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, version_name=None, traffic_percentile=None, compute_target_name=None, cpu_cores_limit=None, memory_gb_limit=None)

參數

autoscale_enabled
bool
預設值: None

是否要在端點中啟用此版本的自動調整。 如果 num_replicas 為 None,則預設值為 True。

autoscale_min_replicas
int
預設值: None

在端點中自動調整此版本時要使用的容器數目下限。 預設值為 1。

autoscale_max_replicas
int
預設值: None

在端點中自動調整此版本時要使用的容器數目上限。 預設值為 10。

autoscale_refresh_seconds
int
預設值: None

自動調整程式應該嘗試在端點中調整此版本的頻率。 預設值為 1。

autoscale_target_utilization
int
預設值: None

自動調整程式應該嘗試在端點中維護此版本的目標使用率 (百分比為 100) 。 預設值為 70。

collect_model_data
bool
預設值: None

是否要在端點中啟用此版本的模型資料收集。 預設為 False。

auth_enabled
bool
預設值: None

是否要在端點中啟用此版本的金鑰驗證。 預設值為 True。

cpu_cores
float
預設值: None

在端點中配置此版本的 CPU 核心數目。 可以是十進位。 預設值為 0.1

memory_gb
float
預設值: None

以 GB 為單位的記憶體 (量,) 在端點中配置此版本。 可以是十進位。 預設值為 0.5

enable_app_insights
bool
預設值: None

是否要在端點中啟用此版本的 ApplicationInsights 記錄。 預設為 False。

scoring_timeout_ms
int
預設值: None

在端點中強制執行此版本的評分呼叫逾時。 預設值為 60000

replica_max_concurrent_requests
int
預設值: None

每個複本允許此版本在端點中的最大並行要求數目。 預設值為 1。 除非 Microsoft 技術支援或 Azure Machine Learning 小組的成員指示,否則請勿從預設值 1 變更此設定。

max_request_wait_time
int
預設值: None

要求在傳回 503 錯誤之前,要求在佇列中 (以毫秒為單位的時間上限) 。 預設值為 500。

num_replicas
int
預設值: None

在端點中配置此版本的容器數目。 如果未設定此參數,則預設會啟用自動調整程式。

primary_key
str
預設值: None

要用於此端點的主要驗證金鑰。

secondary_key
str
預設值: None

要用於此端點的次要驗證金鑰。

tags
dict[str, str]
預設值: None

索引鍵值標籤的字典,以提供此端點。

properties
dict[str, str]
預設值: None

索引鍵值屬性的字典,以提供此端點。 部署之後無法變更這些屬性,但是可以新增新的索引鍵值組

description
str
預設值: None

提供此端點的描述。

gpu_cores
int
預設值: None

在端點中配置此版本的 GPU 核心數目。 預設為 0。

period_seconds
int
預設值: None

執行活躍度探查的頻率 (以秒為單位)。 預設值為 10 秒。 最小值為 1。

initial_delay_seconds
int
預設值: None

在起始活躍度探查之前,容器啟動後的秒數。 預設值為 310。

timeout_seconds
int
預設值: None

存留時間探查逾時的秒數。預設值為 2 秒。 最小值為 1。

success_threshold
int
預設值: None

失敗之後,會將活躍度探查的最小連續成功次數視為成功。 預設值為 1。 最小值為 1。

failure_threshold
int
預設值: None

當 Pod 啟動時,且即時探查失敗時,Kubernetes 會先嘗試 failureThreshold 時間再放棄。 預設值為 3。 最小值為 1。

namespace
str
預設值: None

要在其中部署此端點的 Kubernetes 命名空間:最多 63 個小寫英數位元 ('a'-'z'、'0'-'9') 和連字號 ('-') 字元。 第一個字元和最後一個字元不能是連字號。

token_auth_enabled
bool
預設值: None

是否要為此端點啟用權杖驗證。 如果啟用此功能,使用者可以使用其 Azure Active Directory 認證來擷取存取權杖,以存取此端點。 預設為 False。

version_name
str
預設值: None

端點中版本的名稱。

traffic_percentile
float
預設值: None

版本在端點中採用的流量。

compute_target_name
str
預設值: None

要部署的目標計算目標名稱

cpu_cores_limit
float
預設值: None

允許使用此 Webservice 的最大 CPU 核心數目。 可以是十進位。

memory_gb_limit
float
預設值: None

允許使用此 Webservice) 以 GB 為單位的最大記憶體 (量。 可以是十進位。

傳回類型

例外狀況

serialize

將此 Webservice 轉換成 JSON 序列化字典。

serialize()

傳回

此 Webservice 的 JSON 標記法。

傳回類型

例外狀況

update

使用所提供的屬性更新端點。

保留為 [無] 的值將會在此端點中保持不變

update(auth_enabled=None, token_auth_enabled=None, enable_app_insights=None, description=None, tags=None, properties=None)

參數

auth_enabled
bool
預設值: None

是否要在端點中啟用此版本的金鑰驗證。 預設值為 True。

token_auth_enabled
bool
預設值: None

是否要為此端點啟用權杖驗證。 如果啟用此功能,使用者可以使用其 Azure Active Directory 認證來擷取存取權杖,以存取此端點。 預設為 False。

enable_app_insights
bool
預設值: None

是否要在端點中啟用此版本的 Application Insights 記錄。 預設為 False。

description
str
預設值: None

提供此端點的描述。

tags
dict[str, str]
預設值: None

索引鍵值標籤的字典,以提供此端點。

properties
dict[str, str]
預設值: None

索引鍵值屬性的字典,以提供此端點。 部署之後,就無法變更這些屬性,但是可以新增新的索引鍵值組。

例外狀況

update_version

使用所提供的屬性更新端點中的現有版本。

保留為 None 的值將會在此版本中保持不變。

update_version(version_name, autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, cpu_cores=None, memory_gb=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, traffic_percentile=None, is_default=None, is_control_version_type=None, cpu_cores_limit=None, memory_gb_limit=None)

參數

version_name
str
必要

端點中版本的名稱。

autoscale_enabled
bool
預設值: None

是否要在端點中啟用此版本的自動調整。 如果 num_replicas 為 None,則預設值為 True。

autoscale_min_replicas
int
預設值: None

在端點中自動調整此版本時要使用的容器數目下限。 預設值為 1。

autoscale_max_replicas
int
預設值: None

在端點中自動調整此版本時要使用的容器數目上限。 預設值為 10。

autoscale_refresh_seconds
int
預設值: None

自動調整程式應該嘗試在端點中調整此版本的頻率。 預設值為 1

autoscale_target_utilization
int
預設值: None

自動調整程式應該嘗試在端點中維護此版本的目標使用率 (百分比為 100) 。 預設值為 70。

collect_model_data
bool
預設值: None

是否要在端點中啟用此版本的模型資料收集。 預設為 False。

cpu_cores
float
預設值: None

在端點中配置此版本的 CPU 核心數目。 可以是十進位。 預設值為 0.1

memory_gb
float
預設值: None

以 GB 為單位的記憶體 (量,) 在端點中配置此版本。 可以是十進位。 預設值為 0.5

scoring_timeout_ms
int
預設值: None

在端點中強制執行對這個版本的呼叫進行評分的逾時。 預設值為 60000。

replica_max_concurrent_requests
int
預設值: None

每個複本允許此版本在端點中的最大並行要求數目。 預設值為 1。 除非 Microsoft 技術支援或 Azure Machine Learning 小組的成員指示,否則請勿從預設值 1 變更此設定。

max_request_wait_time
int
預設值: None

要求在傳回 503 錯誤之前,要求在佇列中 (以毫秒為單位的時間上限) 。 預設值為 500。

num_replicas
int
預設值: None

在端點中配置此版本的容器數目。 如果未設定此參數,則預設會啟用自動調整程式。

tags
dict[str, str]
預設值: None

索引鍵值標籤的字典,以提供此端點。

properties
dict[str, str]
預設值: None

索引鍵值屬性的字典,以提供此端點。 部署之後,就無法變更這些屬性,但是可以新增新的索引鍵值組。

description
str
預設值: None

提供此端點的描述

models
list[Model]
預設值: None

使用更新的服務封裝的 Model 物件清單

inference_config
InferenceConfig
預設值: None

用來提供必要模型部署屬性的 InferenceConfig 物件。

gpu_cores
int
預設值: None

在端點中配置此版本的 GPU 核心數目。 預設為 0。

period_seconds
int
預設值: None

執行活躍度探查的頻率 (以秒為單位)。 預設值為 10 秒。 最小值為 1。

initial_delay_seconds
int
預設值: None

在起始即時探查之前,容器啟動後的秒數。 預設值為 310。

timeout_seconds
int
預設值: None

存留時間探查逾時的秒數。預設值為 2 秒。 最小值為 1。

success_threshold
int
預設值: None

存留時間探查在失敗之後視為成功的最小連續成功。 預設值為 1。 最小值為 1。

failure_threshold
int
預設值: None

當 Pod 啟動且活躍度探查失敗時,Kubernetes 會在放棄之前先嘗試使用 failureThreshold 時間。 預設值為 3。 最小值為 1。

traffic_percentile
float
預設值: None

版本採用端點的流量。

is_default
bool
預設值: None

是否要在端點中將此版本設為預設版本。 預設為 False。

is_control_version_type
bool
預設值: None

是否要在端點中將此版本設為控制版本。 預設為 False。

cpu_cores_limit
float
預設值: None

允許使用此 Webservice 的最大 CPU 核心數目。 可以是十進位。

memory_gb_limit
float
預設值: None

允許使用此 Webservice) 以 GB 為單位的最大記憶體 (量。 可以是十進位。

例外狀況