Dela via


Konfigurera AI Gateway på modellserverslutpunkter

I den här artikeln får du lära dig hur du konfigurerar Mosaic AI Gateway på en modell som betjänar slutpunkten.

Krav

Konfigurera AI Gateway med hjälp av användargränssnittet

I avsnittet AI Gateway på sidan för att skapa slutpunkter kan du konfigurera AI Gateway-funktioner individuellt. Se Stödda funktioner för att se vilka funktioner som är tillgängliga på slutpunkter för externt modellbetjänande och slutpunkter med etablerad genomströmning.

Konfigurera AI Gateway-funktioner

I följande tabell sammanfattas hur du konfigurerar AI-gatewayen när slutpunkten skapas med hjälp av serveringsgränssnittet. Om du föredrar att göra detta programmatiskt kan du läsa notebook-exemplet.

Egenskap Så här aktiverar du Detaljer
Användningsspårning Välj Aktivera för användningsspårning för att aktivera spårning och övervakning av dataanvändningsmått.
  • Du måste ha Unity Catalog aktiverat.
  • Kontoadministratörer måste aktivera schemat för serversystemtabeller innan systemtabellerna används: system.serving.endpoint_usage, som samlar in tokenantal för varje begäran till slutpunkten och system.serving.served_entities, som lagrar metadata för varje grundmodell.
  • Se Användningsspårningsschema för tabeller
  • Endast kontoadministratörer har behörighet att visa eller köra frågor mot tabellen served_entities eller endpoint_usage, även om användaren som hanterar slutpunkten måste aktivera användningsspårning. Se Bevilja åtkomst till systemtabeller
  • Antalet indata- och utdatatoken beräknas som (text_length+1)/4 om tokenantalet inte returneras av modellen.
Nyttolastregistrering Välj Aktivera slutsatsdragningstabeller för att automatiskt logga begäranden och svar från slutpunkten i Delta-tabeller som hanteras av Unity Catalog.
  • Du måste ha Unity Catalog aktiverat och CREATE_TABLE åtkomst i det angivna katalogschemat.
  • Inferenstabeller som aktiveras av AI Gateway har ett annat schema än inferenstabeller som skapats för modellbetjänade slutpunkter som hanterar anpassade modeller. Se AI Gateway-aktiverat slutsatsdragningstabellschema.
  • Loggningsdata för nyttolast fyller i dessa tabeller inom en timme efter att ha gjort en förfrågan till slutpunkten.
  • Nyttolaster som är större än 1 MB loggas inte.
  • Svarsnyttolasten aggregerar svaret för alla returnerade segment.
  • Direktuppspelning stöds. I strömningsscenarier aggregerar svarslasten svaret från returnerade bitar.
AI-skyddsräcken Se Konfigurera AI Guardrails i användargränssnittet.
  • Skyddsräcken förhindrar att modellen interagerar med osäkert och skadligt innehåll som identifieras i modellindata och utdata.
  • Utdataskydd stöds inte för inbäddningsmodeller eller för strömning.
Hastighetsbegränsningar Välj Hastighetsbegränsningar för att tillämpa hastighetsbegränsningar som hanterar trafiken för din slutpunkt baserat på per användare och per slutpunkt.
  • Hastighetsbegränsningar definieras i frågor per minut (QPM).
  • Standardvärdet är Ingen gräns för både per användare och slutpunkt.
Trafikdelning I avsnittet Serverade entiteter anger du procentandelen av trafiken du vill dirigeras till specifika modeller.
Information om hur du konfigurerar trafikdelning på slutpunkten programmatiskt finns i Hantera flera externa modeller till en slutpunkt.
  • Om du vill dirigera all trafik till en specifik modell anger du den till 100%.
  • Om du vill ange en reservmodell lägger du till modellen i slutpunkten och anger dess procentandel av trafiken till 0%.
  • För att belastningsutjämna trafiken mellan modeller och konfigurera reservlösningar kan du förvänta dig följande beteende:
  • Begäranden delas slumpmässigt mellan entiteterna baserat på de tilldelade trafikprocenterna.
  • Om begäran träffar den första entiteten och misslyckas återgår den till nästa entitet i den ordning som de hanterade entiteterna listades när slutpunkten skapades eller den senaste slutpunktsuppdateringen.
  • Trafikdelningen påverkar inte ordningen för återställningsförsök.
