Hızlı Başlangıç: Azure portalında vektör araması

Not

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 hızlı başlangıçta, integrated vectorization kullanmaya başlamak için Azure portalında Import data sihirbazını kullanacaksınız. Sihirbaz içeriğinizi öbekler ve dizin oluşturma ve sorgu zamanında öbekleri vektörleştirmek için bir ekleme modeli çağırır.

Bu hızlı başlangıçta azure-search-sample-data deposundan metin tabanlı PDF'ler ve basit görüntüler kullanılmaktadır. Ancak, farklı dosyalar kullanabilir ve yine de bu hızlı başlangıcı tamamlayabilirsiniz.

Ipucu

Görüntü açısından zengin belgeleriniz mi var? Metinle birlikte resimleri ayıklamak, depolamak ve aramak için bkz. Quickstart: Azure portalında çok modüllü arama.

Önkoşullar

Desteklenen veri kaynakları

Sihirbaz > birkaç Azure veri kaynağını desteklemektedir. Ancak, bu hızlı başlangıç yalnızca aşağıdaki tabloda açıklanan tüm dosyalarla çalışan veri kaynaklarını kapsar.

Veri kaynağı Açıklama
Azure Blob Depolama Bu veri kaynağı bloblar ve tablolarla çalışır. Standart performans (genel amaçlı v2) hesabı kullanmanız gerekir. Erişim katmanları sıcak, soğutulmuş veya soğuk olabilir.
Azure Data Lake Storage (ADLS) Gen2 Bu, hiyerarşik ad alanı etkinleştirilmiş bir Azure Depolama hesabıdır. Data Lake Storage sahip olduğunuzu onaylamak için Overview sayfasındaki Properties sekmesini denetleyin.
Microsoft OneLake Bu veri kaynağı OneLake dosyalarına ve kısayollarına bağlanır.

Desteklenen ekleme modelleri

Portal, tümleşik vektörleştirme için aşağıdaki ekleme modellerini destekler. Dağıtım yönergeleri sonraki bir bölümde sağlanmıştır.

Sağlayıcı Desteklenen modeller
Azure AI çoklu hizmet hesabı1 Metin ve resimler için: Azure Vision multimodal
Microsoft Foundry hub tabanlı proje Metin için:
  • metin yerleştirme-ada-002
  • metin ekleme-3-küçük
  • metin ekleme-3-büyük
Metin ve resimler için:
  • Cohere-embed-v3-english 2
  • Cohere-embed-v3-multilingual 2
Microsoft Foundry projesi Metin için:
  • metin yerleştirme-ada-002
  • metin ekleme-3-küçük
  • metin ekleme-3-büyük
Azure OpenAI kaynağı3, 4 Metin için:
  • metin yerleştirme-ada-002
  • metin ekleme-3-küçük
  • metin ekleme-3-büyük

1 Faturalama amacıyla Azure Yapay Zeka Arama beceri kümesine çoklu hizmet hesabınızı eklemelisiniz. Sihirbaz, arama hizmetinizin ve çok hizmetli hesabınızın Azure Vision çok modüllü ekleme becerisi (önizleme) için desteklenen aynı bölgede olmasını gerektirir.

2 Sihirbaz yalnızca bu model için sunucusuz API dağıtımlarını destekler. Sunucusuz dağıtımı (önizleme) sağlamak için Azure CLI kullanabilirsiniz.

3 Azure OpenAI kaynağınızın uç noktasının özel bir alt etki alanı, örneğin https://my-unique-name.openai.azure.com, olması gerekir. Kaynağınızı Azure portalında oluşturduysanız, bu alt etki alanı kaynak kurulumu sırasında otomatik olarak oluşturulur.

Microsoft Dökümhane portalında oluşturulan 4 Azure OpenAI kaynakları (ekleme modellerine erişimi olan) desteklenmez. Azure portalında bir Azure OpenAI kaynağı oluşturmanız gerekir.

Kullanımdan kaldırmalar da dahil olmak üzere en güncel model yaşam döngüsü yönergeleri için Modelin kullanımdan kaldırılması ve artık önerilmemesi bölümüne bakın.

