Azure AI Search'te düz metin bloblarını ve dosyalarını dizine ekleme

Şunlar için geçerlidir: Blob dizin oluşturucuları, Dosya dizin oluşturucuları

Tam metin araması için aranabilir blob metnini veya dosya içeriğini ayıklamak için dizin oluşturucu kullanırken, daha iyi dizin oluşturma sonuçları elde etmek için ayrıştırma modu atayabilirsiniz. Dizin oluşturucu varsayılan olarak blobun özelliğini tek bir metin öbekleri olarak ayrıştırmaktadır content . Ancak, tüm bloblar ve dosyalar aynı kodlamada düz metin içeriyorsa, ayrıştırma modunu kullanarak text dizin oluşturma performansını önemli ölçüde geliştirebilirsiniz.

Ayrıştırma Öneriler text aşağıdaki özelliklerden birini içerir:

  • Dosya türü: .txt
  • Dosyalar herhangi bir türdedir, ancak içeriğin kendisi metindir (örneğin, program kaynak kodu, HTML, XML vb.). Biçimlendirme dilindeki dosyalar için söz dizimi karakterleri statik metin olarak gelir.

Tüm dizin oluşturucuların JSON'a seri hale getirildiğini hatırlayın. Varsayılan olarak, tüm metin dosyasının içeriği olarak büyük bir alanda "content": "<file-contents>"dizine eklenir. Yeni satır ve dönüş yönergeleri içerik alanına eklenir ve olarak \r\n\ifade edilir.

Daha ayrıntılı veya daha ayrıntılı bir sonuç istiyorsanız ve dosya türü uyumluysa aşağıdaki çözümleri göz önünde bulundurun:

İçeriği birden çok bölüme bölmek için alternatif bir üçüncü seçenek, yapay zeka zenginleştirmesi biçiminde gelişmiş özellikler gerektirir. Dosyanın öbeklerini tanımlayan ve farklı arama alanlarına atayan analiz ekler. Varlık tanıma veya anahtar sözcük ayıklama gibi yerleşik beceriler aracılığıyla tam veya kısmi bir çözüm bulabilirsiniz, ancak daha olası bir çözüm, içeriğinizi özel bir beceriyle sarmalanmış olarak anlayan özel bir öğrenme modeli olabilir.

Düz metin dizini oluşturma

Düz metin bloblarının dizinini oluşturmak için dizin oluşturucu tanımı oluşturun veya dizin oluşturucu oluşturma isteğinde olarak ayarlanmış text yapılandırma özelliğiyle parsingMode güncelleştirin:

PUT https://[service name].search.windows.net/indexers/[indexer name]?api-version=2023-11-01
Content-Type: application/json
api-key: [admin key]

{
  ... other parts of indexer definition
  "parameters" : { "configuration" : { "parsingMode" : "text" } }
}

Varsayılan olarak, UTF-8 kodlama varsayılır. Farklı bir kodlama belirtmek için yapılandırma özelliğini kullanın encoding :

{
  ... other parts of indexer definition
  "parameters" : { "configuration" : { "parsingMode" : "text", "encoding" : "windows-1252" } }
}

İstek örneği

Ayrıştırma modları dizin oluşturucu tanımında belirtilir.

POST https://[service name].search.windows.net/indexers?api-version=2023-11-01
Content-Type: application/json
api-key: [admin key]

{
  "name" : "my-plaintext-indexer",
  "dataSourceName" : "my-blob-datasource",
  "targetIndexName" : "my-target-index",
  "parameters" : { "configuration" : { "parsingMode" : "delimitedText", "delimitedTextHeaders" : "id,datePublished,tags" } }
}

Sonraki adımlar