Återställningar Välj Aktivera återfallsmodell i avsnittet AI Gateway för att skicka din begäran till andra tjänstgörande modeller på slutpunkten som en reserv.
  • Om den första begäran som dirigeras till en viss entitet returnerar ett 429- eller 5XX-fel återgår begäran till nästa entitet som anges på slutpunkten.
  • Ordningen i vilken begäranden omdirigeras till reservbetjänade entiteter baseras på den ordning som modellerna listas i vid skapandet av slutpunkten eller vid den senaste uppdateringen av slutpunkten. Trafikprocenten påverkar inte ordningen för återställningsförsök som skickas till betjänade entiteter.
  • Återställningar stöds endast för externa modeller.
  • Du måste fördela trafikprocent till andra modeller som tillhandahålls på slutpunkten innan du kan aktivera reservlösningar till externa modeller.
  • Alla externa modeller som tilldelats 0% trafik fungerar uteslutande som reservmodell.
  • Du kan ha högst två reservlösningar.
  • Varje entitet provas en gång i sekventiell ordning tills begäran lyckas. Om alla angivna entiter har provats utan framgång misslyckas begäran.
  • Det första lyckade eller senaste misslyckade begärandeförsöket och svaret loggas i både loggningstabellerna för användningsspårning och nyttolast.

Följande diagram visar ett exempel där,

  • Tre betjänade entiteter hanteras på en modell som betjänar slutpunkten.
  • Begäran dirigeras ursprungligen till Hanterad entitet 3.
  • Om begäran returnerar ett 200-svar, var begäran framgångsrik på Hanterad entitet 3 och begäran samt dess svar loggas i slutpunktens loggningstabeller för användningsspårning och nyttolast.
  • Om begäran returnerar ett 429- eller 5xx-fel på Hanterad entitet 3, återgår begäran till nästa betjänade entitet på slutpunkten, Hanterad entitet 1.
    • Om begäran returnerar ett 429- eller 5xx-fel på Hanterad entitet 1, återgår begäran till nästa betjänade entitet på slutpunkten, Betjänad entitet 2.
    • Om begäran returnerar ett 429- eller 5xx-fel på Hanterad entitet 2misslyckas begäran eftersom det här är det maximala antalet återställningsentiteter. Den misslyckade begäran och svarsfelet loggas till loggningstabellerna för användningsspårning och nyttolast.

exempel på reservdiagram

Konfigurera AI Guardrails i användargränssnittet

Följande tabell visar hur du konfigurerar de skyddsräcken som stöds av .

Skyddsräcke Så här aktiverar du Detaljer
Säkerhet Välj Säkerhets för att aktivera skydd för att förhindra att din modell interagerar med osäkert och skadligt innehåll.
Identifiering av personligt identifierbar information (PII) Välj PII-identifiering för att identifiera PII-data, till exempel namn, adresser, kreditkortsnummer.
Giltiga ämnen Du kan skriva in ämnen direkt i det här fältet. Om du har flera inmatningar måste du trycka på Retur efter varje ämne. Alternativt kan du ladda upp en .csv eller .txt fil. Högst 50 giltiga ämnen kan anges. Varje ämne får inte överstiga 100 tecken
Ogiltiga nyckelord Du kan skriva in ämnen direkt i det här fältet. Om du har flera poster, se till att trycka på Retur efter varje ämne. Alternativt kan du ladda upp en .csv-fil eller en .txt-fil. Högst 50 ogiltiga nyckelord kan anges. Varje nyckelord får inte överstiga 100 tecken.

Konfigurera AI Guardrail-funktioner

Tabellscheman för användningsspårning

I följande avsnitt sammanfattas scheman för användningsspårningstabeller för system.serving.served_entities- och system.serving.endpoint_usage-systemtabeller.

system.serving.served_entities tabellschema för användningsspårning

Den system.serving.served_entities systemtabellen för användningsspårning har följande schema:

Kolumnnamn beskrivning Typ
served_entity_id Det unika ID:t för den betjänade entiteten. STRÄNG
account_id Kundkonto-ID för Delta Sharing. STRÄNG
workspace_id Kundens arbetsyte-ID för serverdelsslutpunkten. STRÄNG
created_by Skaparens ID. sträng
endpoint_name Namnet på tjänsteslutpunkten. STRÄNG
endpoint_id Det unika ID:t för tjänsteslutpunkten. STRÄNG
served_entity_name Namnet på den betjänade entiteten. STRÄNG
entity_type Typ av entitet som hanteras. Kan vara FEATURE_SPEC, EXTERNAL_MODEL, FOUNDATION_MODEL, eller CUSTOM_MODEL STRÄNG
entity_name Det underliggande namnet på entiteten. Annorlunda från served_entity_name, som är ett namn angivet av användaren. Till exempel är entity_name namnet på Unity Catalog-modellen. STRÄNG
entity_version Versionen av den betjänade entiteten. sträng
endpoint_config_version Versionen av slutpunktskonfigurationen. INT
task Aktivitetstypen. Kan vara llm/v1/chat, llm/v1/completionseller llm/v1/embeddings. STRÄNG
external_model_config Konfigurationer för externa modeller. Till exempel: {Provider: OpenAI} STRUCT
foundation_model_config Konfigurationer för grundmodeller. Till exempel{min_provisioned_throughput: 2200, max_provisioned_throughput: 4400} STRUKTUR
custom_model_config Konfigurationer för anpassade modeller. Till exempel{ min_concurrency: 0, max_concurrency: 4, compute_type: CPU } STRUCT
feature_spec_config Konfigurationer för funktionsspecifikationer. Till exempel: { min_concurrency: 0, max_concurrency: 4, compute_type: CPU } struktur
change_time Tidsstämpel för ändring för den betjänade entiteten. TIMESTAMP
endpoint_delete_time Tidsstämpel för borttagning av entitet. Slutpunkten är containern för den betjänade entiteten. När slutpunkten har tagits bort tas även den hanterade entiteten bort. TIMESTAMP

