Soruları yanıtlamak için Soru-Cevap Oluşturma hizmetini kullanma

ŞUNLAR IÇIN GEÇERLIDIR: SDK v4

Not

Azure Yapay Zeka Soru-Cevap Oluşturma 31 Mart 2025 tarihinde kullanımdan kaldırılacaktır. 1 Ekim 2022 tarihinden itibaren yeni QnA Maker kaynakları veya bilgi bankası makaleleri oluşturamazsınız. Soru ve yanıtlama özelliğinin daha yeni bir sürümü artık Azure AI Dili'nin bir parçası olarak kullanılabilir.

Azure AI Dili'nin bir özelliği olan özel soru yanıtlama, Soru-Cevap Oluşturma hizmetinin güncelleştirilmiş sürümüdür. Bot Framework SDK'sında soru-cevap desteği hakkında daha fazla bilgi için bkz . Doğal dil anlama.

Soru-Cevap Oluşturma, verilerinizin üzerinde konuşmaya dayalı bir soru cevap katmanı sağlar. Bu sayede botunuz Soru-Cevap Oluşturma'ya bir soru gönderebilir ve soruyu ayrıştırıp amacını yorumlamanıza gerek kalmadan yanıt alabilirsiniz.

Kendi Soru-Cevap Oluşturma hizmetinizi oluştururken temel gereksinimlerden biri hizmeti sorular ve yanıtlarla doldurmaktır. Birçok durumda sorular ve yanıtlar SSS belgeleri veya diğer belgelerin içeriğinde zaten mevcuttur; diğer durumlarda soruların yanıtlarını daha doğal, sohbet niteliğinde olmaları için özelleştirmek isteyebilirsiniz.

Bu makalede botunuzdan mevcut soru-cevap oluşturma bilgi bankası nasıl kullanılacağı açıklanmaktadır.

Yeni botlar için Dil için Azure Bilişsel Hizmet'in soru yanıtlama özelliğini kullanmayı göz önünde bulundurun. Bilgi için bkz . Soruları yanıtlamak için soru yanıtlamayı kullanma.

Not

Bot Framework JavaScript, C# ve Python SDK'ları desteklenmeye devam edecektir, ancak Java SDK'sı son uzun vadeli destek Kasım 2023'te sona erecek şekilde kullanımdan kaldırılacaktır.

Java SDK ile oluşturulan mevcut botlar çalışmaya devam edecektir.

Yeni bot derlemesi için Power Virtual Agents'ı kullanmayı göz önünde bulundurun ve doğru sohbet botu çözümünü seçme hakkında bilgi edinin.

Daha fazla bilgi için bkz . Bot oluşturmanın geleceği.

Önkoşullar

Bu örnek hakkında

Botunuzda Soru-Cevap Oluşturma'yı kullanmak için Soru-Cevap Oluşturma portalında mevcut bir bilgi bankası gerekir. Botunuz daha sonra kullanıcının sorularını yanıtlamak için bilgi bankası kullanabilir.

Yeni bot geliştirme için Power Virtual Agents'ı kullanmayı göz önünde bulundurun. Bot Framework SDK botu için yeni bir bilgi bankası oluşturmanız gerekiyorsa aşağıdaki Azure AI hizmetleri makalelerine bakın:

C# QnABot mantıksal akışı

OnMessageActivityAsync , alınan her kullanıcı girişi için çağrılır. Çağrıldığında, önceden yapılandırılmış Soru-Cevap Oluşturma bilgi bankası bağlanacak değeri bulmak için örnek kodun appsetting.json dosyasından yapılandırma ayarlarına erişir.

Kullanıcının girişi bilgi bankası gönderilir ve döndürülen en iyi yanıt kullanıcınıza geri görüntülenir.

Botunuzu bilgi bankası bağlamak için değerleri alma

İpucu

Soru-Cevap Oluşturma belgelerinde bilgi bankası oluşturma, eğitma ve yayımlama yönergeleri bulunur.

  1. Soru-Cevap Oluşturma sitesinde bilgi bankası seçin.
  2. bilgi bankası açıkken AYARLAR sekmesini seçin. Hizmet adı için gösterilen değeri kaydedin. Bu değer Soru-Cevap Oluşturma portalı arabirimini kullanırken ilgilendiğiniz bilgi bankası bulmak için kullanışlıdır. Bot uygulamanızı bu bilgi bankası bağlamak için kullanılmaz.
  3. Dağıtım ayrıntılarını bulmak için aşağı kaydırın ve Postman örnek HTTP isteğinden aşağıdaki değerleri kaydedin:
    • POST /knowledgebases/<knowledge-base-id>/generateAnswer
    • Ana bilgisayar: <konak-url'niz>
    • Yetkilendirme: EndpointKey <your-endpoint-key>

Konak URL'niz ile https:// başlar ve gibi https://<hostname>.azure.net/qnamakerile /qnamakerbiter. Botunuzun Soru-Cevap Oluşturma bilgi bankası bağlanmak için bilgi bankası kimliğine, ana bilgisayar URL'sine ve uç nokta anahtarına ihtiyacı vardır.