Genel uç nokta gereksinimleri

Sihirbazın bunlara erişebilmesi için önceki tüm kaynakların genel erişimi etkinleştirilmiş olmalıdır. Aksi takdirde sihirbaz başarısız olur. Sihirbaz çalıştırıldıktan sonra, güvenlik için tümleştirme bileşenlerinde güvenlik duvarlarını ve özel uç noktaları etkinleştirebilirsiniz. Daha fazla bilgi için bkz. İçeri aktarma sihirbazında güvenli bağlantılar.

Özel uç noktalar zaten varsa ve bunları devre dışı bırakamıyorsanız, alternatif seçenek sanal makinedeki bir betikten veya programdan ilgili uçtan uca akışı çalıştırmaktır. Sanal makine, özel uç noktayla aynı sanal ağda olmalıdır. Tümleşik vektörleştirme için Python kod örneği aşağıda verilmiştır. Aynı GitHub deposu diğer programlama dillerinde örneklere sahiptir.

Erişimi yapılandırma

Başlamadan önce içeriğe ve işlemlere erişim izinlerinizin olduğundan emin olun. Bu hızlı başlangıçta kimlik doğrulaması için Microsoft Entra ID ve yetkilendirme için rol tabanlı erişim kullanılır. Rolleri atamak için Sahip veya Kullanıcı Erişimi Yöneticisi olmanız gerekir. Roller uygun değilse bunun yerine anahtar tabanlı kimlik doğrulamayı kullanın.

Bu bölümde tanımlanan gerekli rolleri ve koşullu rolleri yapılandırın.

Gerekli roller

Azure Yapay Zeka Arama vektör arama işlem hattını sağlar. Kendiniz ve arama hizmetiniz için verileri okuyacak, işlem hattını çalıştıracak ve diğer Azure kaynaklarıyla etkileşim kuracak şekilde erişimi yapılandırın.

Azure Yapay Zeka Arama hizmetinizde:

  1. Rol tabanlı erişimi etkinleştirin.

  2. Sistem tarafından atanan yönetilen kimliği yapılandır.

  3. Aşağıdaki rolleri kendinize atayın .

    • Arama Hizmeti Katkıda Bulunanı

    • Arama Dizini Veri Katkıcısı

    • Arama Dizini Veri Okuyucusu

Koşullu roller

Aşağıdaki sekmeler, vektör araması için sihirbazla uyumlu tüm kaynakları kapsar. Yalnızca seçtiğiniz veri kaynağı ve ekleme modeli için geçerli olan sekmeleri seçin.

Azure Blob Depolama ve Azure Data Lake Storage 2. Nesil, arama hizmetinizin depolama kapsayıcılarına okuma erişimine sahip olmasını gerektirir.

Azure Depolama hesabınızda:

  • Arama hizmetinizin yönetilen kimliğine Depolama Blobu Veri Okuyucusu atayın.

Örnek verileri hazırlama

Bu bölümde, seçtiğiniz veri kaynağı için örnek verileri hazırlarsınız.

  1. Azure portalında Azure Depolama hesabınıza gidin.

  2. Sol bölmeden Veri depolama>Kapsayıcıları'nı seçin.

  3. Bir kapsayıcı oluşturun ve ardından bu hızlı başlangıçta kullanılan sağlık planı PDF belgelerini karşıya yükleyin.

  4. (İsteğe bağlı) Kapsayıcınızdaki silmeleri, arama dizinindeki silme işlemleriyle eşitleyin. Dizin oluşturucunuzu silme algılaması için yapılandırmak için:

    1. Depolama hesabınızda geçici silmeyi etkinleştirin. Yerel geçici silme kullanıyorsanız, sonraki adım gerekli değildir.

    2. Hangi blobların silinmek üzere işaretlendiğini belirlemek için dizin oluşturucu tarafından taranabilecek özel meta veriler ekleyin. Özel özelliğinize açıklayıcı bir ad verin. Örneğin, özelliğini "IsDeleted" olarak adlandırın ve false olarak ayarlayın. Kapsayıcıdaki her blob için bu adımı yineleyin. Blobu silmek istediğinizde özelliğini true olarak değiştirin. Daha fazla bilgi için bkz. Azure Depolama'dan dizin oluştururken değişiklik ve silme algılama.

