Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Důležitý
Pokud váš koncový bod pro poskytování vlastního modelu vyžaduje starší systém odvozovacích tabulek, viz Odvozovací tabulky pro monitorování a ladění modelů.
Tento článek popisuje tabulky odvozování s podporou brány AI pro monitorování obsluhovaných modelů. Tabulka odvozování automaticky zaznamenává příchozí požadavky a odchozí odpovědi pro koncový bod a protokoluje je jako tabulku Unity Catalog Delta. Pomocí dat v této tabulce můžete monitorovat, vyhodnocovat, porovnávat a vyladit modely strojového učení.
Co jsou inferenční tabulky s podporou AI Gateway?
Tabulky pro odvozování podporované bránou AI zjednodušují monitorování a diagnostiku modelů tím, že průběžně zaznamenávají vstupy a odpovědi požadavků (předpovědi) z koncových bodů obsluhy modelů Mosaic AI a ukládají je do tabulky Delta v katalogu Unity. Pak můžete použít všechny možnosti platformy Databricks, jako jsou dotazy a poznámkové bloky SQL Databricks, k monitorování, ladění a optimalizaci modelů.
Tabulky odvozování můžete povolit u existujícího nebo nově vytvořeného modelu obsluhující koncový bod a požadavky na tento koncový bod se pak automaticky zaprotokolují do tabulky v katalogu Unity.
Mezi běžné aplikace pro odvozování tabulek patří:
- Vytvořte trénovací korpus. Spojením tabulek odvozování s popisky základní pravdy můžete vytvořit trénovací korpus, který můžete použít k přetrénování nebo vyladění a vylepšení modelu. Pomocí úloh Lakeflow můžete nastavit nepřetržitou smyčku zpětné vazby a automatizovat opakované trénování.
- Monitorování kvality dat a modelu Pomocí monitorování Lakehouse můžete průběžně monitorovat výkon modelu a odchylky dat. Monitorování Lakehouse automaticky generuje řídicí panely kvality dat a modelů, které můžete sdílet se zúčastněnými stranami. Kromě toho můžete upozornění povolit, abyste věděli, kdy potřebujete model přetrénovat na základě posunů v příchozích datech nebo snížení výkonu modelu.
- Odstraňování chyb v produkci Záznamy inferenčních tabulek obsahují data jako stavové kódy HTTP, kód JSON požadavku a odpovědi, doby spuštění modelu a výstupy trasování během běhu modelu. Tato data o výkonu můžete použít pro účely ladění. K porovnání výkonu modelu u historických požadavků můžete použít také historická data v tabulkách odvozování.
- Monitorování nasazených agentů AI Inferenční tabulky mohou také ukládat trasování MLflow pro AI agenty, kteří pomáhají ladit problémy a monitorovat výkon.
Požadavky
- Tabulky odvozování s podporou brány AI jsou podporované pro koncové body, které obsluhují některou z následujících možností:
- Pracovní prostor Databricks v oblasti, ve které se podporuje provozování modelu. Viz Model obsluhující regionální dostupnost.
- V případě pracovních prostorů s nakonfigurovaným privátním připojením v účtu úložiště Katalogu Unity postupujte podle kroků v části Konfigurace privátního připojení k prostředkům Azure.
- Databricks doporučuje povolit prediktivní optimalizaci pro optimalizovaný výkon tabulek odvozování.
- Váš pracovní prostor musí mít povolený katalog Unity.
- Autor koncového bodu i modifikátor musí mít Může spravovat oprávnění ke koncovému bodu. Viz seznamy řízení přístupu.
- Tvůrce koncového bodu i modifikátor musí mít v katalogu Unity následující oprávnění :
-
USE CATALOG
oprávnění k zadanému katalogu. -
USE SCHEMA
oprávnění k zadanému schématu. -
CREATE TABLE
oprávnění ve schématu.
-
Varování
Tabulka odvozování může zastavit protokolování dat nebo se poškodit, pokud uděláte některou z následujících věcí:
- Změňte schéma tabulky.
- Změňte název tabulky.
- Odstraňte tabulku.
- Ztratí oprávnění k přístupu ke katalogu nebo schématu Unity Catalogu.
- Změňte nebo odstraňte vlastníka tabulky.
Povolení a zakázání odvozovacích tabulek
V této části se dozvíte, jak povolit nebo zakázat tabulky odvozování pomocí uživatelského rozhraní obsluhy. Vlastníkem tabulek odvozování je uživatel, který koncový bod vytvořil. Všechny seznamy řízení přístupu (ACL) v tabulce se řídí standardními oprávněními katalogu Unity a může je upravit vlastník tabulky.
K povolení odvozovacích tabulek během vytváření koncového bodu použijte následující postup:
- V uživatelském rozhraní Databricks Mosaic AI klikněte na Sloužící.
- Klikněte na Vytvořit obslužný koncový bod.
- V části AI Gateway vyberte Povolit tabulky pro inferenci.
U existujícího koncového bodu můžete také povolit odvozovací tabulky. Pokud chcete upravit existující konfiguraci koncového bodu, postupujte takto:
- V části Brána AI klikněte na Upravit bránu AI.
- Vyberte Povolit odvozovací tabulky.
Podle těchto pokynů zakažte odvozovací tabulky:
- Přejděte na stránku koncového bodu.
- Klikněte na Upravit bránu AI.
- Klikněte na Povolit odvozovací tabulku a zrušte zaškrtnutí.
- Jakmile budete spokojeni se specifikacemi služby AI Gateway, klikněte na Aktualizovat.
Povolení odvozovacích tabulek pro agenty AI
Můžete také povolit inferenční tabulky pro nasazené agenty AI. Tyto inferenční tabulky ukládají datové části a podrobnosti požadavků a také protokoly sledování MLflow.
Pomocí následujících metod povolte tabulky odvozování pro agenty AI:
- Agenti nasazení pomocí
mlflow.deploy()
rozhraní API mají automaticky povolené odvozovací tabulky. Viz Nasazení agenta pro aplikace generující AI. - Pro programová nasazení nastavte proměnnou
ENABLE_MLFLOW_TRACING
prostředí naTrue
v konfiguraci koncového bodu. Viz Přidání proměnných prostředí ve formátu prostého textu.
Další informace o trasování agenta MLflow najdete v části MLflow Tracing - pozorovatelnost generativní AI.
Dotazování a analýza výsledků v tabulce odvozování
Jakmile budou vaše obsluhované modely připravené, všechny požadavky provedené na vašich modelech se automaticky zaprotokolují do tabulky odvozování spolu s odpověďmi. Tabulku můžete zobrazit v uživatelském rozhraní, dotazovat se na tabulku z Databricks SQL nebo poznámkového bloku nebo dotazovat tabulku pomocí rozhraní REST API.
Zobrazení tabulky v uživatelském rozhraní: Na stránce koncového bodu kliknutím na název tabulky odvozování otevřete tabulku v Průzkumníku katalogu.
Dotazování na tabulku z Databricks SQL nebo poznámkového bloku Databricks: Můžete spustit kód podobný následujícímu dotazu na tabulku odvozování.
SELECT * FROM <catalog>.<schema>.<payload_table>
Chcete-li připojit data odvozovací tabulky s podrobnostmi o podkladovém základním modelu na vašem koncovém bodě: Podrobnosti o základním modelu jsou zachyceny v systémové tabulce system.serving.served_entities.
Poznámka:
system.serving.served_entities
Systémová tabulka není podporovaná pro koncové body s platbami za tokeny, ale můžete připojit odvozování a tabulky využití, abyste získali podobné podrobnosti.
SELECT * FROM <catalog>.<schema>.<payload_table> payload
JOIN system.serving.served_entities se on payload.served_entity_id = se.served_entity_id
schéma odvozovací tabulky s podporou brány AI
Tabulky odvození povolené pomocí služby AI Gateway mají následující schéma:
Název sloupce | Popis | Typ |
---|---|---|
request_date |
Datum UTC, kdy byl přijat požadavek na obslužný model. | DATUM |
databricks_request_id |
Identifikátor požadavku vygenerovaný službou Azure Databricks připojený ke všem žádostem obsluhující model | ŘETĚZEC |
client_request_id |
Identifikátor požadavku zadaný uživatelem, který lze zadat v modelu obsluhující tělo požadavku. | ŘETĚZEC |
request_time |
Časové razítko, kdy je požadavek přijat. | ČASOVÁ ZNAČKA |
status_code |
Stavový kód HTTP vrácený z modelu. | INT |
sampling_fraction |
Podíl vzorkování použitý v případě, že byl požadavek snížen vzorkováním. Tato hodnota je mezi 0 a 1, kde 1 představuje, že bylo zahrnuto 100% příchozích požadavků. | DVOJITÝ |
execution_duration_ms |
Doba v milisekundách, pro kterou model provedl odvozování. Toto nezahrnuje dodatečné latence sítě a představuje pouze čas, který modelu zabralo generování předpovědí. | BIGINT |
request |
Nezpracovaný text JSON požadavku, který byl odeslán do koncového bodu zpracování modelu. | ŘETĚZEC |
response |
Surové tělo JSON odpovědi, které vrátil koncový bod obsluhující model. | ŘETĚZEC |
served_entity_id |
Jedinečné ID obsluhované entity. | ŘETĚZEC |
logging_error_codes |
Chyby, ke kterým došlo, když se nepodařilo zaprotokolovat data. Kódy chyb zahrnují MAX_REQUEST_SIZE_EXCEEDED a MAX_RESPONSE_SIZE_EXCEEDED . |
POLE |
requester |
ID uživatele nebo služebního principála, jehož oprávnění se používají k vyvolání žádosti u koncového bodu služby. Toto pole se vrátí NULL pro koncové body vlastního modelu optimalizované pro směrování . |
ŘETĚZEC |
Schémata tabulek odvození agenta AI
Pro agenty AI vytvoří Databricks tři inferenční tabulky pro každé nasazení, aby se protokolovaly požadavky a odpovědi na obslužný bod modelu.
Odvozovací tabulka | Příklad názvu tabulky Azure Databricks | Obsah tabulky |
---|---|---|
Užitečný náklad | {catalog_name}.{schema_name}.{model_name}_payload |
Nezpracovaná datová zátěž požadavků a odpovědí JSON |
Protokoly žádostí o užitečné zatížení | {catalog_name}.{schema_name}.{model_name}_payload_request_logs |
Formátované požadavky a odpovědi, trasování MLflow |
Protokoly posouzení užitečného zatížení | {catalog_name}.{schema_name}.{model_name}_payload_assessment_logs |
Naformátovaná zpětná vazba, jak je uvedeno v recenzní aplikaci, pro každý požadavek |
Uživatelé můžou očekávat data v tabulkách uživatelských dat do jedné hodiny od interakce s obslužným bodem. Protokoly záznamů žádostí o data a posouzení mohou trvat déle, než se naplní, a jsou odvozeny z tabulky surových dat. Protokoly žádostí a posouzení můžete extrahovat sami z datové tabulky. Odstranění a aktualizace tabulky užitečného zatížení se neprojeví v protokolech žádostí o užitečné zatížení ani v protokolech posouzení užitečného zatížení.
Poznámka:
Pokud máte povolenou bránu firewall služby Azure Storage, obraťte se na tým Databricks a nechte si povolit inferenční tabulky pro vaše koncové body.
Následující text ukazuje schéma pro tabulku protokolů požadavků pro Payload:
Název sloupce | Popis | Typ |
---|---|---|
databricks_request_id |
Identifikátor požadavku vygenerovaný službou Azure Databricks připojený ke všem žádostem obsluhující model | ŘETĚZEC |
client_request_id |
Volitelný identifikátor požadavku vygenerovaný klientem, který lze zadat v modelu obsluhující tělo požadavku. | ŘETĚZEC |
date |
Datum UTC, kdy byl přijat požadavek na obslužný model. | DATUM |
timestamp_ms |
Časové razítko v milisekundách od počátku epochy, kdy byl přijat požadavek na obsluhu modelu. | Dlouhý |
timestamp |
Razítko požadavku. | ČASOVÁ ZNAČKA |
status_code |
Stavový kód HTTP vrácený z modelu. | INT |
sampling_fraction |
Podíl vzorkování použitý v případě, že byl požadavek snížen vzorkováním. Tato hodnota je mezi 0 a 1, kde 1 představuje, že bylo zahrnuto 100% příchozích požadavků. | DVOJITÝ |
execution_time_ms |
Doba provádění v milisekundách, pro kterou model provedl odvozování. Toto nezahrnuje dodatečné latence sítě a představuje pouze čas, který modelu zabralo generování předpovědí. | Dlouhý |
conversation_id |
ID konverzace extrahované z protokolů požadavků. | ŘETĚZEC |
request |
Poslední dotaz uživatele z konverzace uživatele. | ŘETĚZEC |
response |
Poslední odpověď na uživatele. | ŘETĚZEC |
request_raw |
Řetězcová reprezentace požadavku. | ŘETĚZEC |
response_raw |
Řetězcová reprezentace reakce | ŘETĚZEC |
trace |
Řetězcové znázornění trasování extrahovaného ze databricks_options struktury odpovědi |
ŘETĚZEC |
request_metadata |
Mapa metadat souvisejících s koncovým bodem obsluhující model přidružený k požadavku Tato mapa obsahuje název koncového bodu, název modelu a verzi modelu používanou pro váš koncový bod. | MAPA<ŘETĚZEC, ŘETĚZEC> |
schema_version |
Verze schématu. | ŘETĚZEC |
Následující ukazuje schéma tabulky protokolů posouzení datové sady:
Název sloupce | Popis | Typ |
---|---|---|
request_id |
ID tohoto požadavku Databricks | ŘETĚZEC |
step_id |
ID kroku odvozené z vyhodnocení načítání. | ŘETĚZEC |
source |
Pole struktury obsahující informace o tom, kdo posouzení vytvořil. | STRUKTURA |
timestamp |
Časové razítko požadavku. | ČASOVÁ ZNAČKA |
text_assessment |
Data o všech názorech na odpovědi agenta z aplikace pro kontrolu. | ŘETĚZEC |
retrieval_assessment |
Údaje pro jakoukoli zpětnou vazbu týkající se dokumentů načtených pro odpověď. | ŘETĚZEC |
Omezení
- Úlohy zřízené propustnosti:
- Pokud vytvoříte nový model obsluhující koncový bod, který používá zřízenou propustnost, podporují se pouze tabulky odvozování s podporou brány AI.
- Pokud máte existující model obsluhující koncový bod, který používá zřízenou propustnost a nikdy předtím nenakonfiguroval starší tabulky odvozování, můžete ho aktualizovat tak, aby používaly tabulky odvozování s podporou brány AI.
- Pokud máte existující model obsluhující koncový bod, který používá zřízenou propustnost a má aktuálně nakonfigurované starší tabulky odvozování nebo dříve nakonfigurované, nemůžete ho aktualizovat tak, aby používaly tabulky odvozování s podporou brány AI.
- Pro logy odpovědí agenta AI během streamování se agregují pouze pole a trasování kompatibilní s ChatCompletion.
- Vlastní úlohy modelu:
- Pokud vytvoříte nový model obsluhující koncový bod, který slouží vlastnímu modelu, databricks doporučuje používat tabulky odvozování s podporou brány AI. Pokud je potřeba použít starší prostředí tabulky odvozování, můžete nakonfigurovat nový koncový bod pouze pro AI Gateway pomocí rozhraní REST API.
- Pokud máte existující koncový bod obsluhující model, který obsluhuje vlastní model a nemá nakonfigurované tabulky odvozování, můžete ho aktualizovat tak, aby používal tabulky odvozování s podporou AI Gateway.
- Pokud máte existující koncový bod obsluhující model, který slouží vlastnímu modelu a má nakonfigurované tabulky odvozování starší verze, musíte zakázat tabulku odvozování starší verze, abyste mohli koncový bod aktualizovat tak, aby používal tabulky odvozování s podporou brány AI.
- Po povolení odvozovacích tabulek s podporou brány AI není možné přepnout na tabulky odvození starší verze.
- Doručování protokolů odvozovacích tabulek pro koncové body, které obsluhují úlohy rozhraní API základního modelu, externí modely nebo agenty, je v současné době na principu nejlepšího úsilí. Můžete očekávat, že protokoly budou k dispozici do 1 hodiny od žádosti. Další informace získáte od týmu účtu Databricks.
- Maximální velikost požadavku a odpovědi, které se protokolují, je 1 MiB (1 048 576 bajtů). Datové části požadavků a odpovědí, které tuto hodnotu překračují, jsou zaznamenány v protokolu jako
null
alogging_error_codes
jsou naplněnyMAX_REQUEST_SIZE_EXCEEDED
neboMAX_RESPONSE_SIZE_EXCEEDED
. - Tabulky inferencí pro koncové body obsluhy modelů pro optimalizaci směrování jsou ve veřejné náhledové verzi.
Informace o omezeních specifických pro AI Gateway najdete v tématu Omezení. Obecná omezení služby koncového bodu pro model najdete v tématu Omezení a oblasti poskytování modelu.