Dela via


Felsöka vanliga indexeringsfel och varningar i Azure AI Search

Den här artikeln innehåller information och lösningar på vanliga fel och varningar som du kan stöta på under indexering och AI-berikning i Azure AI Search.

Indexeringen stoppas när felantalet överskrider "maxFailedItems".

Om du vill att indexerare ska ignorera dessa fel (och hoppa över "misslyckade dokument" kan du uppdatera och enligt beskrivningen maxFailedItems här.maxFailedItemsPerBatch

Kommentar

Varje misslyckat dokument tillsammans med dess dokumentnyckel (när det är tillgängligt) visas som ett fel i indexerarens körningsstatus. Du kan använda index-API:et för att ladda upp dokumenten manuellt vid ett senare tillfälle om du har angett att indexeraren ska tolerera fel.

Felinformationen i den här artikeln kan hjälpa dig att lösa fel, vilket gör att indexeringen kan fortsätta.

Varningar slutar inte indexera, men de indikerar villkor som kan leda till oväntade resultat. Om du vidtar åtgärder eller inte beror på data och ditt scenario.

Var hittar du specifika indexerarfel?

Följ stegen nedan för att verifiera indexerarens status och identifiera fel i Azure-portalen:

  1. Gå till Azure-portalen och leta upp din AI-usluga pretrage.
  2. När du är i AI-usluga pretrage klickar du på fliken Indexerare.
  3. I listan över indexerare identifierar du den specifika indexerare som du vill verifiera.
  4. Under kolumnen Körningshistorik klickar du på hyperlänken Status som är associerad med den valda indexeraren.
  5. Om det finns ett fel hovra över felmeddelandet. Ett fönster visas till höger på skärmen med detaljerad information om felet.

Tillfälliga fel

Av olika skäl, till exempel tillfälliga nätverkskommunikationsavbrott, tidsgränser från långvariga processer eller specifika dokument nyanser, är det vanligt att stöta på tillfälliga fel eller varningar under indexerarens körningar. Dessa fel är dock tillfälliga och bör lösas i efterföljande indexerare.

Om du vill hantera dessa fel effektivt rekommenderar vi att du sätter indexeraren enligt ett schema, till exempel att köras var femte minut. Det innebär att nästa körning börjar fem minuter efter slutförandet av den första körningen och följer den maximala körningsgränsen. Regelbundet schemalagda körningar hjälper till att snabbt åtgärda tillfälliga fel eller varningar.

Om du ser ett fel som kvarstår över flera indexeringskörningar är det förmodligen inte ett tillfälligt problem. I sådana fall kan du läsa listan nedan för potentiella lösningar. Observera att indexeringsschemat alltid överensstämmer med de begränsningar som beskrivs i vår indexeringsgränsguide.

Felegenskaper

Från och med API-versionen 2019-05-06är indexeringsfel och varningar på objektnivå strukturerade för att ge ökad klarhet kring orsaker och nästa steg. De innehåller följande egenskaper:

Property beskrivning Exempel
Nyckel Dokument-ID för dokumentet som påverkas av felet eller varningen. https://<storageaccount>.blob.core.windows.net/jfk-1k/docid-32112954.pdf
Name Åtgärdsnamnet som beskriver var felet eller varningen inträffade. Detta genereras av följande struktur: [category].[subcategory].[resourceType].[resourceName] DocumentExtraction.azureblob.myBlobContainerName Enrichment.WebApiSkill.mySkillName Projection.SearchIndex.OutputFieldMapping.myOutputFieldName Projection.SearchIndex.MergeOrUpload.myIndexName Projection.KnowledgeStore.Table.myTableName
Meddelande En beskrivning på hög nivå av felet eller varningen. Could not execute skill because the Web Api request failed.
Details Specifik information som kan vara till hjälp vid diagnostisering av problemet, till exempel WebApi-svaret om det inte gick att köra en anpassad färdighet. 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...
DokumentationLänk En länk till relevant dokumentation med detaljerad information för att felsöka och lösa problemet. Den här länken pekar ofta på något av avsnitten nedan på den här sidan. https://go.microsoft.com/fwlink/?linkid=2106475

Error: Could not read document

Indexeraren kunde inte läsa dokumentet från datakällan. Det här kan inträffa på grund av:

Anledning Information/exempel Åtgärd
Inkonsekventa fälttyper i olika dokument 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. Kontrollera att typen av varje fält är densamma i olika dokument. Om det första dokumentfältet 'startTime' till exempel är ett DateTime, och i det andra dokumentet är det en sträng, så visas det här felet.
Fel från datakällans underliggande tjänst Från Azure Cosmos DB: {"Errors":["Request rate is large"]} Kontrollera lagringsinstansen för att säkerställa att den är felfri. Du kan behöva justera din skalning eller partitionering.
Tillfälliga problem 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 Ibland uppstår oväntade anslutningsproblem. Försök att köra dokumentet via indexeraren igen senare.

Error: Could not extract content or metadata from your document

Indexeraren med en Blob-datakälla kunde inte extrahera innehållet eller metadata från dokumentet (till exempel en PDF-fil). Det här kan inträffa på grund av:

Anledning Information/exempel Åtgärd
Blob är över storleksgränsen Document is '150441598' bytes, which exceeds the maximum size '134217728' bytes for document extraction for your current service tier. Blobindexeringsfel
Blob har innehållstyp som inte stöds Document has unsupported content type 'image/png' Blobindexeringsfel
Blob är krypterad Document could not be processed - it may be encrypted or password protected. Du kan hoppa över bloben med blobinställningar.
Tillfälliga problem Error processing blob: The request was aborted: The request was canceled. Document timed out during processing. Ibland uppstår oväntade anslutningsproblem. Försök att köra dokumentet via indexeraren igen senare.

Error: Could not parse document

Indexeraren läste dokumentet från datakällan, men det uppstod ett problem med att konvertera dokumentinnehållet till det angivna fältmappningsschemat. Det här kan inträffa på grund av:

Anledning Information/exempel Åtgärd
Dokumentnyckeln saknas Document key cannot be missing or empty Kontrollera att alla dokument har giltiga dokumentnycklar. Dokumentnyckeln bestäms genom att ange egenskapen "nyckel" som en del av indexdefinitionen. Indexerare genererar det här felet när egenskapen som flaggas som "nyckeln" inte kan hittas i ett visst dokument.
Dokumentnyckeln är ogiltig Invalid document key. Keys can only contain letters, digits, underscore (_), dash (-), or equal sign (=). Kontrollera att alla dokument har giltiga dokumentnycklar. Mer information finns i Indexering av Blob Storage . Om du använder blobindexeraren och dokumentnyckeln är metadata_storage_path fältet kontrollerar du att indexerarens definition har en base64Encode-mappningsfunktion med lika nullmed parameters , i stället för sökvägen i oformaterad text.
Dokumentnyckeln är ogiltig Document key cannot be longer than 1024 characters Ändra dokumentnyckeln så att den uppfyller valideringskraven.
Det gick inte att tillämpa fältmappning på ett fält Could not apply mapping function 'functionName' to field 'fieldName'. Array cannot be null. Parameter name: bytes Dubbelkolla fältmappningarna som definierats på indexeraren och jämför med data för det angivna fältet i det misslyckade dokumentet. Det kan vara nödvändigt att ändra fältmappningarna eller dokumentdata.
Det gick inte att läsa fältvärdet 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.) Dessa fel beror vanligtvis på oväntade anslutningsproblem med datakällans underliggande tjänst. Försök att köra dokumentet via indexeraren igen senare.