Ekleme modelini hazırlama

Not

Azure Vision kullanıyorsanız bu adımı atlayın. Çok modüllü eklemeler çok hizmetli hesabınızda yerleşiktir ve model dağıtımı gerektirmez.

Sihirbaz, Azure OpenAI ve Microsoft Foundry model kataloğundan çeşitli ekleme modellerini destekler. Seçtiğiniz embedding modeli için gereken modelleri dağıtmak üzere, Microsoft Dökümhane Modellerini Dökümhane portalında dağıtma adımlarına bakınız.

Sihirbazı başlatma

  1. Azure portalında arama hizmetinize gidin.

  2. Genel Bakış sayfasında Verileri içeri aktar'ı seçin.

    Verileri içeri aktarma ve vektörleştirme sihirbazını açma komutunun ekran görüntüsü.

  3. Veri kaynağınızı seçin: Azure Blob Depolama, ADLS 2. Nesil veya OneLake.

  4. RAG'ı seçin.

    Sihirbazdaki RAG kutucuğunun ekran görüntüsü.

Sihirbazı çalıştırma

Sihirbaz birkaç yapılandırma adımında size yol gösterir. Bu bölüm, sırayla her adımı kapsar.

Verilerinize bağlanma

Bu adımda, Azure Yapay Zeka Arama içerik alımı ve dizin oluşturma için seçtiğiniz veri kaynağına bağlarsınız.

  1. Verilerinize bağlanın sayfasında Azure aboneliğinizi seçin.

  2. Örnek verileri sağlayan depolama hesabını ve kapsayıcıyı seçin.

  3. Geçici silmeyi etkinleştirdiyseniz ve Örnek verileri hazırlama bölümüne özel meta veriler eklediyseniz Silme izlemeyi etkinleştir onay kutusunu seçin.

    • Sonraki dizin oluşturma çalıştırmalarında, arama dizini Azure Depolama geçici olarak silinen blobları temel alan tüm arama belgelerini kaldıracak şekilde güncelleştirilir.

    • Bloblar Yerel blob geçici silmeyi veya özel meta verileri kullanarak geçici silmeyi destekler.

    • Bloblarınızı geçici silme için yapılandırdıysanız meta veri özelliği ad-değer çiftini sağlayın. IsDeleted'i öneririz. IsDeleted bir blob üzerinde true olarak ayarlanırsa, dizin oluşturucu bir sonraki çalıştırmada karşılık gelen arama belgesini bırakır.

    • Sihirbaz, Azure Depolama'da doğru ayarların olup olmadığını denetlemez ve gereksinimler karşılanmadığında bir hata vermez. Bunun yerine, silme algılaması çalışmaz ve arama dizininizin zaman içinde yalnız bırakılmış belgeleri toplaması olasıdır.

  4. Yönetilen kimlik kullanarak kimlik doğrulaması onay kutusunu seçin. Kimlik türünü Sistem tarafından atanan olarak bırakın.

    Silme algılama seçeneklerini içeren veri kaynağı sayfasının ekran görüntüsü.

  5. İleri'yi seçin.

Metninizi vektörleştirme

Bu adım sırasında sihirbaz, öbeklenmiş verileri vektörleştirmek için seçtiğiniz ekleme modelini kullanır. Öbek oluşturma yerleşiktir ve yapılandırılamaz. Geçerli ayarlar şunlardır:

