Arama sonuçlarında anlamsal derecelendirmeyi ve dönüş açıklamalı alt yazılarını yapılandırma
Bu makalede, anlamsal yeniden boyutlandırma için arama dizini yapılandırma açıklanmaktadır.
Semantik derecelendirme, ilk sonuç kümesi üzerinde yinelenir ve en anlamsal olarak ilgili sonuçları yığının en üstüne yükselten bir L2 derecelendirme metodolojisi uygular. Ayrıca en ilgili terimler ve tümcecikler üzerinde vurgular içeren anlamsal açıklamalı alt yazılar ve anlamsal yanıtlar da alabilirsiniz.
Önkoşullar
Bölge kullanılabilirliğine bağlı olarak temel katman veya üzeri bir arama hizmeti.
Arama hizmetinizde semantik derece etkinleştirildi.
Zengin metin içeriğine sahip mevcut bir arama dizini. Semantik derecelendirme dizeler (nonvector) alanları için geçerlidir ve bilgilendirici veya açıklayıcı içerik üzerinde en iyi şekilde çalışır.
İstemci seçme
Anlamsal yapılandırma eklemek için aşağıdaki araçlardan ve SDK'lardan herhangi birini kullanabilirsiniz:
- Azure portalında dizin tasarımcısını kullanarak anlamsal yapılandırma ekleyin.
- REST istemcisiyle Visual Studio Code
- .NET için Azure SDK
- Python için Azure SDK
- Java için Azure SDK
- JavaScript için Azure SDK
Anlamsal yapılandırma ekleme
Anlamsal yapılandırma, dizininizde semantik derecelendirme için alan girişleri oluşturan bir bölümdür. İstediğiniz zaman bir anlamsal yapılandırma ekleyebilir veya güncelleştirebilirsiniz; yeniden derleme gerekmez. Birden çok yapılandırma oluşturursanız varsayılan bir yapılandırma belirtebilirsiniz. Sorgu zamanında, sorgu isteğinde bir anlamsal yapılandırma belirtin veya varsayılanı kullanmak için bunu boş bırakın.
Anlamsal yapılandırmanın bir adı ve aşağıdaki özellikleri vardır:
Yalnızca bir başlık alanı belirtebilirsiniz, ancak istediğiniz kadar içerik ve anahtar sözcük alanınız olabilir. İçerik ve anahtar sözcük alanları için, daha düşük öncelikli alanlar kesilebileceği için alanları öncelik sırasına göre listeleyin.
Tüm anlamsal yapılandırma özelliklerinde atadığınız alanlar şu şekilde olmalıdır:
- ve olarak
searchable
özniteliklendirildiretrievable
- , ,
Collection(Edm.String)
dize alt alanları türündeEdm.String
dizelerEdm.ComplexType
Azure portalında oturum açın ve anlam derecelendirmesi etkinleştirilmiş bir arama hizmetine gidin.
Sol gezinti bölmesindeki Dizinler'den bir dizin açın.
AnlamSal Yapılandırmalar'ı ve ardından Semantik Yapılandırma Ekle'yi seçin.
Yeni Anlam Yapılandırması sayfası, başlık alanı, içerik alanları ve anahtar sözcük alanları seçme seçenekleriyle birlikte açılır. Yalnızca aranabilir ve alınabilir dize alanları uygundur. İçerik alanlarını ve anahtar sözcük alanlarını öncelik sırasına göre listelediğinden emin olun.
Değişiklikleri kaydetmek için Tamam'ı seçin.
Önizleme sürümlerinden geçiş
Anlamsal derecelendirme kodunuz önizleme API'lerini kullanıyorsa, bu bölümde kararlı sürümlere nasıl geçiş yapılacağını açıklanmaktadır. Genel kullanılabilirlik doğrulaması için değişiklik günlüklerini de kontrol edebilirsiniz:
- 2023-11-01 (REST)
- .NET için Azure SDK (11.5) değişiklik günlüğü
- Python için Azure SDK (11.4) değişiklik günlüğü
- Java için Azure SDK (11.6) değişiklik günlüğü
- JavaScript için Azure SDK (12.0) değişiklik günlüğü
Davranış değişiklikleri:
14 Temmuz 2023 itibarıyla semantik dereceleyici dilden bağımsızdır. Çok dilli içeriklerden oluşan sonuçları, belirli bir dile karşı sapma olmadan yeniden düzenleyebilir. Önizleme sürümlerinde semantik derecelendirme, alan çözümleyicisi tarafından belirtilen dilden farklı sonuçların yerini alır.
2021-04-30-Preview ve sonraki tüm sürümlerde REST API ve aynı sürümü hedefleyen tüm SDK paketleri için:
semanticConfiguration
(dizin tanımında) anlamsal derecelendirmede hangi arama alanlarının kullanıldığını tanımlar. Daha önce 2020-06-30-Preview REST API'sindesearchFields
(sorgu isteğinde) alan belirtimi ve öncelik belirleme için kullanılıyordu. Bu yaklaşım yalnızca 2020-06-30-Preview sürümlerinde çalıştı ve diğer tüm sürümlerde kullanımdan kaldırıldı.
1. Adım: queryLanguage'ı kaldırma
Anlamsal derecelendirme altyapısı artık dilden bağımsızdır. Sorgu mantığınızda belirtilirsequeryLanguage
, artık anlamsal derecelendirme için kullanılmaz, ancak yine de yazım düzeltmesi için geçerlidir.
Yazım denetleyicisi kullanıyorsanız ve dil değeri yazım denetleyicisi tarafından destekleniyorsa saklayınqueryLanguage
. Yazım denetimi, diller arasında sınırlı kullanılabilirliğe sahiptir.
Aksi takdirde silin queryLanguage
.
2. Adım: şununla değiştirin searchFields
: semanticConfiguration
Kodunuz bu REST API sürümünü hedefleyen 2020-06-30-Preview REST API veya beta SDK paketlerini çağırıyorsa, anlamsal alanları ve öncelikleri belirtmek için sorgu isteğinde kullanıyor searchFields
olabilirsiniz. İlk beta sürümlerinde, searchFields
ilk sorguyu içinde searchFields
listelenen alanlarla kısıtlayan ve ayrıca anlamsal derecelendirme kullanıldıysa alan önceliğini ayarlayan çift amaçlıydı. Sonraki sürümlerde özgün searchFields
amacını korur, ancak artık anlamsal derecelendirme için kullanılmaz.
Tam metin aramasını adlandırılmış alanlar listesiyle sınırlamak için kullanıyorsanız sorgu isteklerinde tutun searchFields
.
Bu makaledeki yönergeleri izleyerek alan önceliklendirmesini belirtmek için dizin şemasına bir semanticConfiguration
ekleyin.
Sonraki adımlar
Anlamsal bir sorgu çalıştırarak anlam yapılandırmanızı test edin.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin