本文說明如何在 模型服務 或 功能服務 端點上啟用路由優化。 路由最佳化的服務端點可大幅降低額外負荷延遲,並允許大幅改善端點支援的輸送量。
路由最佳化端點的查詢方式與非路由最佳化端點不同,包括使用不同的 URL 和使用 OAuth 權杖進行驗證。 如需詳細資訊,請參閱 查詢路由最佳化的服務端點 。
什麼是路由優化?
當您在端點上啟用路由優化時,Databricks 模型服務可改善推斷要求的網路路徑,進而加快用戶端與模型之間的更直接通訊速度。 相比非優化端點,這種優化的路由提供了每秒更高的查詢量(QPS),並為您的應用程式提供更穩定且更低的延遲。
小提示
路由優化是優化生產工作負載的多種策略之一。 欲了解優化技術的完整指南,請參閱「優化模型服務端點以供生產」。
需求
- 模型服務端點上的路由優化與非路由最佳化模型服務端點的需求相同。
- 功能服務端點上的路由最佳化與非路由最佳化功能服務端點具有相同的需求。
在模型服務端點上啟用路由最佳化
提供使用者介面
當您使用 服務 UI 建立模型服務端點時,您可以啟用路由優化。 您只能在建立端點期間啟用路由優化,您無法更新現有的端點以優化路由。
- 在側邊列中,點擊 服務 以顯示 [服務 UI]。
- 按一下建立服務端點。
- 在 [ 路由優化] 區段中,選取 [ 啟用路由優化]。
- 建立端點之後,Databricks 會傳送通知,說明查詢路徑優化端點所需的條件。
REST API
若要使用 REST API 設定服務端點以進行路由優化,請在模型服務端點建立期間指定 route_optimized 參數。 您只能在建立端點時指定此參數,無法將現有端點更新為路由最佳化。
POST /api/2.0/serving-endpoints
{
"name": "my-endpoint",
"config":
{
"served_entities":
[{
"entity_name": "ads1",
"entity_version": "1",
"workload_type": "CPU",
"workload_size": "Small",
"scale_to_zero_enabled": true,
}],
},
"route_optimized": true
}
Python
如果您使用 Python,您可以使用下列筆記本來建立路由最佳化服務端點。
使用 Python 筆記本建立路由最佳化服務端點
Databricks SDK
若要使用 Databricks SDK 設定服務端點以進行路由優化,請在建立模型服務端點期間指定 route_optimized 參數。 您只能在建立端點時指定此參數,無法將現有端點更新為路由最佳化。
from databricks.sdk import WorkspaceClient
from databricks.sdk.service.serving import EndpointCoreConfigInput, ServedEntityInput
workspace = WorkspaceClient()
workspace.serving_endpoints.create(
name="my-serving-endpoint",
config = EndpointCoreConfigInput(
served_entities=[
ServedEntityInput(
entity_name="main.default.my-served-entity",
scale_to_zero_enabled=True,
workload_size="Small"
)
]
),
route_optimized=True
)
在特徵服務端點上啟用路由最佳化
若要對特徵與函式服務使用路由最佳化,請在 entity_name 欄位中指定特徵規格的完整名稱,以提供端點建立要求。
entity_version 不需要 FeatureSpecs。
POST /api/2.0/serving-endpoints
{
"name": "my-endpoint",
"config":
{
"served_entities":
[
{
"entity_name": "catalog_name.schema_name.feature_spec_name",
"workload_type": "CPU",
"workload_size": "Small",
"scale_to_zero_enabled": true
}
]
},
"route_optimized": true
}
限制
- 路由最佳化僅適用於自訂模型服務端點和特徵服務端點。 不支援使用 基礎模型 API 或 外部模型的 服務端點。
- Databricks 內部 OAuth 權杖是唯一支援的路由最佳化驗證。 不支援個人存取權杖。