Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano sposób włączania optymalizacji tras na potrzeby obsługi modelu lub obsługi funkcji punktów końcowych. Routing zoptymalizowany pod kątem punktów końcowych obsługujących znacznie mniejsze opóźnienia związane z obciążeniem i umożliwia znaczne ulepszenia przepływności obsługiwanej przez punkt końcowy.
Punkty końcowe zoptymalizowane pod kątem trasy są odpytywane inaczej niż punkty końcowe niezoptymalizowane pod kątem trasy, w tym przy użyciu innego adresu URL i uwierzytelniania przy użyciu tokenów OAuth. Aby uzyskać szczegółowe informacje, zobacz Zapytania dotyczące punktów końcowych zoptymalizowanych pod kątem tras.
Co to jest optymalizacja tras?
Po włączeniu optymalizacji tras w punkcie końcowym usługa Databricks Model Serving poprawia ścieżkę sieciową dla żądań wnioskowania, co zapewnia szybszą, bardziej bezpośrednią komunikację między klientem a modelem. Ten zoptymalizowany routing odblokowuje wyższe zapytania na sekundę (QPS) w porównaniu z nieoptymalicznymi punktami końcowymi i zapewnia bardziej stabilne i niższe opóźnienia dla aplikacji.
Wskazówka
Optymalizacja tras to jedna z kilku strategii optymalizacji obciążeń produkcyjnych. Aby uzyskać kompleksowy przewodnik po technikach optymalizacji, zobacz Optymalizowanie punktów końcowych obsługujących model dla środowiska produkcyjnego.
Wymagania
- Optymalizacja tras w punktach końcowych obsługujących model ma te same wymagania co nieoptymalizowany model obsługujący punkty końcowe.
- Optymalizacja tras w punktach końcowych obsługujących funkcje ma te same wymagania co punkty końcowe obsługujące funkcje bez optymalizacji tras.
Włączanie optymalizacji tras w punkcie końcowym obsługującym model
Dostarczanie interfejsu użytkownika
Optymalizację tras można włączyć podczas tworzenia punktu końcowego dla modelu przy użyciu interfejsu użytkownika Serving. Optymalizację tras można włączyć tylko podczas tworzenia punktu końcowego. Nie można zaktualizować istniejących punktów końcowych do optymalizacji trasy.
- Na pasku bocznym kliknij pozycję Obsługa , aby wyświetlić interfejs użytkownika obsługi.
- Kliknij Utwórz punkt końcowy obsługi.
- W sekcji Optymalizacja tras wybierz pozycję Włącz optymalizację tras.
- Po utworzeniu punktu końcowego usługa Databricks wysyła powiadomienie o tym, co jest potrzebne do wykonywania zapytań dotyczących zoptymalizowanego punktu końcowego trasy.
interfejs API REST
Aby skonfigurować punkt końcowy obsługi na potrzeby optymalizacji tras przy użyciu interfejsu API REST, podczas tworzenia punktu końcowego obsługującego model, określ parametr route_optimized. Ten parametr można określić tylko podczas tworzenia punktu końcowego. Nie można zaktualizować istniejących punktów końcowych do zoptymalizowania trasy.
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
Jeśli używasz języka Python, możesz użyć poniższego notesu, aby utworzyć punkt końcowy obsługi zoptymalizowanej pod kątem trasy.
Tworzenie zoptymalizowanego pod kątem trasy punktu końcowego obsługującego przy użyciu notesu języka Python
Databricks SDK
Aby skonfigurować punkt końcowy obsługi na potrzeby optymalizacji tras przy użyciu zestawu SDK usługi Databricks, określ route_optimized parametr podczas tworzenia punktu końcowego obsługującego model. Ten parametr można określić tylko podczas tworzenia punktu końcowego. Nie można zaktualizować istniejących punktów końcowych do zoptymalizowania trasy.
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
)
Włączanie optymalizacji tras w punkcie końcowym obsługującym funkcję
Aby użyć optymalizacji tras dla funkcji i obsługi funkcji, określ pełną nazwę specyfikacji funkcji w entity_name polu do obsługi żądań tworzenia punktów końcowych. Element entity_version nie jest wymagany w przypadku elementu 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
}
Ograniczenia
- Optymalizacja tras jest dostępna tylko dla punktów końcowych obsługujących niestandardowe modele i funkcje obsługujące punkty końcowe. Obsługa punktów końcowych korzystających z interfejsów API modelu foundation lub modeli zewnętrznych nie jest obsługiwana.
- Wewnętrzne tokeny OAuth usługi Databricks są jedynym obsługiwanym uwierzytelnianiem na potrzeby optymalizacji tras. Osobiste tokeny dostępu nie są obsługiwane.