Error: Could not map output field 'xyz' to search index due to deserialization problem while applying mapping function 'abc'

Utdatamappningen kan ha misslyckats eftersom utdata har fel format för den mappningsfunktion som du använder. Om du till exempel tillämpar Base64Encode mappningsfunktionen på binära data genereras det här felet. Lös problemet genom att antingen köra indexeraren igen utan att ange mappningsfunktionen eller se till att mappningsfunktionen är kompatibel med datatypen för utdatafältet. Mer information finns i Mappning av utdatafält.

Error: Could not execute skill

Indexeraren kunde inte köra en färdighet i kompetensuppsättningen.

Anledning Information/exempel Åtgärd
Tillfälliga anslutningsproblem Ett tillfälligt fel uppstod. Försök igen senare. Ibland uppstår oväntade anslutningsproblem. Försök att köra dokumentet via indexeraren igen senare.
Potentiell produktbugg Det uppstod ett oväntat fel. Detta indikerar en okänd felklass och kan tyda på ett produktfel. Skicka in ett supportärende för att få hjälp.
En färdighet har påträffat ett fel under körningen (Från sammanslagningsfärdighet) Ett eller flera förskjutningsvärden var ogiltiga och kunde inte parsas. Objekt infogades i slutet av texten Åtgärda problemet med hjälp av informationen i felmeddelandet. Den här typen av fel kräver åtgärd för att lösa problemet.

