Azure AI Search'te sık karşılaşılan dizin oluşturucu hatalarını ve uyarılarını giderme

Bu makalede, Azure AI Search'te dizin oluşturma ve yapay zeka zenginleştirmesi sırasında karşılaşabileceğiniz yaygın hatalara ve uyarılara yönelik bilgi ve çözümler sağlanır.

Hata sayısı 'maxFailedItems' değerini aştığında dizin oluşturma durdurulur.

Dizin oluşturucuların bu hataları yoksaymasını (ve "başarısız belgeler" atlanmasını) istiyorsanız, ve maxFailedItemsPerBatch dosyasını maxFailedItems burada açıklandığı gibi güncelleştirmeyi göz önünde bulundurun.

Not

Başarısız olan her belgenin yanı sıra belge anahtarı (kullanılabilir olduğunda) dizin oluşturucu yürütme durumunda bir hata olarak gösterilir. Dizin oluşturucuyu hataları tolere etmek üzere ayarladıysanız, belgeleri daha sonraki bir noktada el ile karşıya yüklemek için dizin api'sini kullanabilirsiniz.

Bu makaledeki hata bilgileri hataları çözmenize yardımcı olabilir ve dizin oluşturmanın devam etmesi için izin verir.

Uyarılar dizin oluşturmayı durdurmaz, ancak beklenmeyen sonuçlara neden olabilecek koşulları gösterir. Eylemde bulunup bulunmadığınız verilere ve senaryonuza bağlıdır.

Belirli dizin oluşturucu hatalarını nerede bulabilirsiniz?

Dizin oluşturucu durumunu doğrulamak ve Azure portalındaki hataları belirlemek için aşağıdaki adımları izleyin:

  1. Azure portalına gidin ve yapay zeka Arama hizmeti bulun.
  2. Yapay zeka Arama hizmeti geçtikten sonra 'Dizin Oluşturucular' sekmesine tıklayın.
  3. Dizin oluşturucu listesinden doğrulamak istediğiniz dizin oluşturucuyu belirleyin.
  4. 'Yürütme Geçmişi' sütununun altında, seçili dizin oluşturucuyla ilişkilendirilmiş 'Durum' köprüsüne tıklayın.
  5. Hata varsa, hata iletisinin üzerine gelin. Ekranınızın sağ tarafında hatayla ilgili ayrıntılı bilgilerin görüntülendiği bir bölme görüntülenir.

Geçici hatalar

Geçici ağ iletişim kesintileri, uzun süre çalışan işlemlerden zaman aşımları veya belirli belge nüansları gibi çeşitli nedenlerle, dizin oluşturucu çalıştırmaları sırasında geçici hatalarla veya uyarılarla karşılaşmak yaygın bir durumdur. Ancak, bu hatalar geçicidir ve sonraki dizin oluşturucu çalıştırmalarında çözümlenmelidir.

Bu hataları etkili bir şekilde yönetmek için dizin oluşturucunuzun bir zamanlamaya (örneğin, beş dakikada bir) çalıştırılması önerilir. Bu, sonraki çalıştırmanın ilk çalıştırmanın tamamlanmasından beş dakika sonra ve çalışma zamanı üst sınırına bağlı olarak başlar. Düzenli olarak zamanlanan çalıştırmalar, geçici hataları veya uyarıları hızla düzeltmeye yardımcı olur.

Birden çok dizin oluşturucu çalıştırması üzerinde kalıcı bir hata fark ederseniz, bu büyük olasılıkla geçici bir sorun değildir. Bu gibi durumlarda olası çözümler için aşağıdaki listeye bakın. Dizin oluşturma zamanlamanızın dizin oluşturucu sınırları kılavuzumuzda belirtilen sınırlamalarla uyumlu olduğundan emin olun.

Hata özellikleri

API sürümünden 2019-05-06başlayarak, öğe düzeyi Dizin Oluşturucu hataları ve uyarıları, nedenler ve sonraki adımlar konusunda daha fazla netlik sağlamak üzere yapılandırılmıştır. Bunlar aşağıdaki özellikleri içerir:

Özellik Açıklama Örnek
Anahtar Hata veya uyarıdan etkilenen belgenin belge kimliği. https://<storageaccount>.blob.core.windows.net/jfk-1k/docid-32112954.pdf
Veri Akışı Adı Hatanın veya uyarının oluştuğu yeri açıklayan işlem adı. Bu, şu yapı tarafından oluşturulur: [category].[subcategory].[resourceType].[resourceName] DocumentExtraction.azureblob.myBlobContainerName Enrichment.WebApiSkill.mySkillName Projection.SearchIndex.OutputFieldMapping.myOutputFieldName Projection.SearchIndex.MergeOrUpload.myIndexName Projection.KnowledgeStore.Table.myTableName
İleti Hatanın veya uyarının üst düzey açıklaması. Could not execute skill because the Web Api request failed.
Ayrıntılar Özel beceri yürütülemediğinde WebApi yanıtı gibi sorunu tanılamada yardımcı olabilecek belirli bilgiler. 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 Sorunu ayıklamak ve çözmek için ayrıntılı bilgiler içeren ilgili belgelerin bağlantısı. Bu bağlantı genellikle bu sayfadaki aşağıdaki bölümlerden birine işaret eder. https://go.microsoft.com/fwlink/?linkid=2106475

