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.
Poznámka
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.
Tento článek obsahuje informace a řešení běžných chyb a upozornění, se kterými se můžete setkat při indexování a rozšiřování AI ve službě Azure AI Vyhledávač.
Indexování se zastaví, když počet chyb překročí maxFailedItems. Pokud chcete, aby indexery přeskočily neúspěšné dokumenty, nakonfigurujte maxFailedItemsandmaxFailedItemsPerBatch.
Poznámka
Každý dokument, který selhal, a jeho klíč dokumentu, pokud je k dispozici, se zobrazí jako chyba ve stavu provádění indexeru. Pokud indexer nakonfigurujete tak, aby toleroval chyby, můžete k pozdějšímu nahrání dokumentů použít Dokumenty – Index .
Upozornění nezastavují indexování, ale označují podmínky, které by mohly vést k neočekávaným výsledkům. Záleží na datech a vašem scénáři, zda podniknete akci nebo ne.
Kde najdete konkrétní chyby indexeru?
Ověření stavu indexeru a identifikace chyb:
Na webu Azure Portal přejděte do vyhledávací služby.
Vlevo rozbalte Správa vyhledávání>Indexery a vyberte libovolný indexer.
V části Historie spuštění vyberte stav. Všechny statusy, včetně statusu Úspěch, mají podrobnosti o provedení.
Pokud dojde k chybě, najeďte myší na chybovou zprávu. Na pravé straně obrazovky se zobrazí podokno s podrobnými informacemi o chybě.
Přechodné chyby
Z různých důvodů, jako jsou přechodné přerušení síťové komunikace, vypršení časového limitu z dlouhotrvajících procesů nebo specifické nuance dokumentů, je běžné, že během spuštění indexeru dochází k přechodným chybám nebo upozorněním. Tyto chyby jsou však dočasné a měly by být vyřešeny v následných spuštěních indexeru.
Pokud chcete tyto chyby efektivně spravovat, doporučujeme nastavit indexer na plán, například spustit každých pět minut, kde další spuštění začíná pět minut po dokončení prvního spuštění, při dodržování maximálního časového limitu běhu ve vaší službě. Pravidelná naplánovaná spuštění pomáhají opravovat přechodné chyby nebo upozornění.
Pokud chyba přetrvává v několika spuštěních indexeru, pravděpodobně se nejedná o přechodný problém. V takových případech si projděte následující seznam potenciálních řešení.
Vlastnosti chyby
| Vlastnost | Popis | Příklad |
|---|---|---|
| Klíč | ID dokumentu ovlivněného chybou nebo upozorněním | Příklad služby Azure Storage, kde výchozí ID je cesta k úložišti metadat: https://<storageaccount>.blob.core.windows.net/jfk-1k/docid-32112954.pdf |
| Jméno | Operace, která způsobuje chybu nebo upozornění. Tato funkce je generována následující strukturou: [category].[subcategory].[resourceType].[resourceName] |
DocumentExtraction.azureblob.myBlobContainerName
Enrichment.WebApiSkill.mySkillName
Projection.SearchIndex.OutputFieldMapping.myOutputFieldName
Projection.SearchIndex.MergeOrUpload.myIndexName
Projection.KnowledgeStore.Table.myTableName
|
| Zpráva | Podrobný popis chyby nebo upozornění | Could not execute skill because the Web Api request failed. |
| Podrobnosti | Konkrétní informace, které můžou být užitečné při diagnostice problému, jako je odpověď WebApi, pokud provádění vlastní dovednosti selhalo. | link-cryptonyms-list - Error processing the request record : System.ArgumentNullException: Value cannot be null. Parameter name: source at System.Linq.Enumerable.All[TSource](IEnumerable 1 source, Func 2 predicate) at Microsoft.CognitiveSearch.WebApiSkills.JfkWebApiSkills. ...rest of stack trace... |
| DocumentationLink | Odkaz na příslušnou dokumentaci s podrobnými informacemi pro ladění a řešení problému. Tento odkaz často vede na jednu z následujících sekcí na této stránce. | https://go.microsoft.com/fwlink/?linkid=2106475 |
Error: Could not read document
Indexer nemohl přečíst dokument ze zdroje dat. K tomu může dojít z následujících důvodů:
| Důvod | Podrobnosti nebo příklad | Rozlišení |
|---|---|---|
| Nekonzistentní typy polí v různých dokumentech |
Type of value has a mismatch with column type. Couldn't store '{47.6,-122.1}' in authors column. Expected type is JArray.
Error converting data type nvarchar to float.
Conversion failed when converting the nvarchar value '12 months' to data type int.
Arithmetic overflow error converting expression to data type int.
|
Ujistěte se, že typ každého pole je stejný v různých dokumentech. Pokud je například první pole dokumentu 'startTime' DateTime a v druhém dokumentu se jedná o řetězec, dojde k této chybě. |
| Chyby ze základní služby datového zdroje | Ze služby Azure Cosmos DB: {"Errors":["Request rate is large"]} |
Zkontrolujte instanci úložiště a ujistěte se, že je zdravá. Možná budete muset upravit škálování nebo dělení. |
| Přechodné problémy | A transport-level error has occurred when receiving results from the server. (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host |
Občas dochází k neočekávaným problémům s připojením. Zkuste dokument znovu spustit v indexeru později. |
Error: Could not extract content or metadata from your document
Indexer se zdrojem dat objektu blob nemohl extrahovat obsah nebo metadata z dokumentu (například soubor PDF). K tomu může dojít z následujících důvodů:
| Důvod | Podrobnosti nebo příklad | Rozlišení |
|---|---|---|
| Objekt blob je nad limitem velikosti. | Document is '150441598' bytes, which exceeds the maximum size '134217728' bytes for document extraction for your current service tier. |
Chyby indexování objektů blob |
| Objekt blob má nepodporovaný typ obsahu | Document has unsupported content type 'image/png' |
Chyby indexování objektů blob |
| Objekt blob je šifrovaný. | Document could not be processed - it may be encrypted or password protected. |
Blob můžete přeskočit s nastavením blobu. |
| Přechodné problémy |
Error processing blob: The request was aborted: The request was canceled.
Document timed out during processing.
|
Občas dochází k neočekávaným problémům s připojením. Zkuste dokument znovu spustit v indexeru později. |
Error: Could not parse document
Indexer přečte dokument ze zdroje dat, ale při převodu obsahu dokumentu na zadané schéma mapování polí došlo k problému. K tomu může dojít z následujících důvodů:
| Důvod | Podrobnosti nebo příklad | Rozlišení |
|---|---|---|
| Chybí klíč dokumentu. | Document key cannot be missing or empty |
Ujistěte se, že všechny dokumenty mají platné klíče dokumentu. Klíč dokumentu je určen nastavením vlastnosti "klíč" jako součást definice indexu. Indexery vygenerují tuto chybu, pokud vlastnost označená příznakem "klíč" nebyla v konkrétním dokumentu nalezena. |
| Klíč dokumentu je neplatný. | Invalid document key. Keys can only contain letters, digits, underscore (_), dash (-), or equal sign (=). |
Ujistěte se, že všechny dokumenty mají platné klíče dokumentu. Podrobnosti najdete v části Indexování služby Blob Storage. Pokud používáte indexer objektů blob a klíč dokumentu je pole metadata_storage_path, ujistěte se, že definice indexeru má funkci mapování base64Encode a že parameters je roven null místo použití cesty ve formátu prostého textu. |
| Klíč dokumentu je neplatný. | Document key cannot be longer than 1024 characters |
Upravte klíč dokumentu tak, aby splňoval požadavky na ověření. |
| Nelze použít mapování polí na pole | Could not apply mapping function 'functionName' to field 'fieldName'. Array cannot be null. Parameter name: bytes |
Pečlivě zkontrolujte mapování polí definovaných v indexeru a porovnejte s daty zadaného pole dokumentu, které selhalo. Může být nutné upravit mapování polí nebo data dokumentu. |
| Nelze přečíst hodnotu pole. | Could not read the value of column 'fieldName' at index 'fieldIndex'. A transport-level error has occurred when receiving results from the server. (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host.) |
K těmto chybám obvykle dochází kvůli neočekávaným problémům s připojením k podkladové službě zdroje dat. Zkuste dokument znovu spustit v indexeru později. |
Error: Could not map output field 'xyz' to search index due to deserialization problem while applying mapping function 'abc'
Mapování výstupu mohlo selhát, protože výstupní data jsou ve špatném formátu pro funkci mapování, kterou používáte. Například použití Base64Encode funkce mapování na binární data by vygenerovalo tuto chybu. Pokud chcete tento problém vyřešit, spusťte indexer znovu bez zadání funkce mapování nebo se ujistěte, že je funkce mapování kompatibilní s datovým typem výstupního pole. Podrobnosti najdete v tématu Mapování výstupních polí .
Error: Could not execute skill
Indexer nemohl spustit funkci v sadě modulů.
| Důvod | Podrobnosti nebo příklad | Rozlišení |
|---|---|---|
| Přechodné problémy s připojením | Došlo k přechodné chybě. Zkuste to znovu později. | Občas dochází k neočekávaným problémům s připojením. Zkuste dokument znovu spustit v indexeru později. |
| Potenciální chyba produktu | Došlo k neočekávané chybě. | To označuje neznámou třídu selhání a může značit chybu produktu. Vytvořte lístek podpory a získejte pomoc. |
| Při provádění dovednosti došlo k chybě | (Z dovednosti sloučení) Nejméně jedna hodnota posunu byla neplatná a nelze ji analyzovat. Položky byly vloženy na konec textu. | K vyřešení problému použijte informace v chybové zprávě. Tento druh selhání vyžaduje akci k vyřešení. |
Error: Could not execute skill because the Web API request failed
Provádění dovedností selhalo, protože volání webového rozhraní API selhalo. K této třídě selhání obvykle dochází, když se použijí vlastní dovednosti, v takovém případě potřebujete k vyřešení problému ladit vlastní kód. Pokud je chyba z vestavěné dovednosti, projděte si chybovou zprávu, kde najdete pomoc s opravou problému.
Při ladění tohoto problému nezapomeňte věnovat pozornost všem upozorněním na zadávání dovedností pro tuto dovednost. Koncový bod webového rozhraní API může selhává, protože indexer předává neočekávaný vstup.
Error: Could not execute skill because Web API skill response is invalid
Provádění dovedností selhalo, protože volání webového rozhraní API vrátilo neplatnou odpověď. K této třídě selhání obvykle dochází, když se použijí vlastní dovednosti, v takovém případě potřebujete k vyřešení problému ladit vlastní kód. Pokud místo toho selhání pochází z předdefinované dovednosti, vytvořte žádanku o podporu, abyste získali pomoc.
Error: Type of value has a mismatch with column type. Couldn't store in 'xyz' column. Expected type is 'abc'
Pokud má zdroj dat pole s jiným datovým typem než pole, které se pokoušíte mapovat v indexu, může dojít k této chybě. Zkontrolujte datové typy polí zdroje dat a ujistěte se, že jsou správně namapované na datové typy indexu.
Error: Skill did not execute within the time limit
K této chybové zprávě může dojít ve dvou případech, z nichž každá by se měla zacházet odlišně. Postupujte podle následujících pokynů v závislosti na tom, jakou dovednost vám vrátila tuto chybu.
Integrované dovednosti v nástrojích Foundry Tools
Mnoho integrovaných kognitivních dovedností, jako je rozpoznávání jazyka, rozpoznávání entit nebo OCR, je podporováno koncovým bodem rozhraní API Foundry Tools. Někdy dochází k přechodným problémům s těmito koncovými body a dojde k vypršení požadavku. U přechodných problémů není jiná možnost než čekat a zkusit to znovu. Jako zmírnění rizik zvažte nastavení indexeru tak, aby běžel podle plánu. Plánované indexování pokračuje od místa, kde skončilo. Za předpokladu, že se vyřeší přechodné problémy, mělo by být možné pokračovat v dalším naplánovaném spuštění indexování a zpracování kognitivních dovedností.
Pokud se tato chyba bude dál zobrazovat ve stejném dokumentu pro integrovanou kognitivní dovednost, vytvořte ticket podpory, abyste získali pomoc, protože to není očekávané.
Vlastní dovednosti
Pokud u vlastní dovednosti narazíte na chybu časového limitu, můžete vyzkoušet několik věcí. Nejprve zkontrolujte vlastní dovednost a ujistěte se, že se nezablokuje v nekonečné smyčce a že vrací výsledek konzistentně. Jakmile ověříte, že se vrátí výsledek, zkontrolujte dobu trvání provádění. Pokud jste pro definici vlastní dovednosti explicitně nenastavili timeout hodnotu, výchozí timeout hodnota je 30 sekund. Pokud 30 sekund není dostatečně dlouhé, aby se vaše dovednost spustila, můžete pro definici vlastní dovednosti zadat vyšší timeout hodnotu. Tady je příklad definice vlastní dovednosti, kde je časový limit nastavený na 90 sekund:
{
"@odata.type": "#Microsoft.Skills.Custom.WebApiSkill",
"uri": "<your custom skill uri>",
"batchSize": 1,
"timeout": "PT90S",
"context": "/document",
"inputs": [
{
"name": "input",
"source": "/document/content"
}
],
"outputs": [
{
"name": "output",
"targetName": "output"
}
]
}
Maximální hodnota, kterou můžete pro timeout parametr nastavit, je 230 sekund. Pokud vaše vlastní dovednost není schopna konzistentně fungovat po dobu 230 sekund, mohli byste zvážit snížení náročnosti vaší vlastní dovednosti, aby zpracovala méně dokumentů v rámci jednoho spuštění. Pokud jste už nastavili batchSize hodnotu 1, musíte dovednost přepsat, aby ji bylo možné provést do 230 sekund, nebo ji jinak rozdělit na více vlastních dovedností, aby doba provádění pro každou vlastní dovednost byla maximálně 230 sekund. Další informace najdete v dokumentaci k vlastním dovednostem .
Error: Could not 'MergeOrUpload' | 'Delete' document to the search index
Dokument byl přečtený a zpracován, ale indexer ho nemohl přidat do indexu vyhledávání. K tomu může dojít z následujících důvodů:
| Důvod | Podrobnosti nebo příklad | Rozlišení |
|---|---|---|
| Pole obsahuje termín, který je příliš velký. | Termín v dokumentu je větší než limit 32 kB. | Toto omezení se můžete vyhnout tím, že se pole nenakonfiguruje jako filtrovatelné, fasetovatelné nebo řaditelné. |
| Dokument je příliš velký, aby se indexoval. | Dokument je větší než maximální velikost požadavku rozhraní API. | Jak indexovat velké datové sady |
| Dokument obsahuje příliš mnoho objektů v kolekci. | Kolekce v dokumentu překračuje maximální počet prvků ve všech složitých kolekcích. The document with key '1000052' has '4303' objects in collections (JSON arrays). At most '3000' objects are allowed to be in collections across the entire document. Remove objects from collections and try indexing the document again. |
Doporučujeme zmenšit velikost složité kolekce v dokumentu tak, aby byla nižší než limit, a vyhnout se tak vysokému využití úložiště. |
| Potíže s připojením k cílovému indexu (který přetrvává po opakování), protože služba je pod jiným zatížením, jako je dotazování nebo indexování. | Nepodařilo se navázat připojení k aktualizaci indexu. Vyhledávací služba je pod velkým zatížením. | Rozšiřte svou vyhledávací službu |
| Vyhledávací služba se opravuje pro aktualizaci služby nebo je uprostřed rekonfigurace topologie. | Nepodařilo se navázat připojení k aktualizaci indexu. Vyhledávací služba momentálně nefunguje nebo vyhledávací služba prochází přechodem. | Konfigurujte službu s alespoň třemi replikami pro dostupnost 99,9% podle dokumentace SLA |
| Selhání základního výpočetního nebo síťového prostředku (vzácné) | Nepodařilo se navázat připojení k aktualizaci indexu. Došlo k neznámé chybě. | Nakonfigurujte indexery tak, aby běžely podle plánu pro obnovu z neúspěšného stavu. |
| Žádost o indexování vytvořená do cílového indexu nebyla potvrzena během časového limitu kvůli problémům se sítí. | Nelze navázat připojení k indexu vyhledávání včas. | Nakonfigurujte indexery tak, aby běžely podle plánu pro obnovu z neúspěšného stavu. Pokud tento chybový stav přetrvává, zkuste také snížit velikost dávky indexeru. |
Error: Could not index document because some of the document's data was not valid
Dokument byl načten a zpracován indexerem, ale kvůli neshodě v konfiguraci polí indexu a dat extrahovaných a zpracovaných indexerem se nedala přidat do indexu vyhledávání. K tomu může dojít z následujících důvodů:
| Důvod | Podrobnosti nebo příklad |
|---|---|
| Datový typ jednoho nebo více polí extrahovaných indexerem není kompatibilní s datovým modelem odpovídajícího cílového indexového pole. | The data field '_data_' in the document with key '888' has an invalid value 'of type 'Edm.String''. The expected type was 'Collection(Edm.String)'. |
| Nepodařilo se extrahovat žádnou entitu JSON z řetězcové hodnoty. |
Could not parse value 'of type 'Edm.String'' of field '_data_' as a JSON object.
Error:'After parsing a value an unexpected character was encountered: ''. Path '_path_', line 1, position 3162.'
|
| Extrakce kolekce entit JSON z řetězcové hodnoty se nezdařila. |
Could not parse value 'of type 'Edm.String'' of field '_data_' as a JSON array.
Error:'After parsing a value an unexpected character was encountered: ''. Path '[0]', line 1, position 27.'
|
| Ve zdrojovém dokumentu byl zjištěn neznámý typ. | Unknown type '_unknown_' cannot be indexed |
| Ve zdrojovém dokumentu byla použita nekompatibilní notace pro zeměpisné body. | WKT POINT string literals are not supported. Use GeoJson point literals instead |
Ve všech těchto případech se podívejte na podporované datové typy a mapování datových typů pro indexery , abyste měli jistotu, že schéma indexu sestavíte správně a nastavili odpovídající mapování polí indexeru. Chybová zpráva obsahuje podrobnosti, které vám můžou pomoct zjistit zdroj neshody.
Error: Integrated change tracking policy cannot be used because table has a composite primary key
To platí pro tabulky SQL a obvykle k tomu dochází, když je klíč buď definovaný jako složený klíč, nebo když tabulka definovala jedinečný clusterovaný index (jako v indexu SQL, ne jako index Azure Search). Hlavním důvodem je, že se atribut klíče upraví tak, aby byl složeným primárním klíčem v jedinečném clusterovém indexu. V takovém případě se ujistěte, že vaše tabulka SQL nemá jedinečný clusterovaný index nebo že jste namapovali pole klíče na pole, u kterého není zaručeno, že neobsahuje duplicitní hodnoty.
Error: Could not process document within indexer max run time
K této chybě dochází, když indexer nemůže dokončit zpracování jednoho dokumentu ze zdroje dat v povolené době provádění. Maximální doba běhu je kratší při použití sady dovedností. Pokud k této chybě dojde a máte hodnotu maxFailedItems nastavenou na jinou hodnotu než 0, indexer přeskočí dokument při budoucích spuštěních, aby indexování mohlo pokračovat. Pokud si nemůžete dovolit přeskočit žádný dokument nebo pokud se tato chyba zobrazuje konzistentně, zvažte rozdělení dokumentů do menších dokumentů, aby bylo možné provést částečný pokrok v rámci jednoho spuštění indexeru.
Error: Could not project document
K této chybě dochází, když se indexer pokouší projektovat data do úložiště znalostí a při pokusu došlo k chybě. Toto selhání může být stálé a opravitelné, nebo může jít o přechodné selhání s přijímačem výstupu projekce, takže budete muset možná počkat a zkusit to znovu pro vyřešení problému. Tady je sada známých stavů selhání a možných řešení.
| Důvod | Podrobnosti nebo příklad | Rozlišení |
|---|---|---|
Nepodařilo se aktualizovat blob projekce 'blobUri' v kontejneru 'containerName' |
Zadaný kontejner neexistuje. | Indexer zkontroluje, jestli byl zadaný kontejner dříve vytvořen, a v případě potřeby ho vytvoří, ale provede tuto kontrolu pouze jednou za spuštění indexeru. Tato chyba znamená, že po tomto kroku došlo k odstranění kontejneru. Pokud chcete tuto chybu vyřešit, zkuste to: nechte informace o účtu úložiště beze změny, počkejte na dokončení indexátoru a pak indexátor spusťte znovu. |
Nepodařilo se aktualizovat blob projekce 'blobUri' v kontejneru 'containerName' |
Nelze zapisovat data do přenosového připojení: Vzdálený hostitel vynutil ukončení existujícího připojení. | Očekává se, že u služby Azure Storage dojde k přechodnému selhání, a proto by se mělo vyřešit opětovným spuštěním indexeru. Pokud k této chybě dojde konzistentně, vytvořte lístek podpory , abyste ji mohli dále prošetřit. |
Nepodařilo se aktualizovat řádek 'projectionRow' v tabulce 'tableName' |
Server je zaneprázdněn. | Očekává se, že u služby Azure Storage dojde k přechodnému selhání, a proto by se mělo vyřešit opětovným spuštěním indexeru. Pokud k této chybě dojde konzistentně, vytvořte lístek podpory , abyste ji mohli dále prošetřit. |
Error: The cognitive service for skill '<skill-name>' has been throttled
Provádění dovedností selhalo, protože došlo k omezení volání nástrojů Foundry. Obvykle k této třídě selhání dochází v případě, že se paralelně spouští příliš mnoho dovedností. Pokud ke spuštění indexeru používáte klientskou knihovnu Microsoft.Search.Documents, můžete pomocí funkce SearchIndexingBufferedSender získat automatické opakování neúspěšných kroků. V opačném případě můžete indexer resetovat a spustit znovu.
Error: Expected IndexAction metadata
Chyba "Očekávaná metadata IndexAction" znamená, že když se indexer pokusil přečíst dokument, aby zjistil, jaká akce se má provést, nenašla v dokumentu žádná odpovídající metadata. K této chybě obvykle dochází v případě, že indexer má přidanou nebo odebranou mezipaměť poznámek bez resetování indexeru. Pokud chcete tento postup vyřešit, měli byste indexer resetovat a spustit znovu.
Warning: Skill input was invalid
Chyběl vstup pro dovednost, měl nesprávný typ nebo byl jinak neplatný. Může se zobrazit následující informace:
Could not execute skillSkill executed but may have unexpected results
Kognitivní dovednosti mají požadované vstupy a volitelné vstupy. Například dovednost extrakce klíčových frází má dva požadované vstupy text, languageCodea žádné volitelné vstupy. Všechny vstupy vlastních dovedností jsou považovány za volitelné vstupy.
Pokud chybí potřebné vstupy nebo pokud vstup není správného typu, funkce se přeskočí a vygeneruje upozornění. Vynechané dovednosti nevygenerují výstupy. Pokud podřízené dovednosti spotřebovávají výstupy vynechané dovednosti, můžou vygenerovat další upozornění.
Pokud chybí volitelný vstup, dovednost stále běží, ale může způsobit neočekávaný výstup z důvodu chybějícího vstupu.
V obou případech je toto upozornění způsobeno tvarem vašich dat. Pokud máte například dokument obsahující informace o lidech s poli firstName, middleNamea lastName, můžete mít některé dokumenty, které nemají položku pro middleName. Pokud předáte middleName jako vstup pro dovednost v kanálu, předpokládá se, že tento vstup může občas chybět. Abyste zjistili, jestli se v důsledku tohoto upozornění vyžaduje nějaká akce, musíte vyhodnotit svá data a scénář.
Pokud chcete zadat výchozí hodnotu pro chybějící vstup, můžete pomocí podmíněné dovednosti vygenerovat výchozí hodnotu a pak jako vstup dovednosti použít výstup podmíněné dovednosti .
{
"@odata.type": "#Microsoft.Skills.Util.ConditionalSkill",
"context": "/document",
"inputs": [
{ "name": "condition", "source": "= $(/document/language) == null" },
{ "name": "whenTrue", "source": "= 'en'" },
{ "name": "whenFalse", "source": "= $(/document/language)" }
],
"outputs": [ { "name": "output", "targetName": "languageWithDefault" } ]
}
| Důvod | Podrobnosti nebo příklad | Rozlišení |
|---|---|---|
| Zadání dovednosti je nesprávný typ. | "Požadovaný vstup dovednosti nebyl očekávaným typem String. Název: text, Zdroj: /document/merged_content." Požadovaný vstup dovednosti nebyl ve správném formátu. Název: text, Zdroj: /document/merged_content." "Nelze iterovat nad neprvkolem /document/normalized_images/0/imageCelebrities/0/detail/celebrities." "Nelze vybrat 0 v neprvkole /document/normalized_images/0/imageCelebrities/0/detail/celebrities" |
Určité dovednosti očekávají vstupy určitých typů, například dovednost pro analýzu sentimentu očekává, že text bude řetězec. Pokud vstup určuje neřetěžnou hodnotu, dovednost se nespustí a nevygeneruje žádné výstupy. Ujistěte se, že vaše datová sada má jednotné vstupní hodnoty v typu, nebo použijte dovednost vlastního webového rozhraní API k předběžnému zpracování vstupu. Pokud iterujete dovednosti přes pole, zkontrolujte kontext dovednosti a vstupy * ve správných pozicích. Kontextový i vstupní zdroj by obvykle měly končit * poli. |
| Chybí vstup dovednosti. |
Required skill input is missing. Name: text, Source: /document/merged_content
Missing value /document/normalized_images/0/imageTags.
Unable to select 0 in array /document/pages of length 0.
|
Pokud k tomuto upozornění dojde u všech dokumentů, může dojít k překlepu ve vstupních cestách. Zkontrolujte velké a malé písmená názvu vlastnosti. Vyhledejte v cestě další nebo chybějící * položku. Ověřte, že dokumenty ze zdroje dat poskytují požadované vstupy. |
| Zadání kódu jazyka dovedností je neplatné. | Vstup dovednosti languageCode má následující kódy X,Y,Zjazyka , alespoň jeden z nich je neplatný. |
Další podrobnosti najdete níže. |
Warning: Skill input 'languageCode' has the following language codes 'X,Y,Z', at least one of which is invalid.
Jedna nebo více hodnot předaných do volitelného languageCode vstupu podřízené dovednosti není podporováno. K tomu může dojít, pokud předáváte výstup languageDetectionSkill následným dovednostem a výstup se skládá z více jazyků, než jsou podporovány v těchto podřízených dovednostech.
Všimněte si, že pokud se neplatné countryHint zadání předá jazyku LanguageDetectionSkill, může se zobrazit upozornění podobné tomuto. Pokud k tomu dojde, ověřte, že pole, které používáte ze svého zdroje dat pro tento vstup, obsahuje platné dvoupísmenné kódy zemí podle normy ISO 3166-1 alfa-2. Pokud jsou některé platné a některé neplatné, pokračujte podle následujícího pokynu, ale nahraďte languageCode za countryHint a defaultLanguageCode za defaultCountryHint, tak, aby odpovídaly vašemu případu použití.
Pokud víte, že vaše datová sada je všechna v jednom jazyce, měli byste odebrat JazykDetectionSkill a languageCode vstup dovednosti a místo toho použít defaultLanguageCode parametr dovednosti pro tuto dovednost za předpokladu, že je jazyk pro tuto dovednost podporován.
Pokud víte, že vaše datová sada obsahuje více jazyků, a proto potřebujete LanguageDetectionSkill a languageCode vstup, zvažte přidání podmíněnéhoSkillu k vyfiltrování textu pomocí jazyků, které nejsou podporovány před předáním textu do podřízené dovednosti. Tady je příklad, jak to může vypadat pro EntityRecognitionSkill:
{
"@odata.type": "#Microsoft.Skills.Util.ConditionalSkill",
"context": "/document",
"inputs": [
{ "name": "condition", "source": "= $(/document/language) == 'de' || $(/document/language) == 'en' || $(/document/language) == 'es' || $(/document/language) == 'fr' || $(/document/language) == 'it'" },
{ "name": "whenTrue", "source": "/document/content" },
{ "name": "whenFalse", "source": "= null" }
],
"outputs": [ { "name": "output", "targetName": "supportedByEntityRecognitionSkill" } ]
}
Tady je několik odkazů na aktuálně podporované jazyky pro každou z dovedností, které můžou vést k této chybové zprávě:
- Podporované jazyky EntityRecognitionSkill
- Podporované jazyky EntityLinkingSkill
- Podporované jazyky KeyPhraseExtractionSkill
- Podporované jazyky LanguageDetectionSkill
- Podporované jazyky PIIDetectionSkill
- Podporované jazyky SentimentSkill
- Podporované jazyky služby Translator
-
Text SplitSkill podporované jazyky :
da, de, en, es, fi, fr, it, ko, pt
Warning: Skill input was truncated
Kognitivní dovednosti omezují délku textu, který lze analyzovat najednou. Pokud textové zadání překročí limit, text se před obohacením zkrátí. Funkce se provede, ale ne se všemi vašimi daty.
V následujícím příkladu LanguageDetectionSkill'text' může vstupní pole aktivovat toto upozornění, pokud je vstup nad limitem znaků. Vstupní limity najdete v referenční dokumentaci k dovednostem.
{
"@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill",
"inputs": [
{
"name": "text",
"source": "/document/text"
}
],
"outputs": [...]
}
Pokud chcete zajistit, aby byl veškerý text analyzován, zvažte použití dovednosti Split.
Warning: Web API skill response contains warnings
Indexer spustil dovednost v sadě dovedností, ale odpověď z požadavku webového rozhraní API indikuje, že existují upozornění. Projděte si upozornění a zjistěte, jak se vaše data ovlivňují a jestli je potřeba provést další akci.
Warning: The current indexer configuration does not support incremental progress
K tomuto upozornění dochází pouze pro zdroje dat Azure Cosmos DB.
Přírůstkový postup během indexování zajišťuje, že pokud je spuštění indexeru přerušeno přechodnými selháními nebo časovým limitem, indexer může navázat tam, kde skončil, namísto znovu indexování celé kolekce od počátku. To je zvlášť důležité při indexování velkých kolekcí.
Možnost obnovit nedokončenou úlohu indexování je založená na tom, že jsou dokumenty seřazeny podle sloupce _ts. Indexer používá časové razítko k určení, který dokument má být zpracován jako další.
_ts Pokud sloupec chybí nebo pokud indexer nedokáže určit, jestli je vlastní dotaz seřazený podle něj, indexer začne na začátku a zobrazí se toto upozornění.
Toto chování je možné přepsat povolením přírůstkového postupu a potlačením tohoto upozornění pomocí konfigurační vlastnosti assumeOrderByHighWaterMarkColumn.
Další informace najdete v tématu Přírůstkový průběh a vlastní dotazy.
Warning: Some data was lost during projection. Row 'X' in table 'Y' has string property 'Z' which was too long.
Služba Table Storage má omezení, jak mohou být vlastnosti velké entity. Řetězce mohou mít 32 000 znaků nebo méně. Pokud se promítá řádek s vlastností řetězce delší než 32 000 znaků, zachovají se pouze prvních 32 000 znaků. Chcete-li tento problém vyřešit, vyhněte se promítání řádků s řetězcovými vlastnostmi delšími než 32 000 znaků.
Warning: Truncated extracted text to X characters
Indexery omezují množství textu, které lze extrahovat z libovolného dokumentu. Tento limit závisí na cenové úrovni: 32 000 znaků pro úroveň Free, 64 000 pro Basic, 4 miliony pro Standard, 8 milionů pro Standard S2 a 16 milionů pro Standard S3. Text, který byl zkrácen, nebude indexován. Pokud se chcete tomuto upozornění vyhnout, zkuste rozdělit dokumenty s velkým množstvím textu na několik menších dokumentů.
Další informace najdete v tématu Omezení indexeru.
Warning: Could not map output field 'X' to search index
Mapování výstupních polí, která odkazují na neexistující data nebo data null, způsobí upozornění pro každý dokument a výsledkem bude prázdné pole indexu. Chcete-li tento problém vyřešit, pečlivě zkontrolujte cesty zdroje mapování výstupních polí pro možné překlepy nebo nastavte výchozí hodnotu pomocí podmíněné dovednosti. Podrobnosti najdete v tématu Mapování výstupních polí .
| Důvod | Podrobnosti nebo příklad | Rozlišení |
|---|---|---|
| Nelze iterovat přes neinicializované pole | Nelze iterovat nad ne-polem /document/normalized_images/0/imageCelebrities/0/detail/celebrities. |
K této chybě dochází v případě, že výstup není pole. Pokud si myslíte, že by měl být výstup pole, zkontrolujte chyby v uvedené cestě zdrojového pole výstupu. V názvu zdrojového pole můžete mít například chybějící nebo nadbytečný *. Je také možné, že vstup pro tuto dovednost má hodnotu null, což vede k prázdnému poli. Podrobnosti najdete v části Neplatný vstup dovedností. |
Nejde vybrat 0 v nematici |
"Nelze vybrat 0 v nematici /document/pages." |
K tomu může dojít, pokud výstup schopností nevygeneruje pole a název výstupního zdrojového pole má ve své cestě index pole nebo *. Pečlivě zkontrolujte cesty zadané v názvech výstupních zdrojových polí a hodnotu pole pro zadaný název pole. Podrobnosti najdete v části Neplatný vstup dovedností. |
Warning: The data change detection policy is configured to use key column 'X'
Zásady detekce změn dat mají specifické požadavky na sloupce, které používají k detekci změn. Jedním z těchto požadavků je, že se tento sloupec aktualizuje při každé změně zdrojové položky. Dalším požadavkem je, aby nová hodnota pro tento sloupec byla větší než předchozí hodnota. Klíčové sloupce tento požadavek nesplňují, protože se při každé aktualizaci nemění. Chcete-li tento problém vyřešit, vyberte jiný sloupec pro zásady detekce změn.
Warning: Document text appears to be UTF-16 encoded, but is missing a byte order mark
Režimy analýzy indexeru musí vědět, jak se text před parsováním kóduje. Dva nejběžnější způsoby kódování textu jsou UTF-16 a UTF-8. UTF-8 je kódování s proměnnou délkou, kde každý znak je dlouhý 1 bajt a 4 bajty. UTF-16 je kódování s pevnou délkou, kde každý znak má délku 2 bajty. UTF-16 má dvě různé varianty, big endian a little endian. Kódování textu je určeno byte order markřadou bajtů před textem.
| Encoding | Značka pořadí bajtů |
|---|---|
| UTF-16 Big Endian | 0xFE 0xFF |
| UTF-16 malý endián | 0xFF 0xFE |
| UTF-8 | 0xEF 0xBB 0xBF |
Pokud není k dispozici žádná značka pořadí bajtů, předpokládá se, že text bude kódován jako UTF-8.
Pokud chcete toto upozornění obejít, určete, jaké je kódování textu pro tento objekt blob, a přidejte odpovídající značku pořadí bajtů.
Warning: Azure Cosmos DB collection 'X' has a Lazy indexing policy. Some data may be lost
Kolekce s Lazy zásadami indexování nelze konzistentně dotazovat, což může vést k chybějícím datům ve výsledcích indexeru. Pokud chcete toto upozornění obejít, změňte zásady indexování na Konzistentní.
Warning: The document contains very long words (longer than 64 characters). These words may result in truncated and/or unreliable model predictions.
Toto upozornění je předáno z jazykové služby v nástrojích Foundry. V některých případech je bezpečné toto upozornění ignorovat, například pokud je dlouhý řetězec jen dlouhá adresa URL. Mějte na paměti, že pokud je slovo delší než 64 znaků, zkrátí se na 64 znaků, což může ovlivnit predikce modelu.
Error: Cannot write more bytes to the buffer than the configured maximum buffer size
Indexery mají omezení velikosti dokumentu. Ujistěte se, že dokumenty ve zdroji dat jsou menší než podporované omezení velikosti, jak je uvedeno pro vaši úroveň služby.
Error: Failed to compare value 'X' of type M to value 'Y' of type N.
K této chybě obvykle dochází v indexerech Azure SQL, když typ zdrojového sloupce použitý dataChangeDetectionPolicy pro neodpovídá očekávání indexeru, zejména pokud convertHighWaterMarkToRowVersion je zapnutý.
Pokud je například sloupec použitý pro detekci změn typu datetime, ale indexer očekává typ rowversion, protože convertHighWaterMarkToRowVersion je povolen, neshoda způsobí chybu.
Zkontrolujte datový typ sloupce High Water Mark ve zdroji a odpovídajícím způsobem aktualizujte konfiguraci indexeru. Po ověření a aktualizaci obnovte indexer a znovu ho spusťte, abyste zpracovali hodnoty sloupců.
Error: Access denied to Virtual Network/Firewall rules
K této chybě obvykle dochází z jednoho z následujících důvodů:
- Omezení brány firewall pro prostředky Azure vyžadované vaším indexerem podle vaší konfigurace. Mezi tyto prostředky patří: zdroj dat, účet Azure Storage (používaný pro ladicí relace, přírůstkové rozšiřování nebo úložiště znalostí), funkce Azure (používá se pro vlastní dovednosti webového rozhraní API) nebo nasazení Microsoft Foundry, která se používají při rozšiřování AI.
- Konfigurace privátních koncových bodů, které blokují přístup z indexeru k těmto prostředkům.
Zkontrolujte konfiguraci prostředků, abyste ověřili, že indexer má přístup ke komponentám vaší konfigurace a že povolují provoz do všech požadovaných služeb.
Error: Credentials provided in the connection string are invalid or have expired
K této chybě dochází, když se indexer Azure AI Vyhledávač nemůže ověřit pomocí zadaného připojovacího řetězce nebo má problémy s přístupem k účtu úložiště k ověření přihlašovacích údajů.
| Možná příčina | Podrobnosti nebo příklad | Rozlišení |
|---|---|---|
| Vypršela platnost nebo otočený klíč | Připojovací řetězec obsahuje zastaralý klíč, který už nefunguje. | Přejděte k prostředku, který se kontaktuje (například Azure Storage nebo Azure SQL), a zkopírujte nejnovější přístupové klíče, pokud používáte ověřování založené na klíči, a odpovídajícím způsobem aktualizujte zdroj dat nebo připojovací řetězec. |
| Není aktivována spravovaná identita nebo není udělen přístup | Spravovaná identita služby AI Search je povolená, ale nemá požadované role přístupu. | – Povolte spravovanou identitu přiřazenou systémem nebo uživatelem ve vyhledávací službě. – Přiřaďte identitě odpovídající role v oboru prostředku, který zdroj dat vyžaduje. Například přiřaďte Storage Blob Data Reader v oboru účtu úložiště pro zdroj dat objektů blob Azure. Každý zdroj dat má vlastní požadavky na oprávnění. |
| Síť nebo brána firewall blokuje přístup k identifikaci | Kontaktovaný prostředek je nakonfigurovaný tak, aby omezoval síťový přístup. | Nakonfigurujte nastavení sítě tak, aby umožňovala přístup k Azure AI Vyhledávač. |
| Autorizace klíče je zakázaná. | Sdílený přístup ke klíči se odebral ve zdroji, ale konfigurace zdroje dat vyhledávací služby stále používá ověřování založené na klíči. | Používejte ověřování spravovaných identit a zajistěte, že jsou nastavena oprávnění podle role. Z pohledu služby Azure Storage to znamená, že funkce autorizace sdíleného klíče je blokovaná, ať už ze samotného účtu úložiště, nebo vynucená prostřednictvím zásad Azure na podnikové úrovni. |
Error: Invalid AAD tenant
Tato zpráva se může zobrazit, když se indexer SharePointu v Microsoftu 365 nemůže ověřit vůči tenantovi Microsoft Entra, kterému patří web SharePointu.
TenantId je v připojovacím řetězci zdroje dat SharePointu volitelné, ale jakákoli zadaná hodnota musí být ID tenanta Microsoft Entra (GUID) pro daný web. Tento tenant nemusí být nutně tenantem Microsoft Entra přidruženým k vaší vyhledávací službě.
Při řešení chyby využijte následující doprovodné materiály:
- U SharePoint připojení mezi tenanty uveďte ID tenanta Microsoft Entra webu SharePoint jako
TenantIdv připojovací řetězec. - Pro připojení ve stejném tenantovi Microsoft Entra buď uveďte ID tenanta webu SharePoint, nebo povolte spravovanou identitu přiřazenou systémem vyhledávací služby. Když vynecháte
TenantId, indexer použije tenant prostředku Microsoft Entra přidružený k dané identitě. - Pokud není k dispozici ani explicitní
TenantId, ani tenant prostředku, indexer hlásí:Ensure service managed identity is enabled for your service, or TenantId is specified in your připojovací řetězec.
Chybná hodnota, která není identifikátorem GUID, může způsobit selhání při vytváření nebo aktualizaci zdroje dat. Správně naformátované ID pro nesprávného tenanta Microsoft Entra může projít ověřením zdroje dat, ale selže, když se indexer autentizuje. V případě selhání spuštění přejděte do vyhledávací služby na portálu Azure, vyberte Správa vyhledávání>Indexery, vyberte indexer a zkontrolujte jeho historii spuštění a podrobnosti o stavu.
Formáty připojovacího řetězce a pokyny k vyhledání ID tenanta Microsoft Entra pro web SharePointu najdete v tématu Konfigurace indexeru SharePointu v Microsoftu 365.
Error: Error detecting index schema from data source
Prostředí webu Azure Portal použité ke konfiguraci indexeru nemohlo načíst informace o schématu ze zdroje dat. K tomu může dojít kvůli přechodným problémům s připojením nebo omezením konfigurace sítě, která brání službě Azure AI Vyhledávač v přístupu ke zdroji.
| Důvod | Podrobnosti nebo příklad | Rozlišení |
|---|---|---|
| Přechodné problémy s komunikací | Failed to fetch, this could be due to transient communication errors with the source |
K přechodným selháním může dojít kvůli dočasnému přerušení sítě nebo vypršení časového limitu služeb. Zkuste operaci zopakovat. Pokud je problém přechodný, měl by se vyřešit v následných voláních. |
| Omezení privátního koncového bodu | Zdroj dat je chráněný virtuální sítí nebo privátním koncovým bodem, který brání přístupu z indexeru. | Pokud je zdroj dat za privátním koncovým bodem, nakonfigurujte sdílené privátní propojení tak, aby se služba Azure AI Vyhledávač mohl k prostředku připojit soukromě. Ujistěte se, že je připojení privátního koncového bodu schválené. |
| Pravidla brány firewall blokující přístup | Zdroj dat obsahuje pravidla brány firewall, která blokují požadavky ze služby Azure AI Vyhledávač. | Aktualizujte nastavení brány firewall tak, aby povolte příchozí provoz z Azure AI Vyhledávač. Viz konfigurace pravidel brány firewall pro povolení přístupu indexeru. Ujistěte se, že jsou povolené IP adresy vyhledávací služby nebo výjimky důvěryhodných služeb. |
| Konfigurace sítě nepovoluje přístup indexeru | Zdroj dat je nakonfigurovaný tak, aby umožňoval pouze vybrané sítě bez zahrnutí služby Azure AI Vyhledávač. | Pomocí jedné z podporovaných možností připojení ověřte, že konfigurace sítě zdroje dat umožňuje přístup z Azure AI Vyhledávač: veřejný koncový bod s pravidly PROTOKOLU IP, sdíleným privátním propojením nebo přístupem k důvěryhodné službě. |