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.
Note
Azure AI Vyhledávač je k dispozici prostřednictvím portálu Azure, rozhraní REST API a Sady Azure SDK. Podporuje také Foundry IQ, spravovanou znalostní vrstvu, která transformuje podnikový obsah na opakovaně použitelné znalostní báze s podporou oprávnění pro agenty na portálu Microsoft Foundry.
Vlastní dovednosti jsou webová API, která implementují specifické rozhraní. Vlastní schopnost se dá implementovat u libovolného veřejně adresovatelného prostředku. Nejběžnější implementace pro vlastní dovednosti jsou:
- Azure Functions pro vlastní logické funkce
- Azure Web Apps pro jednoduché kontejnerizované dovednosti AI
- Azure Kubernetes Service pro složitější nebo větší dovednosti.
Konfigurace sady dovedností
Pro škálování se používají následující vlastnosti uživatelské dovednosti. Projděte si rozhraní vlastních dovedností a seznamte se se vstupy a výstupy, které by vlastní dovednost měla implementovat.
Nastavte
batchSizena vlastní dovednost, abyste nakonfigurovali počet záznamů odesílaných při jednom vyvolání dovednosti.Nastavte
degreeOfParallelismke kalibraci počtu souběžných požadavků, které indexer provádí na vaši funkci.Nastavte
timeouthodnotu dostatečnou pro schopnost vrátit platnou odpověď.indexerV definici nastavtebatchSizepočet dokumentů, které by měly být načteny ze zdroje dat a rozšířeny souběžně.
Úvahy
Neexistuje žádné univerzální doporučení. Naplánujte testování různých konfigurací, abyste dosáhli optimálního výsledku. Strategie vertikálního navýšení kapacity jsou založené buď na menším počtu velkých požadavků, nebo na mnoha malých požadavcích.
Kardinalita vyvolání dovedností: ujistěte se, jestli se vlastní dovednost provádí jednou pro každý dokument (
/document/content) nebo vícekrát na dokument (/document/reviews_text/pages/*). Pokud se to děje vícekrát na dokument, zůstaňte na dolní hranicibatchSizeadegreeOfParallelismke snížení četnosti změn a zkuste postupně zvyšovat velikost dávky indexeru pro lepší škálování.Koordinujte vlastní dovednost
batchSizea indexerbatchSize, a ujistěte se, že nevytváříte úzká místa. Pokud je například velikost dávky indexeru 5 a velikost dávky dovednosti je 50, budete k vyplnění vlastní žádosti o dovednosti potřebovat 10 dávek indexeru. V ideálním případě by velikost dávky dovednosti měla být menší nebo rovna velikosti dávky indexeru.Pro
degreeOfParallelismpoužijte průměrný počet požadavků, které může dávka indexeru vygenerovat, jako vodítko pro nastavení této hodnoty. Pokud infrastruktura hostující dovednost (například funkci Azure) nemůže podporovat vysokou úroveň souběžnosti, zvažte vytočení stupně paralelismu. Svou konfiguraci můžete otestovat pomocí několika dokumentů, abyste ověřili své porozumění průměrnému počtu požadavků.I když vaším cílem je škálovat a podporovat velké objemy, testování s menším vzorkem dokumentů pomáhá kvantifikovat různé fáze provádění. Můžete například vyhodnotit dobu provádění své dovednosti vzhledem k celkovému času potřebnému ke zpracování podmnožinu dokumentů. To vám pomůže odpovědět na otázku: tráví váš indexer více času vytvořením dávky nebo čekáním na odpověď z vaší dovednosti?
Zvažte nadřazené důsledky paralelismu. Pokud je vstup do vlastní dovednosti výstupem předchozí dovednosti, jsou všechny dovednosti v sadě dovedností efektivně škálovány, aby se minimalizovala latence?
Zpracování chyb ve vlastní dovednosti
Vlastní dovednosti by měly po úspěšném vykonání úkolu vrátit stavový kód HTTP 200. Pokud jeden nebo více záznamů v dávce způsobí chyby, zvažte vrácení kódu stavu 207 - více stavů. Seznam chyb nebo upozornění záznamu by měl obsahovat příslušnou zprávu.
Každá položka v dávce, která obsahuje chybu, způsobí selhání odpovídajícího dokumentu. Pokud potřebujete, aby byl dokument úspěšný, vraťte upozornění.
Jakýkoli stavový kód nad 299 se vyhodnotí jako chyba a všechny rozšiřování selžou, což vede k neúspěšným dokumentům.
Běžné chybové zprávy
Could not execute skill because it did not execute within the time limit '00:00:30'. This is likely transient. Please try again later. For custom skills, consider increasing the 'timeout' parameter on your skill in the skillset.Nastavte parametr časového limitu dovednosti tak, aby umožňoval delší dobu provádění.Could not execute skill because Web Api skill response is invalid.Indikuje, že dovednost nevrací zprávu ve formátu odpovědi na vlastní dovednosti. Může to být výsledek nezachycené výjimky v dovednosti.Could not execute skill because the Web Api request failed.Nejpravděpodobnější příčinou jsou chyby autorizace nebo výjimky.Could not execute skill.Obvykle je výsledek odpovědi na dovednost mapován na existující vlastnost v hierarchii dokumentů.
Testování vlastních dovedností
Začněte testováním vlastní dovednosti pomocí klienta REST API, který ověří:
Dovednost implementuje vlastní rozhraní dovedností pro požadavky a odpovědi.
Dovednost vrátí platný kód JSON s typem
application/jsonMIME.Dovednost vrátí platný stavový kód HTTP.
Vytvořte ladicí relaci pro přidání dovednosti do skillsetu a ujistěte se, že vytváří platné obohacení. I když ladicí relace neumožňuje optimalizovat výkon dovednosti, umožňuje ověřit, že je dovednost nakonfigurována s platnými hodnotami a vrací očekávané obohacené objekty.
Osvědčené postupy
I když funkce můžou přijímat a vracet větší datové části, zvažte omezení odpovědi na 150 MB nebo méně při vracení souboru JSON.
Zvažte nastavení velikosti dávky pro indexer a dovednost, abyste zajistili, že každá dávka zdroje dat vytvoří kompletní datový balík pro vaši dovednost.
U dlouhotrvajících úloh nastavte časový limit na dostatečně vysokou hodnotu, aby se zajistilo, že indexer při souběžném zpracování dokumentů nezpůsobí chybu.
Optimalizujte velikost dávky indexeru, velikost dávky dovedností a stupně paralelismu dovedností, abyste vygenerovali vzor zatížení, který váš systém dovedností očekává, s menším počtem velkých požadavků nebo větším počtem malých požadavků.
Monitorujte vlastní dovednosti s podrobnými protokoly selhání, protože proměnlivost dat může způsobit, že konkrétní požadavky budou opakovaně selhávat.