Error: Could not read document

Dizin oluşturucu belgeyi veri kaynağından okuyamadı. Bu durum şunlardan kaynaklanıyor olabilir:

Nedeni Ayrıntılar/Örnek Çözüm
Farklı belgeler arasında tutarsız alan türleri 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. Her alanın türünün farklı belgelerde aynı olduğundan emin olun. Örneğin, ilk belge 'startTime' alanı bir DateTime ise ve ikinci belgede bu bir dizeyse, bu hataya isabet edilir.
Veri kaynağının temel hizmetindeki hatalar Azure Cosmos DB'den: {"Errors":["Request rate is large"]} İyi durumda olduğundan emin olmak için depolama örneğinizi denetleyin. Ölçeklendirmenizi veya bölümlemenizi ayarlamanız gerekebilir.
Geçici sorunlar 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 Bazen beklenmeyen bağlantı sorunları yaşanıyor. Belgeyi dizin oluşturucunuz aracılığıyla daha sonra yeniden çalıştırmayı deneyin.

Error: Could not extract content or metadata from your document

Blob veri kaynağı olan dizin oluşturucu, belgedeki içeriği veya meta verileri ayıklayamadı (örneğin, bir PDF dosyası). Bu durum şunlardan kaynaklanıyor olabilir:

Nedeni Ayrıntılar/Örnek Çözüm
Blob boyut sınırını aştı Document is '150441598' bytes, which exceeds the maximum size '134217728' bytes for document extraction for your current service tier. Blob dizin oluşturma hataları
Blob desteklenmeyen içerik türüne sahip Document has unsupported content type 'image/png' Blob dizin oluşturma hataları
Blob şifrelenir Document could not be processed - it may be encrypted or password protected. Blob ayarlarını içeren blobu atlayabilirsiniz.
Geçici sorunlar Error processing blob: The request was aborted: The request was canceled. Document timed out during processing. Bazen beklenmeyen bağlantı sorunları yaşanıyor. Belgeyi dizin oluşturucunuz aracılığıyla daha sonra yeniden çalıştırmayı deneyin.

Error: Could not parse document

Dizin oluşturucu belgeyi veri kaynağından okudu, ancak belge içeriği belirtilen alan eşleme şemasına dönüştürülürken bir sorun oluştu. Bu durum şunlardan kaynaklanıyor olabilir:

Nedeni Ayrıntılar/Örnek Çözüm
Belge anahtarı eksik Document key cannot be missing or empty Tüm belgelerin geçerli belge anahtarları olduğundan emin olun. Belge anahtarı, dizin tanımının bir parçası olarak 'key' özelliği ayarlanarak belirlenir. Dizin oluşturucular, 'anahtar' olarak işaretlenen özellik belirli bir belgede bulunamadığında bu hatayı gösterir.
Belge anahtarı geçersiz Invalid document key. Keys can only contain letters, digits, underscore (_), dash (-), or equal sign (=). Tüm belgelerin geçerli belge anahtarları olduğundan emin olun. Daha fazla ayrıntı için Blob Depolama Dizin oluşturma bölümünü gözden geçirin. Blob dizin oluşturucusu kullanıyorsanız ve belge anahtarınız alansametadata_storage_path, dizin oluşturucu tanımının düz metindeki yol yerine değerine eşit nullbir base64Encode eşleme işlevineparameters sahip olduğundan emin olun.
Belge anahtarı geçersiz Document key cannot be longer than 1024 characters Belge anahtarını doğrulama gereksinimlerini karşılayacak şekilde değiştirin.
Alana alan eşlemesi uygulanamadı Could not apply mapping function 'functionName' to field 'fieldName'. Array cannot be null. Parameter name: bytes Dizin oluşturucuda tanımlanan alan eşlemelerini bir kez daha denetleyin ve başarısız belgenin belirtilen alanının verileriyle karşılaştırın. Alan eşlemelerini veya belge verilerini değiştirmek gerekebilir.
Alan değeri okunamadı 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.) Bu hatalar genellikle veri kaynağının temel alınan hizmetiyle ilgili beklenmeyen bağlantı sorunlarından kaynaklanıyor. Belgeyi dizin oluşturucunuz aracılığıyla daha sonra yeniden çalıştırmayı deneyin.

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