"textSplitMode": "pages",
"maximumPageLength": 2000,
"pageOverlapLength": 500,
"maximumPagesToTake": 0, #unlimited
"unit": "characters"
  1. Vectorize your text sayfasında, tür için Azure OpenAI seçin.

  2. Azure aboneliğinizi seçin.

  3. Azure OpenAI kaynağınızı seçin ve ardından Gömme model hazırlama içinde dağıttığınız modeli seçin.

  4. Kimlik doğrulama türü için Sistem tarafından atanan kimlik'i seçin.

  5. Bu kaynakları kullanmanın faturalama etkilerini onaylayan onay kutusunu seçin.

     Azure OpenAI sihirbazındaki Metninizi Vektörleştirin sayfasının ekran görüntüsü.

  6. İleri'yi seçin.

Görüntülerinizi vektörleştirin ve zenginleştirin

Sağlık planı PDF'leri kurumsal logo içerir, ancak aksi takdirde görüntü yoktur. Örnek belgeleri kullanıyorsanız bu adımı atlayabilirsiniz.

Ancak, içeriğiniz yararlı görüntüler içeriyorsa yapay zekayı aşağıdaki yollardan biriyle veya her ikisinde de uygulayabilirsiniz:

  • Görüntüleri vektörleştirmek için Microsoft Foundry model kataloğundan veya Azure Vision çok modüllü eklemeler API'sinden (çok hizmetli bir hesap aracılığıyla) desteklenen bir görüntü ekleme modeli kullanın.

  • Resimlerden metin ayıklamak için optik karakter tanıma (OCR) kullanın. Bu seçenek OCR becerisini çağırır.

  1. Görüntülerinizi vektörleştirin ve zenginleştirin sayfasında Resimleri vektörleştir onay kutusunu seçin.

  2. Bu tür için model sağlayıcınızı seçin: Microsoft Foundry veya DökümHane Araçları'nda Azure Görüntü İşleme.

  3. Azure aboneliğinizi, kaynağınızı ve ekleme modeli dağıtımınızı seçin (varsa).

  4. Kimlik doğrulama türü için merkez tabanlı bir proje kullanmıyorsanız Sistem tarafından atanan kimlik'i seçin. Aksi takdirde API anahtarı olarak bırakın.

  5. Bu kaynakları kullanmanın faturalama etkilerini onaylayan onay kutusunu seçin.

    Sihirbazdaki Görüntülerinizi vektörleştirme ve zenginleştirme sayfasının ekran görüntüsü.

  6. İleri'yi seçin.

Anlamsal derecelendirme ekleme

Gelişmiş ayarlar sayfasında, isteğe bağlı olarak sorgu yürütmenin sonunda sonuçları yeniden kırpmak için anlamsal derecelendirme ekleyebilirsiniz. Yeniden sıralama, en semantik olarak ilgili eşleşmeleri en üste yükseltir.

Yeni alanları eşle.

Gelişmiş ayarlar sayfasında, veri kaynağının ilk geçişte alınmamış meta veriler veya alanlar sağladığı varsayılarak isteğe bağlı olarak yeni alanlar ekleyebilirsiniz. Varsayılan olarak, sihirbaz aşağıdaki tabloda açıklanan alanları oluşturur.

Alan Şunun için geçerlidir: Açıklama
chunk_id Metin ve görüntü vektörleri Oluşturulan dize alanı. Aranabilir, alınabilir ve sıralanabilir. Bu, dizinin belge anahtarıdır.
ebeveyn_kimliği Metin vektörleri Oluşturulan dize alanı. Alınabilir ve filtrelenebilir. Öbek kaynağı olan üst belgeyi tanımlar.
Parça Metin ve görüntü vektörleri Dize alanı. Veri öbeklerinin okunabilir sürümü. Aranabilir ve alınabilir, ancak filtrelenebilir, modellenebilir veya sıralanabilir değildir.
Başlık Metin ve görüntü vektörleri Dize alanı. İnsan tarafından okunabilir belge başlığı, sayfa başlığı veya sayfa numarası. Aranabilir ve alınabilir, ancak filtrelenebilir, modellenebilir veya sıralanabilir değildir.
text_vector Metin vektörleri Collection(Edm.single). Öbeğin vektör temsili. Aranabilir ve alınabilir, ancak filtrelenebilir, modellenebilir veya sıralanabilir değildir.

