Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Note
Azure Yapay Zeka Arama Azure portalı, REST API'leri ve Azure SDK’ları aracılığıyla kullanılabilir. Ayrıca kuruluş içeriğini Microsoft Foundry portalındaki aracılar için yeniden kullanılabilir, izin kullanan bilgi bankalarına dönüştüren yönetilen bilgi katmanı Foundry IQ'yu temel alır.
Bu makalede, desteklenen veri kaynakları için veri alımını otomatik hale getiren bir dizin oluşturucu oluşturmaya yönelik temel adımlar açıklanmaktadır. Veri kaynağına ve iş akışınıza bağlı olarak daha fazla yapılandırmaya ihtiyacınız olabilir.
Azure Yapay Zeka Arama'da veri içeri aktarmayı ve dizin oluşturmayı otomatikleştirmek için dizin oluşturucu kullanabilirsiniz. Dizin oluşturucu, bir Azure dışı veri kaynağına bağlanan, verileri okuyup serileştiren ve dizinleme için arama motoruna aktaran, arama hizmetinde adlandırılmış bir nesnedir. Dizin oluşturucuları kullanmak, desteklenen veri kaynakları için yazmanız gereken kodun miktarını ve karmaşıklığını önemli ölçüde azaltır.
Dizin oluşturucular iki iş akışını destekler:
Ham içerik dizin oluşturma (düz metin veya vektörler):Tam metin arama senaryoları için metin içeriğinden dizeleri ve meta verileri ayıklar. Ayrıca vektör araması için ham vektör içeriğini ayıklar (örneğin, bir Azure SQL database veya Azure Cosmos DB koleksiyonundaki vektörler). Bu iş akışında dizin oluşturma yalnızca sağladığınız mevcut içerik üzerinde gerçekleşir.
Beceri tabanlı dizin oluşturma: Yeni aranabilir içerik oluşturan yerleşik veya özel beceriler aracılığıyla dizin oluşturmayı genişletir. Örneğin, görüntüler ve yapılandırılmamış metinler üzerinde analiz için tümleşik makine öğrenimi ekleyebilir, metin ve yapıyı ayıklayabilir veya çıkarsamalar yapabilirsiniz. Metin ve görüntülerden gelen içeriği öbekleyip vektörleştirmek için de becerileri kullanabilirsiniz. Beceri tabanlı dizin oluşturma, dış veri kaynağınızda mevcut olmayan yeni içerik oluşturur. Dizin şemasına gelen verileri kabul eden alanlar eklediğinizde yeni içerik dizininizin bir parçası olur. Daha fazla bilgi edinmek için Azure Yapay Zeka Arama'te AI zenginleştirmesi bölümüne bakın.
Prerequisites
Almak istediğiniz içeriği içeren desteklenen bir veri kaynağı.
Dış verilere bağlantı ayarlayan bir veri kaynağı tanımı.
Hizmet katmanınız için maksimum sınırların altında olun. Ücretsiz katman, her türden üç nesneye ve 1-3 dakikalık dizin oluşturucu işlem süresine veya bir beceri kümesi varsa 3-10 dakikaya izin verir.
Dizin oluşturucu desenleri
Dizin oluşturucu oluşturduğunuzda, tanım iki desenden birini izler: içerik tabanlı dizin oluşturma veya beceri tabanlı dizin oluşturma. Desenler benzerdir, ancak beceri tabanlı dizinleme ek özellikler içerir.
İçerik tabanlı dizin oluşturma için dizin oluşturucu örneği
Tam metin veya vektör araması için içerik tabanlı dizin oluşturma, dizin oluşturucular için birincil kullanım örneğidir. Bu iş akışı için dizin oluşturucu bu örneğe benzer.
{
"name": (required) String that uniquely identifies the indexer,
"description": (optional),
"dataSourceName": (required) String indicating which existing data source to use,
"targetIndexName": (required) String indicating which existing index to use,
"parameters": {
"batchSize": null,
"maxFailedItems": 0,
"maxFailedItemsPerBatch": 0,
"base64EncodeKeys": false,
"configuration": {}
},
"fieldMappings": (optional) unless field discrepancies need resolution,
"disabled": null,
"schedule": null,
"encryptionKey": null
}
Dizin oluşturucular aşağıdaki gereksinimlere sahiptir:
- Dizin
nameoluşturucu koleksiyonunda dizin oluşturucuyu benzersiz olarak tanımlayan özellik - Veri
dataSourceNamekaynağı nesnesine işaret eden özellik. Dış verilere bir bağlantı belirtir -
targetIndexNameHedef arama dizinine işaret eden özellik
Diğer parametreler isteğe bağlıdır ve işin tamamında başarısız olmadan önce kabul edilmesi gereken hata sayısı gibi çalışma zamanı davranışını değiştirir. Gerekli parametreler tüm dizin oluşturucularda belirtilir ve REST API başvurusunda belgelenir.
Bloblar, SQL ve cosmos DB Azure için veri kaynağına özgü dizin oluşturucular, kaynağa özgü davranışlar için ek configuration parametreleri sağlar. Örneğin, kaynak Blob Depolama ise, dosya uzantısına göre filtrelemek için aşağıdakiler gibi bir parametre ayarlayabilirsiniz:
"parameters" : { "configuration" : { "indexedFileNameExtensions" : ".pdf,.docx" } }
Kaynak Azure SQL ise bir sorgu zaman aşımı parametresi ayarlayabilirsiniz.
Alan eşlemeleri , veri kaynağındaki bir alan ile arama dizinindeki bir alan arasında ada veya türe göre tutarsızlıklar varsa kaynak-hedef alanları açıkça eşlemek için kullanılır.
Varsayılan olarak, bir dizin oluşturucuyu arama hizmeti üzerinde oluşturduğunuzda hemen çalışır. Dizin oluşturucunun yürütülmesini istemiyorsanız, dizin oluşturucuyu oluştururken true olarak ayarlayın disabled.
Ayrıca dizin oluşturucu tanımının ek şifrelemesi için bir zamanlama belirtebilir veya bir şifreleme anahtarı ayarlayabilirsiniz.
Beceri tabanlı dizin oluşturma için dizin oluşturucu örneği
Beceri tabanlı dizin oluşturma, ham biçiminde aranamayan içeriği işlemek için yapay zeka zenginleştirmesini kullanır. Önceki özelliklerin ve parametrelerin tümü geçerlidir, ancak aşağıdaki ek özellikler yapay zeka zenginleştirmesine özeldir: skillsetName, , cacheoutputFieldMappings.
{
"name": (required) String that uniquely identifies the indexer,
"dataSourceName": (required) String, provides raw content that will be enriched,
"targetIndexName": (required) String, name of an existing index,
"skillsetName" : (required for AI enrichment) String, name of an existing skillset,
"cache": {
"storageConnectionString" : (required if you enable the cache) Connection string to a blob container,
"enableReprocessing": true
},
"parameters": { },
"fieldMappings": (optional) Maps fields in the underlying data source to fields in an index,
"outputFieldMappings" : (required) Maps skill outputs to fields in an index,
}
Yapay zeka zenginleştirme kendi konu alanıdır ve bu makalenin kapsamı dışındadır. Daha fazla bilgi için AI zenginleştirme, Azure Yapay Zeka Arama'te Yetenek Setleri, Yetenek seti oluşturma, Zenginleştirilmiş çıktı alanlarını eşleştirme, ve Yapay zeka zenginleştirmesi için önbelleği etkinleştirme ile başlayın.
Dış verileri hazırlama
Dizin oluşturucular veri kümeleriyle çalışır. Bir dizin oluşturucu çalıştırdığınızda veri kaynağınıza bağlanır, kapsayıcıdan veya klasörden veri alır, isteğe bağlı olarak JSON'a seri hale getirerek dizin oluşturmak üzere arama altyapısına geçirir. Bu bölümde, metin tabanlı dizin oluşturma için gelen veri gereksinimleri açıklanmaktadır.
| Kaynak veriler | Tasks |
|---|---|
| JSON belgeleri | JSON belgeleri metin, sayı ve vektör içerebilir. Gelen verilerin yapısının veya şeklinin arama dizininizin şemasına karşılık olduğundan emin olun. Çoğu arama dizini, alan koleksiyonunun aynı düzeydeki alanlardan oluştuğu oldukça düz bir dizindir. Ancak karmaşık alanlar ve koleksiyonlar aracılığıyla hiyerarşik veya iç içe geçmiş yapılar mümkündür. |
| Relational | Verileri düzleştirilmiş bir satır kümesi olarak sağlayın; burada her satır dizinde tam veya kısmi arama belgesine dönüşür. İlişkisel verileri bir satır kümesine düzleştirmek için bir SQL görünümü oluşturun veya aynı satırdaki üst ve alt kayıtları döndüren bir sorgu oluşturun. Örneğin, yerleşik oteller örnek veri kümesi, ilişkili bir tablodaki oda kayıtlarına bağlı 50 kaydı (her otel için bir tane) olan bir SQL veritabanıdır. Toplu verileri bir satır kümesine düzleştirme sorgusu, tüm oda bilgilerini her otel kaydındaki JSON belgelerine ekler. Katıştırılmış oda bilgileri, FOR JSON AUTO dizesi kullanan bir sorgu tarafından üretilir. Katıştırılmış JSON döndüren bir sorgu tanımlama bölümünde bu teknik hakkında daha fazla bilgi edinebilirsiniz. Bu yalnızca bir örnektir; aynı sonucu veren diğer yaklaşımları kullanabilirsiniz. |
| Files | Dizin oluşturucu genellikle her dosya için bir arama belgesi oluşturur ve burada arama belgesi içerik ve meta veriler için alanlardan oluşur. Dosya türüne bağlı olarak, dizin oluşturucu bazen bir dosyayı birden çok arama belgesine bölebilir. Örneğin, bir CSV dosyasında her satır tek başına bir arama belgesine dönüşebilir. |
Yalnızca aranabilir ve filtrelenebilir verileri almanız gerektiğini unutmayın:
- Aranabilir veriler metin veya vektördür
- Filtrelenebilir veriler metin ve sayıdır (vektör olmayan alanlar)
Azure Yapay Zeka Arama, aranabilir içerik oluşturmak için görüntü dosyalarının metin açıklamalarını ayıklayıp çıkarabilmesine rağmen (bkz. AI zenginleştirme) ikili veriler üzerinde herhangi bir biçimde tam metin araması yapamaz. Benzer şekilde, büyük metinler de yapıyı veya ilgili bilgileri bulmak için doğal dil modelleri tarafından parçalanabilir ve analiz edilebilir ve arama belgesine ekleyebileceğiniz yeni içerik oluşturulabilir. Ayrıca, ikili biçimde nicelenmiş eklemeler de dahil olmak üzere eklemeler üzerinde vektör araması yapabilir.
Dizin oluşturucular veri kalitesi sorunlarını düzeltmediğinden ayrı veri temizleme veya dönüştürme adımlarına ihtiyacınız olabilir. Daha fazla bilgi için Azure veritabanı ürününüz için ürün belgelerine bakın.
Veri kaynağı hazırlama
Dizin oluşturucular türü, kapsayıcıyı ve bağlantıyı belirten bir veri kaynağı gerektirir.
Desteklenen bir veri kaynağı türü kullandığınızdan emin olun.
Veri kaynağı tanımı oluşturun. Aşağıdaki veri kaynakları, daha sık kullanılan kaynaklardan birkaçıdır:
- Azure Blob Depolama
- Azure Cosmos DB
- Azure SQL Veritabanı
Veri kaynağı Azure SQL veya Cosmos DB gibi bir veritabanıysa change tracking etkinleştirin. Azure Depolama, her blob, dosya ve tablonun
LastModifiedözelliği aracılığıyla yerleşik değişiklik izleme sunar. Çeşitli veri kaynaklarının bağlantıları, dizin oluşturucular tarafından desteklenen değişiklik izleme yöntemlerini açıklar.
Dizin hazırlama
Dizin oluşturucular da bir arama dizini gerektirir. Dizin oluşturucuların dizin oluşturma için arama altyapısına veri geçirdiğini hatırlayın. Dizin oluşturucuların yürütme davranışını belirleyen özellikleri olduğu gibi, dizin şemasında da dizelerin dizine alma şeklini derinden etkileyen özellikler vardır (yalnızca dize alanları analiz edilir ve belirteç haline getirilir).
Arama dizini oluşturma ile başlayın.
Alan koleksiyonunu ve alan özniteliklerini ayarlayın.
Alanlar, gelen içerik için tek hedeflerdir. Şemadaki alan özniteliklerine bağlı olarak, her alan değeri analiz edilir, belirteçlendirilir veya filtreler, benzer arama ve tür başlığı sorguları için bir düz metin dizesi olarak depolanır.
Dizin oluşturucular, adlar ve türler eşdeğer olduğunda kaynak alanları otomatik olarak hedef dizin alanlarına eşleyebilir. Bir alan örtük olarak eşlenemiyorsa, dizin oluşturucuya içeriğin nasıl yönlendirildiğini bildiren açık bir alan eşlemesi tanımlayabileceğinizi unutmayın.
Her alandaki çözümleyici atamalarını gözden geçirin. Çözümleyiciler dizeleri dönüştürebilir. Bu nedenle, dizinlenmiş dizeler, girdiğiniz dizelerden farklı olabilir. Çözümleme Metni (REST) kullanarak çözümleyicilerin etkilerini değerlendirebilirsiniz. Çözümleyiciler hakkında daha fazla bilgi için bkz . Metin işleme için çözümleyiciler.
Dizin oluşturma sırasında, dizin oluşturucu yalnızca alan adlarını ve türlerini denetler. Dizindeki ilgili arama alanı için gelen içeriğin doğru olmasını sağlayan bir doğrulama adımı yoktur.
Dizin oluşturucu oluşturma
Uzak bir arama hizmetinde dizin oluşturucu oluşturmaya hazır olduğunuzda, bir arama istemcisine ihtiyacınız var. Arama istemcisi Azure portal, REST istemcisi veya dizin oluşturucu istemcisi örneği oluşturan uygulama kodu olabilir. Erken geliştirme ve kavram kanıtı testi için Azure portal veya REST API'lerini öneririz.
Aşağıdaki seçeneklerden birini seçin:
Verileri içeri aktarma: Bu sihirbaz, dizin oluşturucu da dahil olmak üzere tüm gerekli öğeleri oluşturur. Diğer yaklaşımlar için önceden tanımlanmış bir veri kaynağı ve dizin gerekir.
Dizin oluşturucu ekleme: Dizin oluşturucu tanımını belirtmek için bir görsel düzenleyici.
Dizin oluşturucuyu çalıştırma
Varsayılan olarak, bir dizin oluşturucuyu arama hizmeti üzerinde oluşturduğunuzda hemen çalışır. Dizin oluşturucu tanımında true olarak ayarlayarak disabledbu davranışı geçersiz kılabilirsiniz. Dizin oluşturucu yürütmesi, bağlantılarla, alan eşlemeleriyle veya beceri kümesi oluşturmayla ilgili sorunlar olup olmadığını bulduğunuz gerçek anıdır.
Dizin oluşturucuyu çalıştırmanın birkaç yolu vardır:
Dizin oluşturucu oluşturulduğunda veya güncelleştirildiğinde çalıştırın (varsayılan).
Tanımda değişiklik olmadığında isteğe bağlı olarak çalıştırın veya tam dizin oluşturma için sıfırlamadan önce. Daha fazla bilgi için Dizin oluşturucuları çalıştırma veya sıfırlama bölümüne bakın.
Düzenli aralıklarla yürütmeyi çağırmak için dizin oluşturucu işlemeyi zamanlayın.
Zamanlanmış yürütme genellikle en son değişiklikleri alabilmeniz için artımlı dizin oluşturma gereksiniminiz olduğunda uygulanır. Bu nedenle zamanlamanın değişiklik algılamaya bağımlılığı vardır.
Dizinleyiciler, diğer Azure kaynaklarına açık dışa dönük çağrılar yapan birkaç alt sistemden biridir. Azure rolleri açısından dizin oluşturucuların ayrı kimlikleri yoktur; arama hizmetinden başka bir Azure kaynağına bağlantı, arama hizmetinin sistem veya kullanıcı tarafından atanan yönetilen kimliği kullanılarak yapılır. Dizin oluşturucu sanal bir ağ üzerindeki bir Azure kaynağına bağlanıyorsa, bu bağlantı için "shared private link" oluşturmanız gerekir. Daha fazla bilgi için bkz. dış verilere güvenli erişim.
Sonuçları kontrol et
Yürütme durumunu denetlemek için dizin oluşturucu durumunu izleyin. Başarılı yürütme yine de uyarılar ve bildirimler içerebilir. İşle ilgili ayrıntılar için hem başarılı hem de başarısız durum bildirimlerini denetlemeyi unutmayın.
İçerik doğrulaması için doldurulan dizinde tüm belgeleri veya seçili alanları döndüren sorgular çalıştırın.
Değişiklik algılama ve iç durum
Veri kaynağınız değişiklik algılamayı destekliyorsa, dizin oluşturucu verilerdeki temel değişiklikleri algılayabilir ve her dizin oluşturucu çalıştırmasında yalnızca yeni veya güncelleştirilmiş belgeleri işleyebilir ve değişmemiş içeriği olduğu gibi bırakabilir. Dizin oluşturucu yürütme geçmişi, 0/0 belgeleri işlendiğinde bir çalıştırmanın başarılı olduğunu belirtiyorsa, dizin oluşturucu temel alınan veri kaynağında yeni veya değiştirilmiş satır veya blob bulamadı anlamına gelir.
Değişiklik algılama mantığı veri platformlarına yerleşik olarak eklenir. Dizin oluşturucu değişiklik algılamayı nasıl destekler veri kaynağına göre değişir:
Azure Depolama yerleşik değişiklik algılama özelliğine sahiptir. Bu, dizin oluşturucuların yeni ve güncelleştirilmiş belgeleri otomatik olarak tanıyabileceği anlamına gelir. Blob Depolama, Tablo Storage Azure ve Azure Data Lake Storage 2. Nesil her blob veya satır güncelleştirmesini tarih ve saatle damgalar. Dizin oluşturucu, dizinde hangi belgelerin güncelleştirileceğini belirlemek için otomatik olarak bu bilgileri kullanır. Silme algılama hakkında daha fazla bilgi için, Azure Depolama için dizin oluşturucuları kullanarak değişiklik ve silme algılama konusuna bakın.
Bulut veritabanı hizmetleri isteğe bağlı değişiklik algılama özellikleri sağlar. Bu veri kaynakları için değişiklik algılama otomatik değildir. Veri kaynağı tanımında hangi ilkenin kullanılacağını belirtmeniz gerekir:
Dizin oluşturucular, veri kaynağından işledikleri son belgeyi yüksek su seviyesi işaretiyle izler. İşaretleyici hiçbir zaman API'de gösterilmez, ancak dahili olarak dizin oluşturucu nerede durduğunu izler. Özgeçmişlerin dizinlemesi, zamanlanmış bir işlem veya isteğe bağlı bir çağrı yoluyla gerçekleştirildiğinde, dizin oluşturucu, işlemi kaldığı yerden sürdürebilmesi için yüksek su işaretine başvurur.
Tam olarak yeniden dizine almak için yüksek su işaretini temizlemeniz gerekiyorsa Dizin Oluşturucuyu Sıfırla komutunu kullanabilirsiniz. Daha seçmeli yeniden dizinleme için Becerileri Sıfırla veya Belgeleri Sıfırla'yı kullanın. Sıfırlama API'leri aracılığıyla iç durumu temizleyebilir ve artımlı zenginleştirmeyi etkinleştirdiyseniz önbelleği temizleyebilirsiniz. Her bir sıfırlama seçeneğinin arka planı ve karşılaştırması hakkında daha fazla bilgi için Dizin oluşturucuları, becerileri ve belgeleri çalıştırma veya sıfırlama bölümüne bakın.
İlgili içerik
- Azure Blob Depolama'dan Index verileri
- Azure SQL veritabanından indeks verileri
- Azure Data Lake Storage 2. Nesil'dan verileri dizine ekleme
- Azure Tablo Depolaması'dan Index verileri
- Azure Cosmos DB'den Dizin Verilerini Alın