Çıkış verileri kullanmakta olduğunuz eşleme işlevi için yanlış biçimde olduğundan çıkış eşlemesi başarısız olmuş olabilir. Örneğin, ikili verilere eşleme işlevinin uygulanması Base64Encode bu hatayı oluşturur. Sorunu çözmek için, eşleme işlevini belirtmeden dizin oluşturucuyu yeniden çalıştırın veya eşleme işlevinin çıkış alanı veri türüyle uyumlu olduğundan emin olun. Ayrıntılar için bkz . Çıkış alanı eşlemesi .

Error: Could not execute skill

Dizin oluşturucu beceri kümesinde bir beceri çalıştıramadı.

Nedeni Ayrıntılar/Örnek Çözüm
Geçici bağlantı sorunları Geçici bir hata oluştu. Daha sonra tekrar deneyin. Bazen beklenmeyen bağlantı sorunları yaşanıyor. Belgeyi dizin oluşturucunuz aracılığıyla daha sonra yeniden çalıştırmayı deneyin.
Olası ürün hatası Beklenmeyen bir hata oluştu. Bu, bilinmeyen bir hata sınıfını gösterir ve bir ürün hatasını gösterebilir. Yardım almak için bir destek bileti oluşturun.
Bir beceri yürütme sırasında bir hatayla karşılaştı (Birleştirme Becerisinden) Bir veya daha fazla uzaklık değeri geçersizdi ve ayrıştırılamıyordu. Metnin sonuna öğeler eklendi Sorunu düzeltmek için hata iletisindeki bilgileri kullanın. Bu tür bir hatanın çözülmesi için eylem gerekir.

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

Web API'sine yapılan çağrı başarısız olduğundan beceri yürütme başarısız oldu. Bu hata sınıfı genellikle özel beceriler kullanıldığında oluşur ve bu durumda sorunu çözmek için özel kodunuzda hata ayıklamanız gerekir. Bunun yerine hata yerleşik bir beceriden geliyorsa, sorunu düzeltme konusunda yardım için hata iletisine bakın.

Bu sorunun hatalarını ayıklarken, bu beceri için beceri giriş uyarılarına dikkat edin. Dizin oluşturucu beklenmeyen bir giriş geçirdiğiniz için Web API uç noktanız başarısız olabilir.

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

Web API'sine yapılan çağrı geçersiz bir yanıt döndürdiğinden beceri yürütme başarısız oldu. Bu hata sınıfı genellikle özel beceriler kullanıldığında oluşur ve bu durumda sorunu çözmek için özel kodunuzda hata ayıklamanız gerekir. Bunun yerine hata yerleşik bir beceriden geliyorsa yardım almak için bir destek bileti oluşturun.

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

Veri kaynağınızda, dizininizde eşlemeye çalıştığınız alandan farklı bir veri türüne sahip bir alan varsa, bu hatayla karşılaşabilirsiniz. Veri kaynağı alanı veri türlerinizi denetleyin ve bunların dizin veri türlerinizle doğru eşlendiğinden emin olun.

Error: Skill did not execute within the time limit

Bu hata iletisiyle karşılaşabileceğiniz iki durum vardır ve bunların her biri farklı şekilde ele alınmalıdır. Bu hatayı sizin için döndüren beceriye bağlı olarak aşağıdaki yönergeleri izleyin.

Yerleşik Azure AI hizmetleri becerileri

Dil algılama, varlık tanıma veya OCR gibi yerleşik bilişsel becerilerin çoğu azure yapay zeka hizmetleri API uç noktası tarafından desteklenir. Bazen bu uç noktalarla ilgili geçici sorunlar olabilir ve istek zaman aşımına uğradı. Geçici sorunlar için beklemek ve yeniden denemek dışında bir çözüm yoktur. Bir azaltma olarak, dizin oluşturucunuzu bir zamanlamaya göre çalışacak şekilde ayarlamayı göz önünde bulundurun. Zamanlanmış dizin oluşturma, kaldığınız yerden devam eder. Geçici sorunların çözüldüğünü varsayarsak, dizin oluşturma ve bilişsel beceri işlemenin bir sonraki zamanlanmış çalıştırmada devam edebilmesi gerekir.

Yerleşik bilişsel beceri için aynı belgede bu hatayı görmeye devam ederseniz, bu beklenmiyorsa yardım almak için bir destek bileti oluşturun.

Özel beceriler

Özel beceriyle bir zaman aşımı hatasıyla karşılaşırsanız deneyebileceğiniz birkaç şey vardır. İlk olarak özel becerinizi gözden geçirin ve sonsuz döngüde takılmadığından ve tutarlı bir şekilde sonuç döndürdiğinden emin olun. Bir sonucun döndürüldüğünü onayladıktan sonra yürütme süresini denetleyin. Özel beceri tanımınızda açıkça bir timeout değer ayarlamadıysanız varsayılan timeout değer 30 saniyedir. Becerinizin yürütülmesi için 30 saniye yeterli değilse, özel beceri tanımınızda daha yüksek timeout bir değer belirtebilirsiniz. Zaman aşımının 90 saniye olarak ayarlandığı özel beceri tanımı örneği aşağıda verilmiştir:

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

parametre için timeout ayarlayabileceğiniz en yüksek değer 230 saniyedir. Özel beceriniz 230 saniye içinde tutarlı bir şekilde yürütülemezse, tek bir yürütme içinde işlenmek üzere daha az belge olması için özel becerinizi azaltmayı batchSize düşünebilirsiniz. Zaten batchSize 1 olarak ayarladıysanız, 230 saniyenin altında yürütebilmek için beceriyi yeniden yazmanız veya herhangi bir özel becerinin yürütme süresinin en fazla 230 saniye olması için bunu birden çok özel beceriye bölmeniz gerekir. Daha fazla bilgi için özel beceri belgelerini gözden geçirin.

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

Belge okundu ve işlendi, ancak dizin oluşturucu bunu arama dizinine ekleyemedi. Bu durum şunlardan kaynaklanıyor olabilir:

Nedeni Ayrıntılar/Örnek Çözüm
Alan çok büyük bir terim içeriyor Belgenizdeki bir terim 32 KB sınırından büyük Alanın filtrelenebilir, modellenebilir veya sıralanabilir olarak yapılandırılmadığından emin olarak bu kısıtlamayı önleyebilirsiniz.
Belge dizine alınamayacak kadar büyük Belge en büyük API isteği boyutundan büyük Büyük veri kümelerini dizine ekleme
Belge koleksiyonda çok fazla nesne içeriyor Belgenizdeki bir koleksiyon, tüm karmaşık koleksiyonlar sınırındaki öğe üst sınırını aşıyor. 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. Belgedeki karmaşık koleksiyonun boyutunu sınırın altına indirmenizi ve yüksek depolama kullanımından kaçınmanızı öneririz.
Hizmet sorgulama veya dizin oluşturma gibi başka bir yük altında olduğundan hedef dizine bağlanma sorunu (yeniden denemelerden sonra devam eder). Dizini güncelleştirmek için bağlantı kurulamadı. Arama hizmeti ağır yük altında. Arama hizmetinizin ölçeğini artırma
Arama hizmeti hizmet güncelleştirmesi için düzeltme eki uygulanıyor veya topoloji yeniden yapılandırmasının ortasında. Dizini güncelleştirmek için bağlantı kurulamadı. Arama hizmeti şu anda çalışmıyor/Arama hizmeti geçiş yapılıyor. SLA belgeleri başına %99,9 kullanılabilirlik için hizmeti en az üç çoğaltmayla yapılandırma
Temel alınan işlem/ağ kaynağında hata (nadir) Dizini güncelleştirmek için bağlantı kurulamadı. Bilinmeyen bir hata oluştu. Dizin oluşturucuları başarısız durumdan almak üzere bir zamanlamaya göre çalışacak şekilde yapılandırın.
Ağ sorunları nedeniyle hedef dizine yapılan dizin oluşturma isteği zaman aşımı süresi içinde kabul görmedi. Arama dizinine zamanında bağlantı kurulamadı. Dizin oluşturucuları başarısız durumdan almak üzere bir zamanlamaya göre çalışacak şekilde yapılandırın. Ayrıca, bu hata koşulu devam ederse dizin oluşturucu toplu iş boyutunu düşürmeyi deneyin.

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

Belge dizin oluşturucu tarafından okundu ve işlendi, ancak dizin alanlarının yapılandırmasındaki uyuşmazlık ve dizin oluşturucu tarafından ayıklanan ve işlenen veriler nedeniyle arama dizinine eklenemedi. Bu durum şunlardan kaynaklanıyor olabilir:

Nedeni Ayrıntılar/Örnek
Dizin oluşturucu tarafından ayıklanan bir veya daha fazla alanın veri türü, karşılık gelen hedef dizin alanının veri modeliyle uyumsuz. 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)'.
Dize değerinden herhangi bir JSON varlığı ayıklanamadı. 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.'
Dize değerinden JSON varlıkları koleksiyonu ayıklanamadı. 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.'
Kaynak belgede bilinmeyen bir tür bulundu. Unknown type '_unknown_' cannot be indexed
Kaynak belgede coğrafya noktaları için uyumsuz bir notasyon kullanıldı. WKT POINT string literals are not supported. Use GeoJson point literals instead

