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 önerileri 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:
delimitedText
kaynak CSV ise ayrıştırma modujsonArray
veyajsonLines
kaynak JSON ise
İç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=2024-07-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
. Desteklenen kodlama listesi .NET 5 ve üzeri destek sütunu altındadır.
{
... other parts of indexer definition
"parameters" : { "configuration" : { "parsingMode" : "text", "encoding" : "iso-8859-1" } }
}
İstek örneği
Ayrıştırma modları dizin oluşturucu tanımında belirtilir.
POST https://[service name].search.windows.net/indexers?api-version=2024-07-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" } }
}