Ayarlar dosyasını güncelleştirme

İlk olarak, bilgi bankası erişmek için gereken ana bilgisayar adı, uç nokta anahtarı ve bilgi bankası kimliği (kbId) gibi bilgileri ayarlar dosyasına ekleyin. Bunlar, Soru-Cevap Oluşturma'daki bilgi bankası AYARLAR sekmesinde kaydettiğiniz değerlerdir.

Bunu üretim için dağıtmıyorsanız botunuzun uygulama kimliği ve parola alanlarını boş bırakabilirsiniz.

Not

Mevcut bot uygulamasına soru-cevap oluşturma bilgi bankası eklemek için Soru-Cevap girdileriniz için bilgilendirici başlıklar eklediğinizden emin olun. Bu bölümdeki "name" değeri, uygulamanızın içinden bu bilgilere erişmek için gereken anahtarı sağlar.

Soru-Cevap Oluşturma örneğini ayarlama

İlk olarak Soru-Cevap Oluşturma bilgi bankası erişmek için bir nesne oluşturacağız.

Projeniz için Microsoft.Bot.Builder.AI.QnA NuGet paketinin yüklü olduğundan emin olun.

QnABot.cs yönteminde OnMessageActivityAsync bir QnAMaker örneği oluşturun. sınıfıQnABot, yukarıdaki appsettings.json kaydedilen bağlantı bilgilerinin adlarının da çekildiği yerdir. Ayarlar dosyanızda bilgi bankası bağlantı bilgileriniz için farklı adlar seçtiyseniz, buradaki adları seçtiğiniz adı yansıtacak şekilde güncelleştirdiğinizden emin olun.

Botlar/QnABot.cs

C# (arşivlenmiş)

Botunuzdan Soru-Cevap Oluşturma'ya çağrı yapma

Botunuzun QnAMaker'dan yanıt alması gerektiğinde, geçerli bağlama göre uygun yanıtı almak için bot kodunuzdan yöntemini çağırın GetAnswersAsync . Kendi bilgi bankası erişiyorsanız kullanıcılarınız için yararlı yönergeler sağlamak için aşağıdaki yanıt bulunamadı iletisini değiştirin.

Botlar/QnABot.cs

C# (arşivlenmiş)

Botu test edin

Örneği makinenizde yerel olarak çalıştırın. Henüz yapmadıysanız Bot Framework Öykünücüsü'ni yükleyin. Daha fazla yönerge için örneğin README (C# (arşivlenmiş), JavaScript (arşivlenmiş), Java (arşivlenmiş)veya Python (arşivlenmiş) örneklerine bakın.

Öykünücüyü başlatın, botunuza bağlanın ve botunuza ileti gönderin. Sorularınıza verilen yanıtlar, bilgi bankası bilgilerinize bağlı olarak değişir.

Test örnek botu.

Ek bilgi

Soru-Cevap Oluşturma çok dönüşlü örnek (C# çok dönüşlü örnek (arşivlenmiş), JavaScript çok dönüşlü örnek (arşivlenmiş), Java çok dönüşlü örnek (arşivlenmiş), Python çok dönüşlü örnek (arşivlenmiş)), Soru-Cevap Oluşturma'nın izleme istemini ve etkin öğrenme özelliklerini desteklemek için Soru-Cevap Oluşturma iletişim kutusunun nasıl kullanılacağını gösterir.

  • Soru-Cevap Oluşturma, çoklu dönüş istemleri olarak da bilinen izleme istemlerini destekler. Soru-Cevap Oluşturma bilgi bankası kullanıcıdan daha fazla bilgi gerektiriyorsa, Soru-Cevap Oluşturma kullanıcıdan istemek için kullanabileceğiniz bağlam bilgilerini gönderir. Bu bilgiler, Soru-Cevap Oluşturma hizmetine herhangi bir izleme çağrısı yapmak için de kullanılır. Sürüm 4.6'da Bot Framework SDK'sı bu özellik için destek ekledi.

    Böyle bir bilgi bankası oluşturmak için, bir konuşmanın birden çok kez dönüşlerini oluşturmak için izleme istemlerini kullanma hakkında Soru-Cevap Oluşturma belgelerine bakın.

  • Soru-Cevap Oluşturma, etkin öğrenme önerilerini de destekleyerek bilgi bankası zaman içinde iyileştirilmesini sağlar. Soru-Cevap Oluşturma iletişim kutusu, etkin öğrenme özelliği için açık geri bildirimleri destekler.

    Bu özelliği bir bilgi bankası etkinleştirmek için Etkin öğrenme önerileriyle ilgili Soru-Cevap Oluşturma belgelerine bakın.

Sonraki adımlar

Soru-Cevap Oluşturma, botunuzu daha da güçlü hale getirmek için diğer Azure AI hizmetleriyle birleştirilebilir. Bot Framework Orchestrator, Soru-Cevap'ı botunuzda Language Understanding (LUIS) ile birleştirmenin bir yolunu sağlar.