Tüm bu durumlarda, dizin şemasını doğru oluşturduğunuzdan ve uygun dizin oluşturucu alanı eşlemelerini ayarladığınızdan emin olmak için Desteklenen Veri türleri ve Dizin oluşturucular için Veri türü eşlemesine bakın. Hata iletisi, uyuşmazlık kaynağının izlenmesine yardımcı olabilecek ayrıntılar içerir.

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

Bu, SQL tabloları için geçerlidir ve genellikle anahtar bileşik anahtar olarak tanımlandığında veya tablo benzersiz bir kümelenmiş dizin tanımladığında (Azure Search dizininde değil SQL dizininde olduğu gibi) gerçekleşir. Bunun temel nedeni, anahtar özniteliğinin benzersiz bir kümelenmiş dizinde bileşik birincil anahtar olacak şekilde değiştirilmesidir. Bu durumda, SQL tablonuzun benzersiz bir kümelenmiş dizini olmadığından veya anahtar alanını yinelenen değerlere sahip olmaması garanti edilen bir alanla eşlediğinizden emin olun.

Error: Could not process document within indexer max run time

Bu hata, dizin oluşturucu izin verilen yürütme süresi içinde veri kaynağından tek bir belgeyi işlemeyi bitiremediğinde oluşur. Beceri kümeleri kullanıldığında maksimum çalışma süresi daha kısadır. Bu hata oluştuğunda maxFailedItems değerini 0 dışında bir değere ayarladıysanız, dizin oluşturucu gelecekteki çalıştırmalarda belgeyi atlayarak dizin oluşturmanın ilerlemesini sağlar. Herhangi bir belgeyi atlamayı göze alamazsanız veya bu hatayı tutarlı bir şekilde görüyorsanız, tek bir dizin oluşturucu yürütmesinde kısmi ilerleme kaydedilebilmesi için belgeleri daha küçük belgelere bölmeyi göz önünde bulundurun.

Error: Could not project document

Bu hata, dizin oluşturucu verileri bir bilgi deposuna yansıtmaya çalıştığında ve denemede bir hata oluştuğunda oluşur. Bu hata tutarlı ve düzeltilebilir olabileceği gibi, çözmek için beklemeniz ve yeniden denemeniz gerekebilecek yansıtma çıkış havuzuyla ilgili geçici bir hata da olabilir. Burada bilinen hata durumları ve olası çözümler kümesi yer alır.

Nedeni Ayrıntılar/Örnek Çözüm
Kapsayıcıdaki projeksiyon blobu 'blobUri' güncelleştirilemedi 'containerName' Belirtilen kapsayıcı yok. Dizin oluşturucu, belirtilen kapsayıcının daha önce oluşturulup oluşturulmadığını denetler ve gerekirse bunu oluşturur, ancak bu denetimi dizin oluşturucu çalıştırması başına yalnızca bir kez gerçekleştirir. Bu hata, bir şeyin bu adımdan sonra kapsayıcıyı sildiği anlamına gelir. Bu hatayı çözmek için şunu deneyin: Depolama hesabı bilgilerinizi yalnız bırakın, dizin oluşturucunun tamamlanmasını bekleyin ve dizin oluşturucuyu yeniden çalıştırın.
Kapsayıcıdaki projeksiyon blobu 'blobUri' güncelleştirilemedi 'containerName' Aktarım bağlantısına veri yazılamıyor: Var olan bir bağlantı uzak konak tarafından zorla kapatıldı. Bunun Azure Depolama'da geçici bir hata olması beklenir ve bu nedenle dizin oluşturucu yeniden çalıştırılarak çözümlenmelidir. Bu hatayla tutarlı bir şekilde karşılaşırsanız daha fazla araştırılabilmesi için bir destek bileti oluşturun.
Tablodaki satır 'projectionRow' güncelleştirilemedi 'tableName' Sunucu meşgul. Bunun Azure Depolama'da geçici bir hata olması beklenir ve bu nedenle dizin oluşturucu yeniden çalıştırılarak çözümlenmelidir. Bu hatayla tutarlı bir şekilde karşılaşırsanız daha fazla araştırılabilmesi için bir destek bileti oluşturun.

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

Azure yapay zeka hizmetlerine yönelik çağrı kısıtlandığından beceri yürütme başarısız oldu. Bu hata sınıfı genellikle çok fazla beceri paralel yürütülürken oluşur. Dizin oluşturucuyu çalıştırmak için Microsoft.Search.Documents istemci kitaplığını kullanıyorsanız, başarısız adımlarda otomatik yeniden deneme yapmak için SearchIndexingBufferedSender'ı kullanabilirsiniz. Aksi takdirde dizin oluşturucuyu sıfırlayabilir ve yeniden çalıştırabilirsiniz.

Error: Expected IndexAction metadata

