Dela via


Övervaka hanterade modeller med hjälp av AI Gateway-aktiverade slutsatsdragningstabeller

Viktig

Om din anpassade modell som betjänar slutpunkten kräver den äldre slutsatsdragningstabellen kan du läsa Inferenstabeller för övervakning och felsökning av modeller.

Den här artikeln beskriver AI Gateway-aktiverade slutsatsdragningstabeller för övervakning av hanterade modeller. Slutsatsdragningstabellen samlar automatiskt in inkommande begäranden och utgående svar för en slutpunkt och loggar dem som en Delta-tabell i Unity Catalog. Du kan använda data i den här tabellen för att övervaka, utvärdera, jämföra och finjustera maskininlärningsmodeller.

Vad är AI Gateway-aktiverade slutsatsdragningstabeller?

AI Gateway-aktiverade slutsatsdragningstabeller förenklar övervakning och diagnostik för modeller genom att kontinuerligt logga indata och svar för begäranden (förutsägelser) från Mosaic AI Model Serving-slutpunkter och spara dem i en Delta-tabell i Unity Catalog. Du kan sedan använda alla funktioner i Databricks-plattformen, till exempel Databricks SQL-frågor och notebook-filer för att övervaka, felsöka och optimera dina modeller.

Du kan aktivera slutsatsdragningstabeller på en befintlig eller nyskapad modell som betjänar slutpunkten, och begäranden till slutpunkten loggas sedan automatiskt till en tabell i Unity Catalog.

Några vanliga program för slutsatsdragningstabeller är följande:

  • Skapa en träningskorpus. Genom att sammanfoga inferenstabeller med grundsanningsetiketter kan du skapa ett träningskorpus som du kan använda för att träna om eller finjustera din modell och förbättra den. Med Lakeflow-jobb kan du konfigurera en kontinuerlig feedbackloop och automatisera omträningen.
  • Övervaka data och modellkvalitet. Du kan kontinuerligt övervaka modellens prestanda och dataavvikelse med hjälp av Lakehouse Monitoring. Lakehouse Monitoring genererar automatiskt översiktspaneler för data- och modellkvalitet som du kan dela med intressenter. Dessutom kan du aktivera aviseringar för att veta när du behöver träna om din modell baserat på förändringar i inkommande data eller minskningar av modellprestanda.
  • Felsöka produktionsproblem. Slutsatsdragningstabeller loggar data som HTTP-statuskoder, JSON-kod för begäran och svar, modellkörningstider samt spårningsutdata under modellkörningstider. Du kan använda dessa prestandadata i felsökningssyfte. Du kan också använda historiska data i slutsatsdragningstabeller för att jämföra modellprestanda på historiska begäranden.
  • Övervaka distribuerade AI-agenter. Slutsatsdragningstabeller kan också lagra MLflow-spårningar för AI-agenter som hjälper dig att felsöka problem och övervaka prestanda.

krav

  • Unity Catalog måste vara aktiverat på arbetsytan.
  • Både skaparen av slutpunkten och modifieraren måste ha Kan hantera behörighet på slutpunkten. Se åtkomstkontrollistor.
  • Både skaparen av slutpunkten och modifieraren måste ha följande behörigheter i Unity Catalog:
    • USE CATALOG behörigheter för den angivna katalogen.
    • USE SCHEMA behörigheter för det angivna schemat.
    • CREATE TABLE behörigheter i schemat.

Varning

Slutsatsdragningstabellen kan sluta logga data eller skadas om du gör något av följande:

  • Ändra tabellschemat.
  • Ändra tabellnamnet.
  • Ta bort tabellen.
  • Förlora behörigheter till Unity Catalog-katalogen eller schemat.
  • Ändra eller ta bort tabellägaren.

Aktivera och inaktivera slutsatsdragningstabeller

Det här avsnittet visar hur du aktiverar eller inaktiverar slutsatsdragningstabeller med hjälp av användargränssnittet för servering. Ägaren till slutsatsdragningstabellerna är den användare som skapade slutpunkten. Alla åtkomstkontrollistor (ACL: er) i tabellen följer standardbehörigheterna för Unity-katalogen och kan ändras av tabellägaren.