Error: Could not execute skill because the Web API request failed

Färdighetskörningen misslyckades eftersom anropet till webb-API:et misslyckades. Vanligtvis inträffar den här felklassen när anpassade kunskaper används, i vilket fall du behöver felsöka din anpassade kod för att lösa problemet. Om felet i stället kommer från en inbyggd färdighet kan du läsa felmeddelandet för att få hjälp med att åtgärda problemet.

När du felsöker det här problemet bör du vara uppmärksam på eventuella varningar om kunskapsindata för den här färdigheten. Webb-API-slutpunkten kan misslyckas eftersom indexeraren skickar oväntade indata.

Error: Could not execute skill because Web API skill response is invalid

Färdighetskörningen misslyckades eftersom anropet till webb-API:et returnerade ett ogiltigt svar. Vanligtvis inträffar den här felklassen när anpassade kunskaper används, i vilket fall du behöver felsöka din anpassade kod för att lösa problemet. Om felet i stället kommer från en inbyggd färdighet kan du skicka in ett supportärende för att få hjälp.

Error: Type of value has a mismatch with column type. Couldn't store in 'xyz' column. Expected type is 'abc'

Om datakällan har ett fält med en annan datatyp än det fält som du försöker mappa i ditt index kan det här felet uppstå. Kontrollera datatyperna för datakällans fält och kontrollera att de är korrekt mappade till dina indexdatatyper.

Error: Skill did not execute within the time limit

Det finns två fall där du kan stöta på det här felmeddelandet, som var och en bör behandlas på olika sätt. Följ anvisningarna nedan beroende på vilken färdighet som returnerade det här felet åt dig.

Inbyggda kunskaper om Azure AI-tjänster

Många av de inbyggda kognitiva färdigheterna, till exempel språkidentifiering, entitetsigenkänning eller OCR, backas upp av en API-slutpunkt för Azure AI-tjänster. Ibland finns det tillfälliga problem med dessa slutpunkter och en begäran överskrider tidsgränsen. För tillfälliga problem finns det inget annat alternativ än att vänta och försöka igen. Som en åtgärd bör du överväga att ange att indexeraren ska köras enligt ett schema. Schemalagd indexering fortsätter där den slutade. Förutsatt att tillfälliga problem är lösta bör indexering och kognitiv kompetensbearbetning kunna fortsätta vid nästa schemalagda körning.

Om du fortsätter att se det här felet i samma dokument för en inbyggd kognitiv färdighet kan du skicka in ett supportärende för att få hjälp, eftersom det inte är förväntat.

Anpassade färdigheter