'Beklenen IndexAction meta verileri' hatası, dizin oluşturucu hangi eylemin gerçekleştirilmesi gerektiğini belirlemek için belgeyi okumaya çalıştığında belgede karşılık gelen meta verileri bulamadı anlamına gelir. Bu hata genellikle dizin oluşturucunun ek açıklama önbelleği eklendiğinde veya dizin oluşturucu sıfırlanmadan kaldırıldığında oluşur. Bu sorunu gidermek için dizin oluşturucuyu sıfırlayıp yeniden çalıştırmanız gerekir.

Warning: Skill input was invalid

Beceriye yönelik bir giriş eksikti, yanlış türde veya başka bir şekilde geçersiz. Aşağıdaki bilgileri görebilirsiniz:

  • Could not execute skill

  • Skill executed but may have unexpected results

Bilişsel beceriler gerekli girişlere ve isteğe bağlı girişlere sahiptir. Örneğin Anahtar tümcecik ayıklama becerisindeiki gerekli giriş textvardır languageCodeve isteğe bağlı giriş yoktur. Özel beceri girişlerinin tümü isteğe bağlı girişler olarak kabul edilir.

Gerekli girişler eksikse veya giriş doğru türde değilse, beceri atlanır ve bir uyarı oluşturur. Atlanan beceriler çıkış oluşturmaz. Aşağı akış becerileri atlanan becerinin çıkışlarını tüketirse, başka uyarılar oluşturabilir.

İsteğe bağlı bir giriş eksikse, beceri çalışmaya devam eder, ancak eksik giriş nedeniyle beklenmeyen bir çıkış üretebilir.

Her iki durumda da, bu uyarı verilerinizin şeklinden kaynaklanır. Örneğin, , middleNameve lastNamealanlarına firstNamesahip kişiler hakkında bilgi içeren bir belgeniz varsa, için middleNamegirişi olmayan bazı belgeleriniz olabilir. İşlem hattındaki bir beceriye giriş olarak geçerseniz middleName , bu beceri girişinin belirli bir süre eksik olması beklenir. Bu uyarının sonucu olarak herhangi bir eylem gerekip gerekmediğini belirlemek için verilerinizi ve senaryonuzu değerlendirmeniz gerekir.

Eksik bir giriş için varsayılan bir değer sağlamak istiyorsanız, Koşullu beceriyi kullanarak varsayılan bir değer oluşturabilir ve ardından beceri girişi olarak Koşullu becerinin çıkışını kullanabilirsiniz.

{
    "@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" } ]
}
Nedeni Ayrıntılar/Örnek Çözüm
Beceri girişi yanlış türde "Gerekli beceri girişi beklenen türde Stringdeğildi. Ad: text, Kaynak: /document/merged_content." "Gerekli beceri girişi beklenen biçimde değildi. Ad: text, Kaynak: /document/merged_content." "Dizi /document/normalized_images/0/imageCelebrities/0/detail/celebritiesolmayanlar üzerinde yinelenemiyor." "Dizi /document/normalized_images/0/imageCelebrities/0/detail/celebritiesdışı seçim 0 yapılamıyor" Belirli beceriler belirli türlerde girişler bekler, örneğin Yaklaşım becerisi bir dize olmasını bekler text . Giriş bir dize olmayan değer belirtiyorsa, beceri yürütülmüyor ve çıkış oluşturmuyor. Veri kümenizin türünde tekdüzen giriş değerleri olduğundan emin olun veya girişi önceden işlemek için Özel Web API'sinin becerisini kullanın. Beceriyi bir dizi üzerinde yinelerseniz beceri bağlamını ve girişin doğru konumlarda olup olmadığını * denetleyin. Genellikle diziler için hem bağlam hem de giriş kaynağı ile * bitmelidir.
Beceri girişi eksik 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. Bu uyarı tüm belgeler için oluşursa, giriş yollarında bir yazım hatası olabilir. Özellik adı büyük/küçük harflerini denetleyin. Yolda fazladan veya eksik olup olmadığını * denetleyin. Veri kaynağındaki belgelerin gerekli girişleri sağladığını doğrulayın.
Beceri dili kod girişi geçersiz Beceri girişi languageCode aşağıdaki dil kodlarına X,Y,Zsahiptir ve bunlardan en az biri geçersizdir. Aşağıdaki diğer ayrıntılara bakın.

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

Aşağı akış becerisinin isteğe bağlı languageCode girişine geçirilen değerlerden biri veya daha fazlası desteklenmez. LanguageDetectionSkill çıkışını sonraki becerilere geçiriyorsanız ve çıkış bu aşağı akış becerilerinde desteklenenden daha fazla dilden oluşuyorsa bu durum oluşabilir.