Använd följande steg för att aktivera slutsatsdragningstabeller när slutpunkten skapas:

  1. Klicka på Serving i Databricks Mosaic AI UI.
  2. Klicka på Skapa serverslutpunkt.
  3. I avsnittet AI Gateway väljer du Aktivera slutsatsdragningstabeller.

Du kan också aktivera slutsatsdragningstabeller på en befintlig slutpunkt. Så här redigerar du en befintlig slutpunktskonfiguration:

  1. I avsnittet AI Gateway klickar du på Redigera AI Gateway.
  2. Välj Aktivera slutsatsdragningstabeller.

Följ dessa instruktioner för att inaktivera slutsatsdragningstabeller:

  1. Gå till slutpunktssidan.
  2. Klicka på Redigera AI Gateway.
  3. Klicka på Aktivera slutsatsdragningstabell om du vill ta bort bockmarkeringen.
  4. När du är nöjd med AI Gateway-specifikationerna klickar du på Uppdatera.

Aktivera slutsatsdragningstabeller för AI-agenter

Du kan också aktivera slutsatsdragningstabeller för distribuerade AI-agenter, dessa slutsatsdragningstabeller lagrar nyttolast och begärandeinformation samt MLflow Trace-loggar.

Aktivera slutsatsdragningstabeller för AI-agenter med hjälp av följande metoder:

Mer information om MLflow-agentspårning finns i MLflow Tracing – generativ AI-observerbarhet.

Fråga efter och analysera resultat i slutsatsdragningstabellen

När dina distribuerade modeller är klara loggas alla begäranden som görs till dina modeller automatiskt i inferenstabellen, tillsammans med svaren. Du kan visa tabellen i användargränssnittet, köra frågor mot tabellen från Databricks SQL eller en notebook-fil eller köra frågor mot tabellen med hjälp av REST-API:et.

Om du vill visa tabellen i användargränssnittet: På slutpunktssidan klickar du på namnet på slutsatstabellen för att öppna tabellen i Katalogutforskaren.

länk till inferenstabellens namn på slutpunktssidan

Fråga tabellen från Databricks SQL eller en Databricks-notebook-fil: Du kan köra kod som liknar följande för att köra frågor mot slutsatsdragningstabellen.

SELECT * FROM <catalog>.<schema>.<payload_table>

Så här ansluter du dina slutsatsdragningstabelldata med information om den underliggande grundmodellen som hanteras på slutpunkten: Grundläggande modellinformation samlas in i system.serving.served_entities-systemtabellen.

Anmärkning

Systemtabellen system.serving.served_entities stöds inte för pay-per-token-slutpunkter, men du kan ansluta slutsatsdragnings- och användningstabeller för att få liknande information.

SELECT * FROM <catalog>.<schema>.<payload_table> payload
JOIN system.serving.served_entities se on payload.served_entity_id = se.served_entity_id

AI Gateway-aktiverat slutsatsdragningstabellschema

Slutsatsdragningstabeller som är aktiverade med HJÄLP av AI Gateway har följande schema:

Kolumnnamn Beskrivning Typ
request_date UTC-datumet då modellserverns begäran togs emot. DATUM
databricks_request_id En Azure Databricks-genererad begärandeidentifierare som är kopplad till alla modelltjänstbegäranden. STRÄNG
client_request_id Den begärandeidentifierare som tillhandahålls av användaren och som kan anges i den modell som betjänar begärandetexten. STRÄNG
request_time Tidsstämpeln där begäran tas emot. TIDSSTÄMPEL
status_code HTTP-statuskoden som returnerades från modellen. INT
sampling_fraction Samplingsfraktionen som användes i händelse av att begäran var nedsamplad. Det här värdet är mellan 0 och 1, där 1 representerar att 100% inkommande begäranden inkluderades. DUBBEL
execution_duration_ms Tiden i millisekunder som modellen utförde slutsatsdragning för. Detta inkluderar inte nätverksfördröjningar och representerar bara den tid det tog för modellen att generera förutsägelser. BIGINT
request JSON-innehållet i den råa begäran som skickades till slutpunkten där modellen betjänas. STRÄNG
response JSON-brödtexten för råsvaret som returnerades av modellen som betjänar slutpunkten. STRÄNG
served_entity_id Det unika ID:t för den betjänade entiteten. STRÄNG
logging_error_codes De fel som uppstod när data inte kunde loggas. Felkoder inkluderar MAX_REQUEST_SIZE_EXCEEDED och MAX_RESPONSE_SIZE_EXCEEDED. Array
requester ID för användaren eller tjänstens huvudprincip vars behörigheter används för anropsbegäran till serveringsslutpunkten. Det här fältet returnerar NULL för anpassade modellers routningsoptimerade slutpunkter. STRÄNG