Om du stöter på ett timeout-fel med en anpassad färdighet finns det några saker du kan prova. Granska först din anpassade kompetens och se till att den inte fastnar i en oändlig loop och att den returnerar ett resultat konsekvent. När du har bekräftat att ett resultat returneras kontrollerar du varaktigheten för körningen. Om du inte uttryckligen angav ett timeout värde för din anpassade kompetensdefinition är standardvärdet timeout 30 sekunder. Om 30 sekunder inte är tillräckligt lång för att din färdighet ska kunna köras kan du ange ett högre timeout värde för din anpassade kompetensdefinition. Här är ett exempel på en anpassad kompetensdefinition där tidsgränsen är inställd på 90 sekunder:

  {
        "@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"
          }
        ]
      }

Det maximala värdet som du kan ange för parametern timeout är 230 sekunder. Om din anpassade färdighet inte kan köras konsekvent inom 230 sekunder kan du överväga att minska dina batchSize anpassade kunskaper så att det finns färre dokument att bearbeta inom en enda körning. Om du redan har angett din batchSize till 1 måste du skriva om färdigheten för att kunna köra på under 230 sekunder, eller på annat sätt dela upp den i flera anpassade färdigheter så att körningstiden för en enskild anpassad färdighet är högst 230 sekunder. Mer information finns i dokumentationen för anpassad kompetens.

Error: Could not 'MergeOrUpload' | 'Delete' document to the search index

Dokumentet lästes och bearbetades, men indexeraren kunde inte lägga till det i sökindexet. Det här kan inträffa på grund av:

Anledning Information/exempel Åtgärd
Ett fält innehåller en term som är för stor En term i dokumentet är större än gränsen på 32 KB Du kan undvika den här begränsningen genom att se till att fältet inte är konfigurerat som filterbart, fasettbart eller sorterbart.
Dokumentet är för stort för att indexeras Ett dokument är större än den maximala API-begärandestorleken Indexering av stora datamängder
Dokumentet innehåller för många objekt i samlingen En samling i dokumentet överskrider gränsen för maximalt antal element för alla komplexa samlingar. 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. Vi rekommenderar att du minskar storleken på den komplexa samlingen i dokumentet till under gränsen och undviker hög lagringsanvändning.
Problem med att ansluta till målindexet (som kvarstår efter återförsök) eftersom tjänsten är under annan belastning, till exempel frågekörning eller indexering. Det gick inte att upprätta anslutningen till uppdateringsindexet. usluga pretrage är hårt belastat. Skala upp söktjänsten
usluga pretrage korrigeras för tjänstuppdatering eller är mitt i en topologikonfigurering. Det gick inte att upprätta anslutningen till uppdateringsindexet. usluga pretrage är för närvarande nere/usluga pretrage genomgår en övergång. Konfigurera tjänsten med minst tre repliker för 99,9 % tillgänglighet per SLA-dokumentation
Fel i den underliggande beräknings-/nätverksresursen (sällsynt) Det gick inte att upprätta anslutningen till uppdateringsindexet. Ett okänt fel inträffade. Konfigurera indexerare att köras enligt ett schema för att hämta från ett misslyckat tillstånd.
En indexeringsbegäran som gjordes till målindexet bekräftades inte inom en tidsgräns på grund av nätverksproblem. Det gick inte att upprätta en anslutning till sökindexet i tid. Konfigurera indexerare att köras enligt ett schema för att hämta från ett misslyckat tillstånd. Försök också att sänka batchstorleken för indexeraren om det här feltillståndet kvarstår.

Error: Could not index document because some of the document's data was not valid

Dokumentet lästes och bearbetades av indexeraren, men på grund av ett matchningsfel i konfigurationen av indexfälten och de data som extraherades och bearbetades av indexeraren kunde det inte läggas till i sökindexet. Det här kan inträffa på grund av:

Anledning Information/exempel
Datatypen för ett eller flera fält som extraheras av indexeraren är inte kompatibel med datamodellen för motsvarande målindexfält. 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)'.
Det gick inte att extrahera en JSON-entitet från ett strängvärde. 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.'
Det gick inte att extrahera en samling JSON-entiteter från ett strängvärde. 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.'
En okänd typ identifierades i källdokumentet. Unknown type '_unknown_' cannot be indexed
En inkompatibel notation för geografipunkter användes i källdokumentet. WKT POINT string literals are not supported. Use GeoJson point literals instead