LanguageDetectionSkill'e geçersiz countryHint bir giriş geçirilirse buna benzer bir uyarı da alabileceğinizi unutmayın. Böyle bir durumda, bu giriş için veri kaynağınızdan kullandığınız alanın geçerli ISO 3166-1 alfa-2 iki harfli ülke kodları içerdiğini doğrulayın. Bazıları geçerli, bazıları geçersizse aşağıdaki kılavuzla devam edin, ancak kullanım örneğinizle eşleşecek şekilde ve countryHintdefaultLanguageCode ile defaultCountryHint değiştirinlanguageCode.

Veri kümenizin tümünün tek bir dilde olduğunu biliyorsanız LanguageDetectionSkill ve languageCode beceri girişini kaldırmanız ve bu beceri için dil desteği olduğunu varsayarak beceri parametresini kullanmanız defaultLanguageCode gerekir.

Veri kümenizin birden çok dil içerdiğini ve bu nedenle LanguageDetectionSkill ve languageCode girişe ihtiyacınız olduğunu biliyorsanız, metni aşağı akış becerisine geçirmeden önce desteklenmeyen dillere sahip metinleri filtrelemek için bir ConditionalSkill eklemeyi göz önünde bulundurun. EntityRecognitionSkill için bunun nasıl görünebileceğine ilişkin bir örnek aşağıda verilmiştir:

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

Bu hata iletisini üretebilecek becerilerin her biri için şu anda desteklenen diller için bazı başvurular aşağıdadır:

Warning: Skill input was truncated

Bilişsel beceriler, bir kerede analiz edilebilecek metin uzunluğunu sınırlar. Metin girişi sınırı aşarsa, metin zenginleştirilmeden önce kesilir. Beceri yürütülür, ancak tüm verileriniz üzerinde yürütülür.

Aşağıdaki örnekte LanguageDetectionSkill giriş alanı, 'text' giriş karakter sınırının üzerindeyse bu uyarıyı tetikleyebilir. Giriş sınırları beceri başvuru belgelerinde bulunabilir.

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

Tüm metnin çözümlendiğinden emin olmak istiyorsanız Bölme becerisini kullanmayı göz önünde bulundurun.

Warning: Web API skill response contains warnings

Dizin oluşturucu beceri kümesindeki beceriyi çalıştırmıştı, ancak Web API'sinden gelen yanıt uyarı olduğunu gösteriyor. Verilerinizin nasıl etkilendiğini ve başka eylem gerekip gerekmediğini anlamak için uyarıları gözden geçirin.

Warning: The current indexer configuration does not support incremental progress

Bu uyarı yalnızca Azure Cosmos DB veri kaynakları için oluşur.

Dizin oluşturma sırasında artımlı ilerleme, dizin oluşturucu yürütmesinin geçici hatalar veya yürütme süresi sınırı nedeniyle kesintiye uğraması durumunda, dizin oluşturucunun koleksiyonun tamamını sıfırdan yeniden dizine almak yerine bir sonraki çalıştırmada kaldığı yerden devam etmesini sağlar. Bu, özellikle büyük koleksiyonların dizinini oluştururken önemlidir.

Tamamlanmamış bir dizin oluşturma işini sürdürme özelliği, belgelerin sütuna göre _ts sıralanmasıyla ön koşullandırılır. Dizin oluşturucu, sonraki belgeyi almak için zaman damgasını kullanır. _ts Sütun eksikse veya dizin oluşturucu özel bir sorgunun tarafından sıralanıp sıralı olmadığını belirleyemiyorsa, dizin oluşturucu başlangıçta başlar ve bu uyarıyı görürsünüz.

Bu davranışı geçersiz kılmak, artımlı ilerlemeyi etkinleştirmek ve yapılandırma özelliğini kullanarak bu uyarıyı bastırmak assumeOrderByHighWaterMarkColumn mümkündür.

Daha fazla bilgi için bkz . Artımlı ilerleme durumu ve özel sorgular.

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

Tablo Depolama hizmetinin, varlık özelliklerinin ne kadar büyük olabileceğiyle ilgili sınırları vardır. Dizelerde 32.000 veya daha az karakter olabilir. Dize özelliği 32.000 karakterden uzun olan bir satır yansıtılıyorsa, yalnızca ilk 32.000 karakter korunur. Bu sorunu geçici olarak çözmek için 32.000 karakterden uzun dize özelliklerine sahip satırları yansıtmaktan kaçının.

Warning: Truncated extracted text to X characters

Dizin oluşturucular herhangi bir belgeden ayıklanacak metin miktarını sınırlar. Bu sınır fiyatlandırma katmanına bağlıdır: Ücretsiz katman için 32.000 karakter, Temel katman için 64.000, Standart için 4 milyon, Standart S2 için 8 milyon ve Standart S3 için 16 milyon. Kesilen metin dizine alınmayacak. Bu uyarıyı önlemek için, büyük miktarda metin içeren belgeleri birden çok, daha küçük belgeye ayırmayı deneyin.

