Optimalizace trasy pro obsluhu koncových bodů

Tento článek popisuje, jak povolit optimalizaci tras na koncových bodech vaší obsluhy modelu nebo obsluhy funkcí. Koncové body obsluhy optimalizované pro směrování výrazně snižují režijní latenci a umožňují výrazně zvýšit propustnost, kterou váš koncový bod podporuje.

Koncové body optimalizované pro směrování se dotazují jinak než koncové body neoptimalizované pro směrování, včetně použití jiné adresy URL a ověřování pomocí tokenů OAuth. Podrobnosti najdete v tématu Dotazování na koncové body optimalizované pro směrování .

Co je optimalizace tras?

Když u koncového bodu povolíte optimalizaci tras, služba Databricks Model Serving vylepšuje síťovou cestu pro žádosti o odvozování, což vede k rychlejší a přímější komunikaci mezi vaším klientem a modelem. Toto optimalizované směrování umožňuje větší počet dotazů za sekundu (QPS) ve srovnání s neoptimalizovanými koncovými body a poskytuje stabilnější a nižší latence pro vaše aplikace.

Návod

Optimalizace tras je jednou z několika strategií pro optimalizaci produkčních úloh. Komplexní průvodce technikami optimalizace najdete v tématu Optimalizace koncových bodů obsluhy modelů pro produkční prostředí.

Požadavky

Povolte optimalizaci směrování u koncového bodu pro obsluhu modelu

Obsluha uživatelského rozhraní

Optimalizaci tras můžete povolit při vytváření koncového bodu obsluhy modelu pomocí uživatelského rozhraní obsluhy . Optimalizaci tras můžete povolit pouze při vytváření koncového bodu. Stávající koncové body nemůžete aktualizovat tak, aby se optimalizovaly.

  1. Na bočním panelu klikněte na Obsluha a zobrazte uživatelské rozhraní obsluhy.
  2. Klikněte na Vytvořit obslužný koncový bod.
  3. V části Optimalizace trasy vyberte Povolit optimalizaci tras.
  4. Po vytvoření koncového bodu vám Databricks pošle oznámení o tom, co je potřeba k dotazování koncového bodu optimalizovaného pro trasu.

Vytvořte koncový bod pro obsluhu modelu

REST API

Pokud chcete nakonfigurovat koncový bod obsluhy pro optimalizaci tras pomocí rozhraní REST API, zadejte route_optimized parametr během vytváření koncového bodu obsluhy modelu. Tento parametr můžete zadat pouze během vytváření koncového bodu. Stávající koncové body nelze aktualizovat tak, aby byly optimalizovány.

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

Pokud používáte Python, můžete pomocí následujícího poznámkového bloku vytvořit trasu optimalizovanou pro obsluhu koncového bodu.

Vytvořte koncový bod pro obsluhu optimalizovaný pro směrování pomocí poznámkového bloku Python

Vezmi poznámkový blok

Databricks SDK

Pokud chcete nakonfigurovat koncový bod obsluhy pro optimalizaci tras pomocí sady Databricks SDK, zadejte route_optimized parametr během vytváření koncového bodu obsluhy modelu. Tento parametr můžete zadat pouze během vytváření koncového bodu. Stávající koncové body nelze aktualizovat tak, aby byly optimalizovány.

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
)

Povolte optimalizaci směrování na koncovém bodu pro poskytování funkcí

Chcete-li použít optimalizaci směrování pro obsluhu prvků a funkcí, zadejte úplný název specifikace prvku do pole entity_name v požadavcích na vytvoření koncového bodu obsluhy. Není entity_version potřeba pro 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
}

Omezení

  • Optimalizace směrování je k dispozici pouze pro koncové body pro obsluhu vlastních modelů a pro koncové body pro obsluhu funkcí. Obsluha koncových bodů, které používají rozhraní API základního modelu nebo externí modely, nejsou podporovány.
  • Jediným podporovaným ověřováním pro optimalizaci tras jsou interní tokeny OAuth Databricks. Osobní přístupové tokeny se nepodporují.

Dodatečné zdroje