I alla dessa fall går du till Datatyper som stöds och Datatypskarta för indexerare för att se till att du skapar indexschemat korrekt och har konfigurerat lämpliga indexeringsfältmappningar. Felmeddelandet innehåller information som kan hjälpa dig att spåra källan till matchningsfelet.

Error: Integrated change tracking policy cannot be used because table has a composite primary key

Detta gäller för SQL-tabeller och inträffar vanligtvis när nyckeln antingen definieras som en sammansatt nyckel eller när tabellen har definierat ett unikt klustrat index (som i ett SQL-index, inte ett Azure Search-index). Den främsta orsaken är att nyckelattributet ändras till en sammansatt primärnyckel i ett unikt grupperat index. I så fall kontrollerar du att SQL-tabellen inte har något unikt grupperat index eller att du mappar nyckelfältet till ett fält som garanterat inte har dubbletter.

Error: Could not process document within indexer max run time

Det här felet uppstår när indexeraren inte kan slutföra bearbetningen av ett enskilt dokument från datakällan inom den tillåtna körningstiden. Den maximala körningstiden är kortare när kompetensuppsättningar används. När det här felet inträffar, om du har angett maxFailedItems till ett annat värde än 0, kringgår indexeraren dokumentet vid framtida körningar så att indexeringen kan fortsätta. Om du inte har råd att hoppa över något dokument eller om du ser det här felet konsekvent kan du överväga att dela upp dokument i mindre dokument så att partiella framsteg kan göras inom en enda indexerare.

Error: Could not project document

Det här felet uppstår när indexeraren försöker projicera data till ett kunskapslager och det uppstod ett fel vid försöket. Det här felet kan vara konsekvent och kan åtgärdas, eller så kan det vara ett tillfälligt fel med projektionens utdatamottagare som du kan behöva vänta och försöka igen för att lösa problemet. Här är en uppsättning kända feltillstånd och möjliga lösningar.

Anledning Information/exempel Åtgärd
Det gick inte att uppdatera projektionsbloben 'blobUri' i containern 'containerName' Den angivna containern finns inte. Indexeraren kontrollerar om den angivna containern har skapats tidigare och skapar den om det behövs, men den utför bara den här kontrollen en gång per indexerare. Det här felet innebär att något tog bort containern efter det här steget. Lös det här felet genom att prova detta: lämna lagringskontoinformationen ensam, vänta tills indexeraren är klar och kör sedan indexeraren igen.
Det gick inte att uppdatera projektionsbloben 'blobUri' i containern 'containerName' Det gick inte att skriva data till transportanslutningen: En befintlig anslutning stängdes av fjärrvärden med två två skäl. Detta förväntas vara ett tillfälligt fel med Azure Storage och bör därför lösas genom att köra indexeraren igen. Om du stöter på det här felet konsekvent kan du skicka in ett supportärende så att det kan undersökas ytterligare.
Det gick inte att uppdatera raden 'projectionRow' i tabellen 'tableName' Servern är upptagen. Detta förväntas vara ett tillfälligt fel med Azure Storage och bör därför lösas genom att köra indexeraren igen. Om du stöter på det här felet konsekvent kan du skicka in ett supportärende så att det kan undersökas ytterligare.

Error: The cognitive service for skill '<skill-name>' has been throttled

Färdighetskörningen misslyckades eftersom anropet till Azure AI-tjänster begränsades. Vanligtvis inträffar den här felklassen när för många färdigheter körs parallellt. Om du använder klientbiblioteket Microsoft.Search.Documents för att köra indexeraren kan du använda SearchIndexingBufferedSender för att få automatiskt återförsök på misslyckade steg. Annars kan du återställa och köra indexeraren igen.

Error: Expected IndexAction metadata