Daha fazla bilgi için bkz . Dizin oluşturucu sınırları.

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

Var olmayan/null verilere başvuran çıkış alanı eşlemeleri, her belge için uyarılar üretir ve boş bir dizin alanıyla sonuçlanır. Bu sorunu geçici olarak çözmek için çıkış alanı eşleme kaynak yollarınızı olası yazım hataları için iki kez denetleyin veya Koşullu beceriyi kullanarak varsayılan bir değer ayarlayın. Ayrıntılar için bkz . Çıkış alanı eşlemesi .

Nedeni Ayrıntılar/Örnek Çözüm
Dizi dışı yineleme yapılamıyor "Dizi /document/normalized_images/0/imageCelebrities/0/detail/celebritiesolmayanlar üzerinde yinelenemiyor." Çıkış bir dizi olmadığında bu hata oluşur. Çıkışın bir dizi olması gerektiğini düşünüyorsanız, belirtilen çıkış kaynağı alan yolunda hatalar olup olmadığını denetleyin. Örneğin, kaynak alan adında eksik veya ek * bir ad olabilir. Bu beceriye girişin null olması ve boş bir diziyle sonuçlanması da mümkündür. Beceri Girişi Geçersiz bölümünde benzer ayrıntıları bulabilirsiniz.
Dizi dışı seçim 0 yapılamıyor "Dizi /document/pagesolmayan içinde seçilemiyor0." Beceri çıkışı bir dizi oluşturmazsa ve çıkış kaynak alanı adının dizi dizinine veya * yolunda olması durumunda bu durum oluşabilir. Çıkış kaynağı alan adlarında sağlanan yolları ve belirtilen alan adının alan değerini bir kez daha denetleyin. Beceri Girişi Geçersiz bölümünde benzer ayrıntıları bulabilirsiniz.

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

Veri değişikliği algılama ilkeleri , değişikliği algılamak için kullandıkları sütunlar için belirli gereksinimlere sahiptir. Bu gereksinimlerden biri, kaynak öğe her değiştirildiğinde bu sütunun güncelleştirilmiş olmasıdır. Bir diğer gereksinim de bu sütun için yeni değerin önceki değerden büyük olmasıdır. Anahtar sütunlar her güncelleştirmede değişmediğinden bu gereksinimi karşılamaz. Bu sorunu geçici olarak çözmek için değişiklik algılama ilkesi için farklı bir sütun seçin.

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

Dizin oluşturucu ayrıştırma modlarının ayrıştırmadan önce metnin nasıl kodlanmış olduğunu bilmesi gerekir. Metni kodlamanın en yaygın iki yolu UTF-16 ve UTF-8'dir. UTF-8, her karakterin 1 bayt ile 4 bayt uzunluğunda olduğu değişken uzunlukta bir kodlamadır. UTF-16, her karakterin 2 bayt uzunluğunda olduğu sabit uzunlukta bir kodlamadır. UTF-16'nın iki farklı çeşidi vardır big endian ve little endian. Metin kodlaması, metinden önceki bir bayt dizisi tarafından byte order markbelirlenir.

Kodlama Bayt Sırası İşareti
UTF-16 Big Endian 0xFE 0xFF
UTF-16 Küçük Endian 0xFF 0xFE
UTF-8 0xEF 0xBB 0xBF

Bayt sırası işareti yoksa, metnin UTF-8 olarak kodlanmış olduğu varsayılır.

Bu uyarıya geçici bir çözüm olarak, bu blob için metin kodlamasının ne olduğunu belirleyin ve uygun bayt sırası işaretini ekleyin.

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

Gecikmeli dizin oluşturma ilkelerine sahip koleksiyonlar tutarlı bir şekilde sorgulanamaz ve bu da dizin oluşturucunuzun verilerinin eksik olmasıyla sonuçlanır. Bu uyarıya geçici bir çözüm bulmak için dizin oluşturma ilkenizi Tutarlı olarak değiştirin.

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

Bu uyarı, Azure AI hizmetlerinin Dil hizmetinden geçirilir. Bazı durumlarda, örneğin uzun dize yalnızca uzun bir URL ise, bu uyarıyı yoksaymak güvenlidir. Bir sözcük 64 karakterden uzun olduğunda, modelin tahminlerini etkileyebilecek şekilde 64 karaktere kesildiğini unutmayın.

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

Dizin oluşturucuların belge boyutu sınırları vardır. Veri kaynağınızdaki belgelerin, hizmet katmanınız için belgelendiği gibi desteklenen boyut sınırından küçük olduğundan emin olun.