Tabellscheman för AI-agentinferens

För AI-agenter skapar Databricks tre slutsatsdragningstabeller för varje distribution för att logga begäranden och svar till och från den modell som betjänar slutpunkten:

Slutsatsdragningstabell Exempel på Azure Databricks-tabellnamn Tabellinnehåll
Nyttolast {catalog_name}.{schema_name}.{model_name}_payload Råa JSON-begärande- och svarsnyttolaster
Loggar för payloadförfrågan {catalog_name}.{schema_name}.{model_name}_payload_request_logs Formaterad begäran och svar, MLflow-spårningar
Bedömningsloggar för nyttolast {catalog_name}.{schema_name}.{model_name}_payload_assessment_logs Formaterad feedback, enligt beskrivningen i granskningsappen, för varje begäran

Användarna kan förvänta sig data i nyttolasttabeller inom en timme efter att de interagerat med server-slutpunkten. Loggar för begäranden om nyttolast och utvärdering kan ta längre tid att fyllas i och härleds från tabellen med rå nyttolast. Du kan själv extrahera förfrågnings- och utvärderingsloggar från nyttolasttabellen. Borttagningar och uppdateringar av nyttolasttabellen återspeglas inte i loggarna för nyttolastbegäran eller utvärderingsloggarna för nyttolasten.

Anmärkning

Om du har Azure Storage Firewall aktiverat kontaktar du databricks-kontoteamet för att aktivera slutsatsdragningstabeller för dina slutpunkter.

Följande visar schemat för tabellen för payload-begärandeloggar:

Kolumnnamn Beskrivning Typ
databricks_request_id En Azure Databricks-genererad begärandeidentifierare som är kopplad till alla modelltjänstbegäranden. STRÄNG
client_request_id En valfri klientgenererad begärandeidentifierare som kan anges i den modell som betjänar begärandetexten. STRÄNG
date UTC-datumet då modellserverns begäran togs emot. DATUM
timestamp_ms Tidsstämpeln i epokens millisekunder när modelltjänstanropet togs emot. LÅNG
timestamp Tidsstämpel för begäran. TIDSSTÄMPEL
status_code HTTP-statuskoden som returnerades från modellen. INT
sampling_fraction Samplingsfraktionen som användes i händelse av att begäran var nedsamplad. Det här värdet är mellan 0 och 1, där 1 representerar att 100% inkommande begäranden inkluderades. DUBBEL
execution_time_ms Utförandetiden i millisekunder för vilken modellen genomförde slutsatsdragning. Detta inkluderar inte nätverksfördröjningar och representerar bara den tid det tog för modellen att generera förutsägelser. LÅNG
conversation_id Konversations-ID:t som extraherats från begärandeloggarna. STRÄNG
request Den sista användarfrågan från användarens konversation. STRÄNG
response Det sista svaret till användaren. STRÄNG
request_raw Strängrepresentationen av begäran. STRÄNG
response_raw Strängrepresentation av svar. STRÄNG
trace Strängrepresentation av spårning som extraherats från databricks_options av svarstrukturen. STRÄNG
request_metadata En karta över metadata som är relaterade till den modell som betjänar slutpunkten som är associerad med begäran. Den här kartan innehåller slutpunktsnamnet, modellnamnet och modellversionen som används för slutpunkten. KARTA<STRÄNG, STRÄNG>
schema_version Schemaversionen. STRÄNG