system.serving.endpoint_usage tabellschema för användningsspårning

Den system.serving.endpoint_usage systemtabellen för användningsspårning har följande schema:

Kolumnnamn beskrivning Typ
account_id Kundkontots ID. STRÄNG
workspace_id Kundens arbetsyte-ID för tjänande slutpunkt. STRÄNG
client_request_id Användaren angav begärandeidentifierare som kan anges i den modell som betjänar begärandetexten. STRÄNG
databricks_request_id En Azure Databricks-genererad begärandeidentifierare som är kopplad till alla modelltjänstbegäranden. STRÄNG
requester ID:t för användaren eller tjänstens huvudnamn vars behörigheter används för anropsbegäran för serverdelsslutpunkten. STRÄNG
status_code HTTP-statuskoden som returnerades från modellen. INTEGER
request_time Tidsstämpeln där begäran tas emot. TIMESTAMP
input_token_count Tokenantalet för indata. LÅNG
output_token_count Tokenantalet för utdata. LÅNG
input_character_count Teckenantalet för indatasträngen eller prompten. LÅNG
output_character_count Teckenantalet för utdatasträngen för svaret. LÅNG
usage_context Den mapp som användaren angav innehåller identifierare för slutanvändaren eller kundprogrammet som anropar slutpunkten. Se Definiera användning ytterligare med usage_context. KARTA
request_streaming Om begäran är i strömmande läge. BOOLESK
served_entity_id Det unika ID:t som används för att kopplas till system.serving.served_entities-dimensionstabellen för att hämta information om slutpunkten och den tillhandahållna entiteten. STRÄNG

Definiera användning ytterligare med usage_context

När du kör frågor mot en extern modell med användningsspårning aktiverat kan du ange parametern usage_context med typen Map[String, String]. Mappningen av användningskontexten visas i tabellen för användningsspårning i kolumnen usage_context. Kartstorleken usage_context får inte överstiga 10 KiB.

Kontoadministratörer kan aggregera olika rader baserat på användningskontexten för att få insikter och kan koppla den här informationen till informationen i loggningstabellen för nyttolast. Till exempel kan du lägga till end_user_to_charge till usage_context för att spåra kostnadsattribution för slutanvändare.

{
  "messages": [
    {
      "role": "user",
      "content": "What is Databricks?"
    }
  ],
  "max_tokens": 128,
  "usage_context":
    {
      "use_case": "external",
      "project": "project1",
      "priority": "high",
      "end_user_to_charge": "abcde12345",
      "a_b_test_group": "group_a"
    }
}

Uppdatera AI Gateway-funktioner på slutpunkter

Du kan uppdatera AI Gateway-funktioner på modellbetjänande slutpunkter som tidigare hade dem aktiverade och slutpunkter som inte hade dem. Det tar cirka 20–40 sekunder att tillämpa uppdateringar av AI Gateway-konfigurationer, men det kan ta upp till 60 sekunder att uppdatera hastighetsbegränsningen.

Följande visar hur du uppdaterar AI Gateway-funktioner på en modell som betjänar slutpunkten med hjälp av användargränssnittet för servering.

I avsnittet Gateway på slutpunktssidan kan du se vilka funktioner som är aktiverade. Om du vill uppdatera dessa funktioner klickar du på Redigera AI Gateway-.

Uppdatera AI Gateway-funktioner

Notebook-exempel

Följande notebook-fil visar hur du programmatiskt aktiverar och använder Ai Gateway-funktioner för Databricks Mosaic för att hantera och styra modeller från leverantörer. Mer information finns i PUT /api/2.0/serving-endpoints/{name}/ai-gateway.

Aktivera Databricks Mosaic AI Gateway-funktioner för notebook-filen

Hämta anteckningsbok

Ytterligare resurser