Oluşturulan alanları veya özniteliklerini değiştiremezsiniz, ancak veri kaynağınız bunları sağlıyorsa yeni alanlar ekleyebilirsiniz. Örneğin, Azure Blob Depolama bir meta veri alanları koleksiyonu sağlar.

Dizin şemasına alan eklemek için:

  1. Gelişmiş ayarlar sayfasındaki Dizin alanları'nın altında Önizleme ve düzenle'yi seçin.

  2. Alan ekle'yi seçin.

  3. Kullanılabilir alanlardan bir kaynak alanı seçin, dizin için bir alan adı girin ve varsayılan veri türünü kabul edin (veya geçersiz kılın).

  4. Şemayı özgün sürümüne geri yüklemek istiyorsanız Sıfırla'yı seçin.

Bu adımla ilgili önemli noktalar:

  • Dizin şeması öbeklenmiş veriler için vektör ve nonvector alanları sağlar.

  • Belge ayrıştırma modu öbekler oluşturur (öbek başına bir arama belgesi).

Dizin oluşturmayı zamanlama

Değişken verilerin olduğu veri kaynakları için, belirli aralıklarda veya belirli tarih ve saatlerdeki değişiklikleri yakalamak amacıyla dizin oluşturmayı zamanlayabilirsiniz.

Dizin oluşturmayı zamanlamak için:

  1. Gelişmiş ayarlar sayfasındaki Dizin oluşturmayı zamanla'nın altında dizin oluşturucu için bir çalıştırma zamanlaması belirtin. Bu hızlı başlangıç için Bir kez öneririz.

    Dizin oluşturmayı zamanlamak için sihirbaz sayfasının ekran görüntüsü.

  2. İleri'yi seçin.

Sihirbazı bitir

Son adım, yapılandırmanızı gözden geçirmek ve vektör araması için gerekli nesneleri oluşturmaktır. Gerekirse, yapılandırmanızı ayarlamak için sihirbazdaki önceki sayfalara dönün.

Sihirbazı tamamlamak için:

  1. Gözden geçir ve oluştur sayfasında, sihirbazın oluşturduğu nesneler için bir ön ek belirtin. Ortak bir ön ek düzenli kalmanıza yardımcı olur.

    Yapılandırmayı gözden geçirmek ve tamamlamak için sihirbaz sayfasının ekran görüntüsü.

  2. Oluştur'u seçin.

Sihirbaz tarafından oluşturulan nesneler

Sihirbaz yapılandırmayı tamamladığında aşağıdaki nesneleri oluşturur:

Nesne Açıklama
Veri kaynağı Seçtiğiniz veri kaynağıyla bağlantıyı temsil eder.
Dizin Vektör alanlarını, vektörleştiricileri, vektör profillerini ve vektör algoritmalarını içerir. Sihirbaz iş akışı sırasında varsayılan dizini değiştiremezsiniz. Dizinler, önizleme özelliklerini kullanabilmeniz için en son önizleme REST API'sine uygundur.
Beceri Seti Aşağıdaki becerileri ve yapılandırmayı içerir:
Dizinleyici Alan eşlemeleri ve çıkış alanı eşlemeleri (varsa) ile dizin oluşturma işlem hattını yönlendirir.

Ipucu

Sihirbaz tarafından oluşturulan nesnelerin yapılandırılabilir JSON tanımları vardır. Bu tanımları görüntülemek veya değiştirmek için sol bölmeden Arama yönetimi'ni seçin; burada dizinlerinizi, dizin oluşturucularınızı, veri kaynaklarınızı ve beceri kümelerinizi görüntüleyebilirsiniz.

Sonuçları kontrol et

Arama Gezgini metin dizelerini giriş olarak kabul eder ve ardından vektör sorgu yürütmesi için metni vektörleştirir.