Ett "Förväntat IndexAction-metadata"-fel innebär att när indexeraren försökte läsa dokumentet för att identifiera vilken åtgärd som skulle vidtas, hittade den inga motsvarande metadata i dokumentet. Normalt uppstår det här felet när indexeraren har en anteckningscache som har lagts till eller tagits bort utan att återställa indexeraren. För att åtgärda detta bör du återställa och köra indexeraren igen.

Warning: Skill input was invalid

En indata till färdigheten saknades, den har fel typ eller på annat sätt ogiltig. Du kan se följande information:

  • Could not execute skill

  • Skill executed but may have unexpected results

Kognitiva kunskaper har nödvändiga indata och valfria indata. Extraheringsfärdigheten för nyckelfraser texthar till exempel två obligatoriska indata , languageCodeoch inga valfria indata. Anpassade kunskapsindata anses alla vara valfria indata.

Om nödvändiga indata saknas eller om indata inte är rätt typ hoppas färdigheten över och genererar en varning. Överhoppade kunskaper genererar inte utdata. Om underordnade kunskaper använder utdata från den överhoppade färdigheten kan de generera andra varningar.

Om en valfri indata saknas körs färdigheten fortfarande, men den kan generera oväntade utdata på grund av att indata saknas.

I båda fallen beror den här varningen på formen på dina data. Om du till exempel har ett dokument som innehåller information om personer med fälten firstName, middleNameoch lastName, kan du ha vissa dokument som inte har en post för middleName. Om du skickar middleName som indata till en färdighet i pipelinen förväntas den här kunskapsinmatningen saknas en del av tiden. Du måste utvärdera dina data och scenarion för att avgöra om någon åtgärd krävs till följd av den här varningen.

Om du vill ange ett standardvärde för indata som saknas kan du använda den villkorsstyrda färdigheten för att generera ett standardvärde och sedan använda utdata från den villkorsstyrda färdigheten som kunskapsindata.

{
    "@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" } ]
}
Anledning Information/exempel Åtgärd
Kunskapsinmatning är fel typ "Nödvändiga kunskapsindata var inte av den förväntade typen String. Namn: text, Källa: /document/merged_content." "Nödvändig kunskapsinmatning var inte av förväntat format. Namn: text, Källa: /document/merged_content." "Det går inte att iterera över icke-matris /document/normalized_images/0/imageCelebrities/0/detail/celebrities." "Det går inte att välja 0 i icke-matris /document/normalized_images/0/imageCelebrities/0/detail/celebrities" Vissa färdigheter förväntar sig indata av vissa typer, till exempel Attitydfärdighet förväntar sig text att vara en sträng. Om indata anger ett icke-strängvärde körs inte färdigheten och genererar inga utdata. Se till att din datauppsättning har indatavärden som är enhetliga i typen eller använd en anpassad webb-API-färdighet för att förbearbeta indata. Om du itererar kunskapen över en matris kontrollerar du kunskapskontexten och indata i * rätt positioner. Vanligtvis bör både kontexten och indatakällan sluta med * för matriser.
Kunskapsindata saknas 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. Om den här varningen inträffar för alla dokument kan det finnas ett skrivfel i indatasökvägarna. Kontrollera egenskapsnamnets hölje. Sök efter ett extra eller saknas * i sökvägen. Kontrollera att dokumenten från datakällan innehåller de indata som krävs.
Kodindata för kunskapsspråk är ogiltiga Kunskapsindata languageCode har följande språkkoder X,Y,Z, varav minst en är ogiltig. Se mer information nedan.

Warning: Skill input 'languageCode' has the following language codes 'X,Y,Z', at least one of which is invalid.

Ett eller flera av de värden som skickas till valfria languageCode indata för en underordnad färdighet stöds inte. Detta kan inträffa om du skickar utdata från LanguageDetectionSkill till efterföljande färdigheter, och utdata består av fler språk än vad som stöds i dessa underordnade kunskaper.