Följande visar strukturen för tabellen över utvärderingsloggar för payload:

Kolumnnamn Beskrivning Typ
request_id Ett ID för Databricks-begäran. STRÄNG
step_id Steg-ID: t som härleds från hämtningsutvärderingen. STRÄNG
source Ett struct-fält som innehåller information om vem som skapade utvärderingen. Struktur
timestamp Tidsstämpel för begäran. TIDSSTÄMPEL
text_assessment Data för eventuell feedback om agentens svar från granskningsappen. STRÄNG
retrieval_assessment Data gällande eventuell feedback på de dokument som hämtats för ett svar. STRÄNG

begränsningar

  • Arbetsbelastningar med provisionerad genomströmningskapacitet.
    • Om du skapar en ny modell som betjänar slutpunkten som använder etablerat dataflöde stöds endast AI Gateway-aktiverade slutsatsdragningstabeller.
    • Om du har en befintlig modell som betjänar slutpunkten som använder etablerat dataflöde och aldrig tidigare har konfigurerat äldre slutsatsdragningstabeller kan du uppdatera den så att den använder AI Gateway-aktiverade slutsatsdragningstabeller.
    • Om du har en befintlig modell som betjänar slutpunkten som använder etablerat dataflöde och den har äldre slutsatsdragningstabeller för närvarande eller tidigare konfigurerade, kan du inte uppdatera den så att den använder AI Gateway-aktiverade slutsatsdragningstabeller.
    • För strömningsloggar för AI-agenters svar aggregeras endast ChatCompletion-kompatibla fält och spår.
  • Anpassade modellarbetsbelastningar:
    • Om du skapar en ny modell som betjänar en slutpunkt som hanterar en anpassad modell rekommenderar Databricks att du använder AI Gateway-aktiverade slutsatsdragningstabeller. Om den äldre inferenstabellupplevelsen krävs kan du bara konfigurera din nya slutpunkt för AI Gateway med REST-API:et.
    • Om du har en befintlig modell som betjänar slutpunkten som hanterar en anpassad modell och den inte har inferenstabeller konfigurerade, kan du uppdatera den så att den använder AI Gateway-aktiverade slutsatsdragningstabeller.
    • Om du har en befintlig modell som betjänar en slutpunkt som hanterar en anpassad modell och den har konfigurerade äldre slutsatsdragningstabeller måste du inaktivera den äldre slutsatsdragningstabellen innan du kan uppdatera slutpunkten för att använda AI Gateway-aktiverade slutsatsdragningstabeller.
    • När AI Gateway-aktiverade slutsatsdragningstabeller har aktiverats kan du inte växla till äldre slutsatsdragningstabeller.
  • För närvarande sker leverans av slutsatsloggar för slutpunkter som betjänar Foundation Model API:er, externa modeller eller agenter på bästa möjliga sätt. Du kan förvänta dig att loggarna är tillgängliga inom 1 timme efter en begäran. Kontakta ditt Databricks-kontoteam för mer information.
  • Den maximala storleken för begäran och svar som loggas är 1 MiB (1 048 576 byte). Begäran- och svarslaster som överskrider detta loggas som null och logging_error_codes fylls med MAX_REQUEST_SIZE_EXCEEDED eller MAX_RESPONSE_SIZE_EXCEEDED.
  • Inferenstabeller för routningsoptimerade modellserveringsslutpunkter finns i offentlig förhandsversion.
  • Inferenstabellloggar är inte garanterade att fyllas i om modellen som betjänar slutpunkten returnerar ett fel.
    • För anpassade modellslutpunkter kanske inga loggar registreras vid 4xx- eller 5xx-fel.
    • För andra slutpunkter kanske loggar inte registreras för felen 401, 403, 429 eller 500.

För begränsningar som är specifika för AI Gateway, se Begränsningar. För allmänna begränsningar av modelltjänstgöringens slutpunkter, se Modelltjänstgöringens gränser och regioner.