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.
Platí pro:
Databricks SQL
Databricks Runtime
Important
Tato funkce je v beta verzi.
Funkce ai_decide() hodnotí jednu nebo více otázek vůči textu nebo strukturovaným datům. U každé otázky vrací buď pravděpodobnost, volbu z pojmenovaných kritérií, nebo skóre na uspořádané škále. Použijte ho k směrování tiketů na podporu, posouzení, zda akce vyžaduje pozornost, nebo k určení priorit podle hodnoticího kritéria, které si sami definujete.
Všechny otázky v hovoru používají stejný vstup, nazývaný state. Můžete kombinovat různé typy otázek v jednom hovoru a použít vrácené odpovědi v SQL dotazech dále po proudu.
Zabezpečení dat
Vaše data dokumentu se zpracovávají v rámci hraniční sítě zabezpečení Databricks. Databricks neukládá parametry, které jsou předávány do volání funkcí AI, ale uchovává metadata o běhu během operací, například použitou verzi Databricks Runtime.
Požadavky
Licence Apache 2.0
Základní modely, které lze v tuto chvíli použít, jsou licencované v rámci licence Apache 2.0, Copyright © Apache Software Foundation. Zákazníci jsou odpovědní za dodržování příslušných modelových licencí.
Databricks doporučuje zkontrolovat tyto licence, abyste zajistili soulad s platnými podmínkami. Pokud se modely objeví v budoucnu, které fungují lépe podle interních srovnávacích testů Databricks, může Databricks změnit model (a seznam použitelných licencí uvedených na této stránce).
Model, který tuto funkci pohání, je zpřístupněn pomocí Model Serving Foundation Model API. Informace o modelech dostupných v Databricks a licencích a zásadách, které řídí používání těchto modelů, najdete v příslušných podmínkách modelu .
Pokud se objeví modely, které fungují lépe podle interních srovnávacích testů Azure Databricks, databricks může změnit modely a aktualizovat dokumentaci.
Tato funkce je dostupná jenom v některých oblastech, viz dostupnost funkce AI.
Pro pracovní prostory s doplňkem Rozšířené zabezpečení a dodržování předpisů
- Informace o regionální podpoře pro
ai_decidenaleznete v příslušném standardu pro dodržování předpisů. - Informace o tom, jak tuto funkci povolit v pracovním prostoru, najdete v tématu Správa verzí Preview služby Azure Databricks.
- Informace o regionální podpoře pro
Tato funkce není dostupná v Azure Databricks SQL Classic.
Je vyžadováno prostředí Databricks Runtime 15.4 LTS nebo novější. Databricks Runtime 18.2 nebo novější je doporučen pro nejlepší výkon a přístup k nejnovějším funkcím.
Podívejte se na stránku s cenami SQL služby Databricks.
Syntax
ai_decide(state, questions [, options])
Arguments
state: A neboSTRINGvýraz obsahujícíVARIANTobsah, kontext a příklady potřebné k zodpovězení otázek. Hodnota se může lišit podle řádku. Přijímá buď:- Obsahuje
STRINGprostý text nebo objekt či pole kódované v JSON. JSON objekty a pole jsou interpretovány jako strukturovaná data. Ostatní řetězce jsou považovány za text. - A
VARIANTvytvořené jinou funkcí umělé inteligence (napříkladai_parse_documentneboai_extract)
- Obsahuje
questions: KonstantníSTRINGvýraz obsahující neprázdný JSON objekt. Každý klíč je neprázdné ID otázky a každá hodnota je definice otázky. Stejné definice platí pro každý řádek. Viz definice otázek.options: volitelnýMAP<STRING, STRING>konstantní výraz. Podporovaná možnost jeversion, s hodnotou'1.0'. Verze 1.0 je výchozí. Pro explicitní specifikaci použijtemap('version', '1.0').
Definice otázek
Každá definice otázky vyžaduje type a instructions, plus criteria pokud je vyžadován typem otázky. Požadovaná pole nemohou být .null Jiné obory nejsou podporovány.
-
type: Jeden znoul,choiceneboscore. -
instructions: Instrukce pro vyhodnocení stavu, vyjádřené jako řetězec, JSON objekt nebo JSON pole. -
criteria: Popisy, které definují, jak odpovědět. Požadovaný tvar závisí natype.
Otázky ohledně Noula
Použijte k noul odhadu pravděpodobnosti, že otázka je pravdivá. Výsledkem je číslo od 0 do 1.
Volitelný criteria objekt může obsahovat true a klávesy false k popisu těchto výsledků. Každý popis může být řetězec, JSON objekt nebo JSON pole. Vynechejte criteria to, když tyto popisy nepotřebujete. Pokud je podáno, criteria musí být objektem a nemůže být null.
{
"needs_escalation": {
"type": "noul",
"instructions": "Does this ticket need immediate escalation?",
"criteria": {
"true": "An active service outage blocks the customer from working.",
"false": "The customer can continue working or has a workaround."
}
}
}
Otázky k výběru
Použijte choice k výběru jednoho štítku ze sady pojmenovaných kritérií.
Požadovaný criteria objekt mapuje 1 na 255 neprázdných štítků na popisy. Každý popis může být řetězec, JSON objekt, JSON pole nebo null. Používejte null jen tehdy, když samotné označení popisuje volbu.
{
"team": {
"type": "choice",
"instructions": "Which team should handle this ticket?",
"criteria": {
"shipping": "Delivery or shipment issues",
"billing": "Payment or invoice issues",
"technical_support": "Product technical problems"
}
}
}
Otázky na hodnocení skóre
Použijte score k hodnocení stavu podle uspořádané škály.
Požadované criteria pole obsahuje 2 až 10 popisů, seřazených od nejnižšího po nejvyšší. Každý popis může být řetězec, JSON objekt nebo JSON pole. První kritérium má index 0, další má index 1, a tak dále.
Výsledkem je pravděpodobnostně vážený průměr těchto indexů. Může být zlomková a pohybuje se od 0 počtu kritérií minus jedna. Například pravděpodobnosti 0.1, 0.3, a 0.6 napříč třemi kritérii dávají skóre 1.5.
{
"urgency": {
"type": "score",
"instructions": "How urgent is this ticket?",
"criteria": [
"Routine request with no time pressure",
"Time-sensitive issue with a workaround",
"Critical issue that blocks the customer"
]
}
}
Returns
Vrací a VARIANT s poli response, metadata, a error_message. Pole response obsahuje answers objekt s jedním záznamem na každou otázku. ID otázek přesně odpovídá těm, která jsou uvedena v parametru questions . Každá odpověď obsahuje type pole odpovídající typu otázky: noul, choice, nebo score. Následující příklady ukazují response pole pro každý typ otázky:
Noul otázky: A
probabilityod 0 do 1 odhaduje pravděpodobnost, že otázka je pravdivá.{ "answers": { "needs_escalation": { "type": "noul", "probability": 0.1 } } }Otázky volby: A obsahující
choiceštítek s nejvyšší pravděpodobností a objekt,probabilitieskterý mapuje každý štítek na jeho pravděpodobnost.confidenceje číslo od 0 do 1, které ukazuje, jak dobře stát hodnocení podporuje. Hodnotyprobabilitiesse součtě tvoří 1. Názvy štítků přesně odpovídají těm uvedeným vcriteria.{ "answers": { "team": { "type": "choice", "choice": "shipping", "probabilities": { "shipping": 0.8, "billing": 0.1, "technical_support": 0.1 }, "confidence": 0.9 } } }Skóre otázky: A obsahující
scorepravděpodobnostně vážený průměr indexů kritérií, mapovacílegendřetězcové indexy (například"0") na původní popisy kritérií aprobabilitiesobjekt mapující tyto indexy na pravděpodobnosti.confidenceje číslo od 0 do 1, které ukazuje, jak dobře stát hodnocení podporuje. Hodnotyprobabilitiesse součtě tvoří 1.{ "answers": { "urgency": { "type": "score", "score": 1.5, "legend": { "0": "Routine request with no time pressure", "1": "Time-sensitive issue with a workaround", "2": "Critical issue that blocks the customer" }, "probabilities": { "0": 0.1, "1": 0.3, "2": 0.6 }, "confidence": 0.8 } } }
Po úspěchu identifikuje metadata.version použitou verzi funkce a error_message je .null
Při selhání response je a nullerror_message popisuje selhání. Neplatné typy argumentů nebo definice nekonstantních otázek mohou také způsobit chyby dotazů.
Příklady
Následující příklad ukazuje, jak hodnotit několik otázek během jednoho hovoru. Generované odpovědi se mohou lišit mezi jednotlivými hovory.
Vyhodnoťte více typů otázek
Tento příklad hodnotí produktový seznam podle kategorie, použití recyklovaných materiálů a vhodnosti pro turistiku v deštivém počasí:
SELECT ai_decide(
'{"name": "TrailShell jacket", "description": "Lightweight waterproof hiking jacket made from recycled polyester. Packs into its own pocket."}',
'{
"category": {
"type": "choice",
"instructions": "Which product category best fits this item?",
"criteria": {
"outerwear": "Jackets, coats, and other protective outer layers",
"footwear": "Shoes, boots, and sandals",
"accessories": "Bags, hats, and other accessories"
}
},
"recycled_materials": {
"type": "noul",
"instructions": "Does the listing state that the product uses recycled materials?"
},
"hiking_suitability": {
"type": "score",
"instructions": "How suitable is this product for hiking in rainy weather?",
"criteria": [
"Not suitable for outdoor use in rain",
"Offers some protection from rain",
"Designed for hiking with waterproof protection"
]
}
}',
map('version', '1.0')
) AS decision;
Příklad odpovědi:
{
"response": {
"answers": {
"category": {
"type": "choice",
"choice": "outerwear",
"probabilities": { "outerwear": 0.95, "footwear": 0.01, "accessories": 0.04 },
"confidence": 0.95
},
"recycled_materials": { "type": "noul", "probability": 0.98 },
"hiking_suitability": {
"type": "score",
"score": 1.8,
"legend": {
"0": "Not suitable for outdoor use in rain",
"1": "Offers some protection from rain",
"2": "Designed for hiking with waterproof protection"
},
"probabilities": { "0": 0.05, "1": 0.1, "2": 0.85 },
"confidence": 0.9
}
}
},
"metadata": { "version": "1.0" },
"error_message": null
}