Observera att du också kan få en varning som liknar den här om en ogiltig countryHint indata skickas till LanguageDetectionSkill. Om det händer kontrollerar du att fältet som du använder från datakällan för indata innehåller giltiga landskoder för ISO 3166-1 alfa-2 med två bokstäver. Om vissa är giltiga och vissa är ogiltiga fortsätter du med följande vägledning men ersätter languageCode med countryHint och defaultLanguageCode med defaultCountryHint för att matcha ditt användningsfall.

Om du vet att datamängden är på ett språk bör du ta bort LanguageDetectionSkill och kunskapsindata languageCode och använda färdighetsparametern för den defaultLanguageCode färdigheten i stället, förutsatt att språket stöds för den färdigheten.

Om du vet att datamängden innehåller flera språk och därför behöver LanguageDetectionSkill och languageCode indata kan du överväga att lägga till en ConditionalSkill för att filtrera bort texten med språk som inte stöds innan du skickar in texten till den underordnade färdigheten. Här är ett exempel på hur detta kan se ut för 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" } ]
}

Här följer några referenser för de språk som stöds för närvarande för var och en av de kunskaper som kan generera det här felmeddelandet:

Warning: Skill input was truncated

Kognitiva färdigheter begränsar längden på text som kan analyseras samtidigt. Om textinmatningen överskrider gränsen trunkeras texten innan den berikas. Färdigheten körs, men inte över alla dina data.

I exemplet LanguageDetectionSkill nedan 'text' kan indatafältet utlösa den här varningen om indata överskrider teckengränsen. Indatagränser finns i dokumentationen för kunskapsreferensen.

 {
    "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill",
    "inputs": [
      {
        "name": "text",
        "source": "/document/text"
      }
    ],
    "outputs": [...]
  }

Om du vill se till att all text analyseras bör du överväga att använda kunskapen Dela upp.

Warning: Web API skill response contains warnings

Indexeraren körde kunskapen i kompetensuppsättningen, men svaret från webb-API-begäran indikerar att det finns varningar. Granska varningarna för att förstå hur dina data påverkas och om ytterligare åtgärder krävs.

Warning: The current indexer configuration does not support incremental progress

Den här varningen inträffar endast för Azure Cosmos DB-datakällor.

Inkrementell förlopp under indexering säkerställer att om indexerarens körning avbryts av tillfälliga fel eller en tidsgräns för körning kan indexeraren fortsätta där den slutade nästa gång den körs, i stället för att behöva indexera om hela samlingen från grunden. Detta är särskilt viktigt när du indexerar stora samlingar.

Möjligheten att återuppta ett oavslutat indexeringsjobb bygger på att ha dokument ordnade efter _ts kolumnen. Indexeraren använder tidsstämpeln för att avgöra vilket dokument som ska hämtas härnäst. Om kolumnen _ts saknas eller om indexeraren inte kan avgöra om en anpassad fråga sorteras efter den, börjar indexeraren från början och du ser den här varningen.

Det går att åsidosätta det här beteendet, aktivera inkrementell förlopp och ignorera den här varningen med hjälp av konfigurationsegenskapen assumeOrderByHighWaterMarkColumn .

Mer information finns i Inkrementell förlopp och anpassade frågor.

Warning: Some data was lost during projection. Row 'X' in table 'Y' has string property 'Z' which was too long.

Table Storage-tjänsten har gränser för hur stora entitetsegenskaper kan vara. Strängar kan innehålla högst 32 000 tecken. Om en rad med en strängegenskap som är längre än 32 000 tecken projiceras bevaras endast de första 32 000 tecknen. Undvik det här problemet genom att undvika att projicera rader med strängegenskaper som är längre än 32 000 tecken.

Warning: Truncated extracted text to X characters

Indexerare begränsar hur mycket text som kan extraheras från ett dokument. Den här gränsen beror på prisnivån: 32 000 tecken för den kostnadsfria nivån, 64 000 för Basic, 4 miljoner för Standard, 8 miljoner för Standard S2 och 16 miljoner för Standard S3. Text som trunkerats indexeras inte. Undvik den här varningen genom att försöka dela upp dokument med stora mängder text i flera mindre dokument.