Vektör dizininizi sorgulamak için:

  1. Azure portalında Search Management>Indexes gidin ve dizininizi seçin.

  2. Sorgu seçenekleri'ni ve ardından Arama sonuçlarında vektör değerlerini gizle'yi seçin. Bu adım sonuçları daha okunabilir hale getirir.

    Sorgu seçenekleri düğmesinin ekran görüntüsü.

  3. Vektör sorgusu parametresinde vektör sorgunuzun metnini girebilmeniz için Görünüm menüsünde JSONtext görünümünü seçin.

    JSON görünümünü açmak için menü komutunun ekran görüntüsü.

    Varsayılan sorgu boş bir aramadır ("*") ancak sayı eşleşmelerini döndürmek için parametreler içerir. Metin ve vektör sorgularını paralel olarak çalıştıran karma bir sorgu. Ayrıca anlamsal sıralamayı da içerir ve select açıklama ile sonuçlarda hangi alanların döndürüleceğini belirtir.

     {
       "search": "*",
       "count": true,
       "vectorQueries": [
         {
           "kind": "text",
           "text": "*",
           "fields": "text_vector,image_vector"
         }
       ],
       "queryType": "semantic",
       "semanticConfiguration": "my-demo-semantic-configuration",
       "captions": "extractive",
       "answers": "extractive|count-3",
       "queryLanguage": "en-us",
       "select": "chunk_id,text_parent_id,chunk,title,image_parent_id"
     }
    
  4. Her iki yıldız işareti (*) yer tutucusunu sağlık planlarıyla ilgili bir soruyla, örneğin Which plan has the lowest deductible?, değiştirin.

     {
       "search": "Which plan has the lowest deductible?",
       "count": true,
       "vectorQueries": [
         {
           "kind": "text",
           "text": "Which plan has the lowest deductible?",
           "fields": "text_vector,image_vector"
         }
       ],
       "queryType": "semantic",
       "semanticConfiguration": "my-demo-semantic-configuration",
       "captions": "extractive",
       "answers": "extractive|count-3",
       "queryLanguage": "en-us",
       "select": "chunk_id,text_parent_id,chunk,title"
     }
    
  5. Sorguyu çalıştırmak için Ara'yı seçin.

    Arama sonuçlarının ekran görüntüsü.

    Her belge, özgün PDF'nin bir öbekleridir. Alanında title öbek hangi PDF'den geldiği gösterilir. Her chunk biri uzun. Değerin tamamını okumak için bir metin düzenleyicisine kopyalayıp yapıştırabilirsiniz.

  6. Belirli bir belgedeki tüm öbekleri görmek için, belirli bir PDF'nin title_parent_id alanı için bir filtre ekleyin. Alanın filtrelenebilir olduğunu onaylamak için dizininizin Alanlar sekmesini de kontrol edebilirsiniz.

    {
       "select": "chunk_id,text_parent_id,chunk,title",
       "filter": "text_parent_id eq 'aHR0cHM6Ly9oZWlkaXN0c3RvcmFnZWRlbW9lYXN0dXMuYmxvYi5jb3JlLndpbmRvd3MubmV0L2hlYWx0aC1wbGFuLXBkZnMvTm9ydGh3aW5kX1N0YW5kYXJkX0JlbmVmaXRzX0RldGFpbHMucGRm0'",
       "count": true,
       "vectorQueries": [
           {
              "kind": "text",
              "text": "*",
              "k": 5,
              "fields": "text_vector"
           }
        ]
    }
    

Kaynakları temizleme

Kendi aboneliğinizde çalışırken, artık ihtiyacınız olmayan kaynakları kaldırarak bir projeyi tamamlamak iyi bir fikirdir. Açık kalan kaynaklar size maddi yük getirebilir.

Kaynakları bulmak ve yönetmek için Azure portalında Tüm kaynaklar veya Kaynak grupları seçin. Kaynakları tek tek silebilir veya tüm kaynakları aynı anda kaldırmak için kaynak grubunu silebilirsiniz.

Sonraki adım

Bu hızlı başlangıçta tümleşik vektörleştirme için gerekli tüm nesneleri oluşturan Verileri içeri aktarma sihirbazı tanıtıldı. Her adımı ayrıntılı olarak incelemek için bkz. Azure Yapay Zeka Arama tümleşik vektörleştirmeyi ayarlama.