Mer information finns i Indexer-gränser.

Warning: Could not map output field 'X' to search index

Utdatafältmappningar som refererar till icke-existerande/null-data skapar varningar för varje dokument och resulterar i ett tomt indexfält. Du kan undvika det här problemet genom att dubbelkolla källsökvägarna för utdatafältmappning för möjliga stavfel eller ange ett standardvärde med hjälp av den villkorsstyrda färdigheten. Mer information finns i Mappning av utdatafält.

Anledning Information/exempel Åtgärd
Det går inte att iterera över icke-matris "Det går inte att iterera över icke-matris /document/normalized_images/0/imageCelebrities/0/detail/celebrities." Det här felet uppstår när utdata inte är en matris. Om du tycker att utdata ska vara en matris kontrollerar du den angivna fältsökvägen för utdatakällan efter fel. Du kan till exempel ha en saknad eller extra * i källfältets namn. Det är också möjligt att indata för den här färdigheten är null, vilket resulterar i en tom matris. Hitta liknande information i avsnittet Kompetensindata var Ogiltig .
Det går inte att välja 0 i icke-matris "Det går inte att välja 0 i icke-matris /document/pages." Detta kan inträffa om kunskapsutdata inte genererar en matris och utdatakällans fältnamn har matrisindex eller * i sökvägen. Dubbelkolla sökvägarna i fältnamnen för utdatakällan och fältvärdet för det angivna fältnamnet. Hitta liknande information i avsnittet Kompetensindata var Ogiltig .

Warning: The data change detection policy is configured to use key column 'X'

Principer för identifiering av dataändringar har specifika krav för de kolumner som de använder för att identifiera ändringar. Ett av dessa krav är att den här kolumnen uppdateras varje gång källobjektet ändras. Ett annat krav är att det nya värdet för den här kolumnen är större än det tidigare värdet. Nyckelkolumner uppfyller inte det här kravet eftersom de inte ändras vid varje uppdatering. Du kan undvika det här problemet genom att välja en annan kolumn för principen för ändringsidentifiering.

Warning: Document text appears to be UTF-16 encoded, but is missing a byte order mark

Indexerarens parsningslägen måste veta hur text kodas innan den parsas. De två vanligaste sätten att koda text är UTF-16 och UTF-8. UTF-8 är en kodning med variabel längd där varje tecken är mellan 1 byte och 4 byte långt. UTF-16 är en kodning med fast längd där varje tecken är 2 byte långt. UTF-16 har två olika varianter och big endian little endian. Textkodning bestäms av en byte order mark, en serie byte före texten.

Encoding Byteordningsmarkering
UTF-16 Big Endian 0xFE 0xFF
UTF-16 Little Endian 0xFF 0xFE
UTF-8 0xEF 0xBB 0xBF

Om det inte finns någon byteordningsmarkering antas texten vara kodad som UTF-8.

Du kan kringgå den här varningen genom att fastställa vad textkodningen för den här bloben är och lägga till lämplig byteordningsmarkering.

Warning: Azure Cosmos DB collection 'X' has a Lazy indexing policy. Some data may be lost

Samlingar med lazy-indexeringsprinciper kan inte efterfrågas konsekvent, vilket resulterar i att indexeraren saknar data. Om du vill kringgå den här varningen ändrar du indexeringsprincipen till Konsekvent.

Warning: The document contains very long words (longer than 64 characters). These words may result in truncated and/or unreliable model predictions.

Den här varningen skickas från Språktjänsten för Azure AI-tjänster. I vissa fall är det säkert att ignorera den här varningen, till exempel om den långa strängen bara är en lång URL. Tänk på att när ett ord är längre än 64 tecken trunkeras det till 64 tecken som kan påverka modellförutsägelser.

Error: Cannot write more bytes to the buffer than the configured maximum buffer size

Indexerare har begränsningar för dokumentstorlek. Kontrollera att dokumenten i datakällan är mindre än storleksgränsen som stöds, enligt beskrivningen för tjänstnivån.