Bu sayfada, Dialogflow'u kullanarak hem anlayabilen hem de doğal dille yanıt verebilen bir Google Chat uygulamasının nasıl oluşturulacağı açıklanmaktadır. Bu kılavuzda, Google Chat ile doğrudan entegrasyonu olan Dialogflow CX kullanılır. Dialogflow ES Google Chat kılavuzunu izleyerek Dialogflow ES Google Chat uygulaması oluşturmak için Dialogflow ES'i de kullanabilirsiniz.
Örneğin, kullanıcıların araç kiralamasına yardımcı olan bir Chat uygulaması düşünün. Bir kullanıcı "Araç kiralamak istiyorum" yazabilir. Chat uygulaması, "Aracı nereden almak istersiniz?" gibi bir soruyla yanıt verebilir. Bu da, kullanıcıyla insan benzeri bir konuşma başlatır. Bu sohbet uygulaması, araç kiralama rezervasyonu sırasında hem insan konuşmasını anlayıp hem de insan konuşmasına yanıt verir.
Bu yalnızca bir örnektir. Dialogflow Chat uygulamaları her türlü etkileşimde faydalıdır. Doğal insan konuşması gerektiriyorsa Dialogflow Chat uygulaması gerekir. Önceden oluşturulmuş temsilciler, hızlı bir başlangıç yapmanıza ve Dialogflow'un neler yapabileceğini göstermenize yardımcı olur. Örneğin:
- Uçuş rezervasyonu yapma
- Doktor randevusu alma
- Yemek siparişi verme
- Perakende ürün kataloğuyla ilgili soruları (ör. ürünlerin başka renklerde olup olmadığı) yanıtlama
-
Şekil 2. Temsilcinin mantığının ve yapılandırmasının amaçlandığı gibi çalıştığından emin olmak için Dialogflow CX'de temsilciyi test etme. Diyagram, bir görüşmedeki belirli adımlarla (ör. kiralık bir araba için teslim alma ve iade konumu belirlemek) ilgili olarak birbirini takip eden bir dizi konu sayfasını gösterir ve bunları birbirine bağlayan mantığı yapılandırır. Sohbet, bir simülasyon aracında test edilir. -
Şekil 3. Google Cloud Console'daki Chat API yapılandırma sayfasında Dialogflow CX aracısını kullanarak yanıtları işlemek için bir Chat uygulaması yapılandırın. -
Şekil 4. Google Chat'teki Dialogflow Chat uygulamasıyla kiralık araç rezervasyonu hakkında sohbet etme
Hedefler
- Ortamınızı ayarlayın.
- Dialogflow CX aracısı oluşturun ve dağıtın.
- Dialogflow CX aracı tarafından desteklenen bir Chat uygulaması oluşturup dağıtın.
- Chat uygulamasını test edin.
Ön koşullar
- Google Chat'e erişimi olan bir Business veya Enterprise Google Workspace hesabı
- Faturalandırmanın etkin olduğu bir Google Cloud projesi. Mevcut bir projede faturalandırmanın etkinleştirilip etkinleştirilmediğini kontrol etmek için Projelerinizin faturalandırma durumunu doğrulama başlıklı makaleyi inceleyin. Proje oluşturmak ve faturalandırmayı ayarlamak için Google Cloud projesi oluşturma başlıklı makaleyi inceleyin.
Mimari
Aşağıdaki şemada, Dialogflow ile oluşturulmuş bir Chat uygulamasının mimarisi gösterilmektedir:
Önceki şemada, Dialogflow Chat uygulamasıyla etkileşimde bulunan bir kullanıcının bilgi akışı aşağıdaki gibidir:
- Kullanıcı, Chat'teki bir Chat uygulamasına doğrudan mesaj veya bir Chat alanında mesaj gönderir.
- Google Cloud'da bulunan bir Dialogflow sanal aracı, mesajı alır ve yanıt oluşturmak için işler.
- İsteğe bağlı olarak, Dialogflow webhook kullanarak Dialogflow aracısı, proje yönetimi sistemi veya destek kaydı aracı gibi harici üçüncü taraf hizmetleriyle etkileşim kurabilir.
- Dialogflow aracısı, Chat'te Chat uygulaması hizmetine yanıt gönderir.
- Yanıt, Chat alanına gönderilir.
Ortamı ayarlama
Google API'lerini kullanmadan önce bir Google Cloud projesinde etkinleştirmeniz gerekir. Tek bir Google Cloud projesinde bir veya daha fazla API'yi etkinleştirebilirsiniz.Google Cloud Console'da Google Chat API ve Dialogflow API'yi etkinleştirin.
API'leri doğru Cloud projesinde etkinleştirdiğinizi onaylayıp İleri'yi tıklayın.
Doğru API'leri etkinleştirdiğinizden emin olduktan sonra Etkinleştir'i tıklayın.
Dialogflow CX aracısı oluşturma
Dialogflow CX aracısı, son kullanıcılarınızla eşzamanlı sohbetleri yöneten sanal bir aracıdır. İnsan dilinin nüanslarını anlayan bir doğal dil anlama modülüdür. Dialogflow, sohbet sırasında son kullanıcı metnini uygulamalarınızın ve hizmetlerinizin anlayabileceği yapılandırılmış verilere dönüştürür. Sisteminiz için gereken sohbet türlerini işlemek üzere bir Dialogflow aracısı tasarlayıp oluşturursunuz.
Dialogflow aracısı insan çağrı merkezi temsilcisi gibidir. İkisini de beklenen konuşma senaryolarını ele alacak şekilde eğitirsiniz ve eğitiminizin fazla açıklığa kavuşturulması gerekmez.
Dialogflow CX aracısını oluşturmak için:
Dialogflow CX konsolunda Dialogflow CX Console'u açın. Menü > Dialogflow CX'yi tıklayın.
Bir Google Cloud projesi seçin. Projenizi bulmak için Tümü'nü tıklayıp aramanız gerekebilir.
Artık önceden oluşturulmuş bir temsilci seçebilir veya kendi temsilcinizi oluşturabilirsiniz. Aracı özelleştirmesini daha sonra ayrıntılı olarak incelemek isterseniz önceden oluşturulmuş aracılardan birini seçin. Bu aracılar, aracıların neler yapabileceğini öğrenmek için de faydalıdır.
Önceden oluşturulmuş bir aracı seçmek için aşağıdaki adımları uygulayın:
- Önceden oluşturulmuş temsilcileri kullan'ı tıklayın.
Önceden oluşturulmuş bir temsilci seçin. Bu kılavuz için Seyahat: Araç kiralama'yı seçin.
Temsilciler, temsilcinin kullandığı özellik sayısına ve sohbet mantığının gelişmiş olmasına göre başlangıç, orta ve ileri düzey olarak derecelendirilir. Orta veya ileri seviye bir temsilci seçmek, Google Cloud Console'da özellikleri ve API'leri etkinleştirmek de dahil olmak üzere temsilciye özgü özelleştirmeler ve ayarlar gerektirebilir.
Temsilci olarak içe aktar'ı tıklayın.
Kendi aracınızı oluşturmak için aşağıdaki adımları uygulayın:
- Temsilci oluştur'u tıklayın.
- Veri deposu aracısı oluşturmak için Otomatik olarak oluştur'u veya başka türde aracılar oluşturmak için Kendi aracınızı oluşturun'u seçin.
Temsilci oluşturma sürecinin ayrıntılı bir adım adım açıklamalı kılavuzu için Dialogflow CX temsilcisi oluşturma başlıklı makaleyi inceleyin.
Temel aracı ayarlarını yapılandırın:
- Görünen ad alanına bir görünen ad girin.
- Tercih ettiğiniz konumu seçin. Gelişmiş konum ayarlarını değiştirmek istiyorsanız Düzenle'yi tıklayın.
- Tercih ettiğiniz saat dilimini seçin.
- Aracınız için varsayılan dili seçin. Temsilciler oluşturulduktan sonra varsayılan dili değiştiremezsiniz.
Oluştur'u tıklayın. Dialogflow CX, aracıyı oluşturmaya başlar ve ardından aracının varsayılan başlangıç akışını gösterir.
İsteğe bağlı olarak aracıyı özelleştirin. Aracı özelleştirme işlemiyle ilgili ayrıntılı bir adım adım açıklamalı kılavuz için Dialogflow CX aracısı oluşturma başlıklı makaleyi inceleyin.
En iyi uygulama olarak aracıyı test edin:
- Test aracısı'nı tıklayın.
- Test aracısını ortamda test et'i seçin.
- Ortam'da Taslak'ı seçin.
- Akışta Varsayılan Başlangıç Akışımı seçin.
- Sayfada Başlangıç Sayfası'nı seçin.
- Temsilciyle konuş yazma çubuğuna
Hello
yazıp Enter'a basın. Temsilci kendisini tanıtarak yanıt verir. - Örnek test görüşmesini yaparak testi tamamlayın.
Dialogflow CX aracısı oluşturulur. Dialogflow CX konsoluna dönün. Menü > Dialogflow CX'yi tıklayın.
Temsilciler bölümünde > Adı kopyala'yı tıklayın. Chat uygulamasını yapılandırırken kullandığınız bu adı kaydedin.
Chat uygulaması oluşturup Dialogflow aracısına bağlama
Dialogflow CX temsilcisi oluşturduktan sonra, temsilciyi sohbet uygulamasına dönüştürmek için aşağıdaki adımları uygulayın:
Google Cloud konsolunda Google Chat API'ye gidin. "Google Chat API"yi arayın ve Google Chat API'yi, ardından Yönet'i tıklayın.
Yapılandırma'yı tıklayın ve Chat uygulamasını ayarlayın:
- Uygulama adı alanına
Dialogflow App
yazın. - Avatar URL'si alanına
https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png
yazın. - Açıklama alanına
Responds to real human conversation
yazın. - İşlevsellik bölümünde 1:1 mesaj alma ve Alanlara ve grup görüşmelerine katılma'yı seçin.
- Bağlantı ayarları bölümünde Dialogflow'u seçin.
- Dialogflow ayarları bölümünde Dialogflow CX'i seçin.
- Temsilci veya Ortam kaynağı adı alanına, Dialogflow CX temsilcisi oluşturma bölümünün sonuna kopyaladığınız Dialogflow CX temsilcisi adını yapıştırın.
- Alanınızda bu Chat uygulamasını belirli kişilere ve gruplara sunun ve e-posta adresinizi girin.
- Günlükler bölümünde, Hataları günlüğe kaydetme'yi seçin.
- Uygulama adı alanına
Kaydet'i tıklayın.
Chat uygulaması, Chat'te mesaj almaya ve yanıt vermeye hazırdır.
Chat uygulamasını test etme
Dialogflow CX Chat uygulamasını Google Chat'te mesaj göndererek test edin.
Kendinizi güvenilir test kullanıcısı olarak eklerken sağladığınız Google Workspace hesabını kullanarak Google Chat'i açın.
- Yeni sohbet'i tıklayın.
- 1 veya daha fazla kullanıcı ekle alanına Chat uygulamanızın adını yazın.
Sonuçlar arasından Chat uygulamanızı seçin. Doğrudan mesaj açılır.
Uygulamayı içeren yeni doğrudan mesajda
Hello
yazıpenter
tuşuna basın.Dialogflow Chat uygulaması kendini tanıtarak yanıt verir.
- Örnek test görüşmesini yaparak testi tamamlayın.
Örnek test görüşmesi
Dialogflow CX Chat uygulamasını Dialogflow CX konsolunda veya Google Chat'te test etmek için aşağıdaki konuşmayı yapın. Açıklama, Dialogflow CX aracısının kullanıcının doğal dilini nasıl yorumladığını ve sohbetin her adımında kendi doğal dil yanıtını nasıl oluşturduğunu anlamanıza yardımcı olur. Bu örnek görüşme, Seyahat: araba kiralama adlı önceden oluşturulmuş temsilciye dayanır.
Dialog | Açıklama |
---|---|
Kullanıcı: Merhaba Temsilci: Merhaba. Ben sanal araba kiralama acentesiyim. Yeni bir araç kiralama rezervasyonu yapmanıza yardımcı olabilirim. Bugün size nasıl yardımcı olabilirim? |
|
Son kullanıcı: Araba kiralamak istiyorum. Temsilci: Aracı nereden almak istiyorsunuz? |
|
Kullanıcı: Las Vegas Temsilci: Tamam, teslim alma işleminiz Las Vegas'ta yapılacak. Temsilci: Teslim alma konumunuz, bırakma konumunuzdan farklı mı? |
|
Son kullanıcı: Evet. Arabayı Los Angeles'ta bırakacağım. Temsilci: Tamam, teslimat Los Angeles\'ta olacak. Temsilci: Aracı hangi tarih ve saatte teslim almak istiyorsunuz? |
|
Son kullanıcı: Arabayı 5 Mart günü öğlen teslim almak istiyorum. Müşteri temsilcisi: Aracı hangi tarih ve saatte bırakmak istiyorsunuz? |
|
Son kullanıcı: 15 Mart öğlen. Müşteri temsilcisi: Onaylamak amacıyla soruyorum: Araç için 05.03.2024 12:00:00 tarihinde Las Vegas'tan teslim alıp 15.03.2024 12:00:00 tarihinde Los Angeles'a bırakacaksınız. Doğru mu? |
|
Son kullanıcı: Evet, teşekkürler. Temsilci: Mükemmel. Şimdi bir araç seçelim. Temsilci: Ekonomi sınıfı mı yoksa lüks sınıf bir araç mı |
|
Son kullanıcı: Ekonomik gönderin lütfen. Temsilci: Cymbal Araba mı yoksa Cymbal Kamyonet mi istersiniz? |
|
Son kullanıcı: Cymbal Truck. Temsilci: Cymbal kamyonu günlük 50,33 ABD doları. 4 kişiliktir ve AM/FM radyoyla birlikte gelir. Ödeme işlemine devam etmek istiyor musunuz? Son kullanıcı: Evet, lütfen. |
|
Temsilci: Hangi kart türünü kullanacaksınız? Kullanıcı: Altostrat Temsilci: Lütfen kart numarasını girin. Kullanıcı: 1234 1234 1234 1234 Temsilci: Karttaki ad nedir? Son kullanıcı: Cansu Temsilci: Fatura açık adresi nedir? Kullanıcı: 1800 Amphibious Blvd. Mountain View, CA Temsilci: Fatura adresinin posta kodu nedir? Kullanıcı: 94045 Temsilci: Zil arabasını 05.03.2024 12:00:00 tarihinde Las Vegas'ta teslim alacak ve 15.03.2024 12:00:00 tarihinde bırakacaksınız. Bu seyahatin toplamı 175,38 ABD doları olacak. Müşteri temsilcisi: Kiralama işlemini bizimle yaptığınız için teşekkür eder, iyi günler dileriz. |
|
Dialogflow'dan kart mesajları gönderme
Dialogflow, metin veya kart mesajlarıyla yanıt verebilir. Kart mesajıyla yanıt vermek için sipariş tamamlama işleminde özel yük olarak belirtin.
Aşağıdaki JSON'da, kart mesajının yerine getirme sırasında özel bir yük olarak nasıl gönderileceği gösterilmektedir:
json
{
'cardsV2': [{
'cardId': 'createCardMessage',
'card': {
'header': {
'title': 'A card message!',
'subtitle': 'Sent from Dialogflow',
'imageUrl': 'https://developers.google.com/chat/images/chat-product-icon.png',
'imageType': 'CIRCLE'
},
'sections': [
{
'widgets': [
{
'buttonList': {
'buttons': [
{
'text': 'Read the docs!',
'onClick': {
'openLink': {
'url': 'https://developers.google.com/workspace/chat'
}
}
}
]
}
}
]
}
]
}
}]
}
Sınırlar ve dikkat edilmesi gereken hususlar
- Sohbet etkileşim etkinlikleri sınırlı destek alır ve bazı hususları dikkate almanız gerekir:
- Aşağıdaki etkileşim etkinliği türleri desteklenir:
MESSAGE
ADDED_TO_SPACE
CARD_CLICKED
MESSAGE
veyaADDED_TO_SPACE
etkinlikleri için Dialogflow aracısına gönderilen sorgu girişi, Chat mesajındakiargumentText
alanının değerine karşılık gelir. Mesajda eğik çizgi komutu varsa bunun yerinetext
alanının değeri kullanılır.CARD_CLICKED
etkinlikleri için Dialogflow temsilcisine gönderilen sorgu girişiCARD_CLICKED.functionName
olarak biçimlendirilir. BuradafunctionName
, etkileşimli kart öğesine (ör. düğme) bağlı İşlem nesnesininfunction
alanının değerine karşılık gelir.- Her Chat etkileşimi etkinliğinin tam JSON yükü, sorgu parametresinde özel yük olarak Dialogflow'a gönderilir ve
WebhookRequest.payload
alanının değerini sorgulayarak Dialogflow webhook ile erişilebilir.
- Aşağıdaki etkileşim etkinliği türleri desteklenir:
- Eğik çizgi komutlarına yanıt verme ve kartlardan veya iletişim kutularından veri alma ile ilgili dikkat edilmesi gereken noktalar:
- Dialogflow Chat uygulamaları, eğik çizgi komutu içeren bir mesaj aldığında sorgu girişi yalnızca
text
alanının değerini içerir.text
alanı, eğik çizgi komutunun adıyla başlar (örneğin,/command
). Bu alanı, Dialogflow aracısının eğik çizgi komutunu algılayacak şekilde yapılandırmak için kullanabilirsiniz. - Dialogflow temsilcisinin sohbet etkileşimi etkinliği JSON yükünü işlemesi gerekiyorsa sorgu parametresindeki özel yükü incelemek için Dialogflow webhook'ı kullanarak bunu yapabilir.
- Dialogflow aracısından bir iletişim görüntülemek için
DIALOG
işlem yanıtı içeren bir mesajın yer aldığı tek bir özel JSON yüküyle yanıt verin. - Kartlardan girilen verileri işlemek için Dialogflow aracısı,
CARD_CLICKED
metniyle başlayan intent'leri algılayabilir ve uygun işlemi içeren tek bir özel JSON yükü ile yanıt verebilir.
- Dialogflow Chat uygulamaları, eğik çizgi komutu içeren bir mesaj aldığında sorgu girişi yalnızca
- Bağlantı önizlemeleri desteklenmez.
- Dialogflow temsilcisi yalnızca bir mesajla yanıt verirse mesaj Google Chat'e eşzamanlı olarak gönderilir. Dialogflow temsilcisi birden fazla mesajla yanıt verirse tüm mesajlar, Chat API'deki
spaces.messages
kaynağındacreate
yöntemi her mesaj için bir kez çağrılarak Chat'e asynkron olarak gönderilir. - Chat ile Dialogflow CX entegrasyonu kullanılırken Dialogflow temsilcisi ve Chat uygulaması aynı Google Cloud projesinde ayarlanmalıdır. Dialogflow ve Chat'i farklı Cloud projelerinde ayarlamanız gerekiyorsa bağlantıyı kolaylaştırmak için bir ara sunucu oluşturabilirsiniz. Bunu nasıl yapacağınızı öğrenmek için GitHub'daki Dialogflow CX örneği için sohbet entegrasyonu başlıklı makaleyi inceleyin.
Sorun giderme
Bir Google Chat uygulaması veya kartı hata döndürdüğünde Chat arayüzünde "Bir hata oluştu" mesajı gösterilir. veya "İsteğiniz işlenemiyor." Bazen Chat kullanıcı arayüzünde hata mesajı gösterilmez ancak Chat uygulaması veya kartı beklenmedik bir sonuç verir. Örneğin, kart mesajı görünmeyebilir.
Chat kullanıcı arayüzünde hata mesajı gösterilmeyebilir ancak Chat uygulamaları için hata günlüğü etkinleştirildiğinde hataları düzeltmenize yardımcı olacak açıklayıcı hata mesajları ve günlük verileri kullanılabilir. Hataları görüntüleme, hata ayıklama ve düzeltme hakkında yardım için Google Chat hatalarını giderme başlıklı makaleyi inceleyin.
Temizleme
Bu eğiticide kullanılan kaynaklar için Google Cloud hesabınızın ücretlendirilmesini istemiyorsanız Cloud projesini silmenizi öneririz.
- Google Cloud Console'da Kaynakları yönetin sayfasına gidin. Menü > IAM ve Yönetici > Kaynakları Yönet'i tıklayın.
- Proje listesinde, silmek istediğiniz projeyi seçin ve ardından Sil'i tıklayın.
- İletişim kutusuna proje kimliğini yazın ve projeyi silmek için Kapat'ı tıklayın.
İlgili konular
- Dialogflow CX, Dialogflow temsilcisi tasarımında durum makinesi yaklaşımını benimser. Bu yaklaşım, sohbet üzerinde net ve açık bir kontrol, daha iyi bir son kullanıcı deneyimi ve daha iyi bir geliştirme iş akışı sağlar. Dialogflow Chat uygulaması derlerken Dialogflow CX kullanmanızı öneririz.
- Temsilci oluşturma ve yapılandırma hakkında daha fazla bilgi edinmek için Dialogflow CX Temsilcileri başlıklı makaleyi inceleyin.
- Aracıları nasıl oluşturacağınızı ve yapılandıracağınızı açıklayan adım adım açıklamalı ayrıntılı bir kılavuz için Dialogflow CX aracısı oluşturma bölümüne bakın.
- Gemini ile Google Chat için uygulama geliştirme başlıklı makaleye göz atın. Codelab: Dialogflow CX veri deposu aracısı derlemeyle ilgili örnek için codelab'deki bilgi Chat uygulamasını inceleyin.
- Gemini ile Google Chat için uygulama oluşturma codelab'indeki geri bildirim Chat uygulamasına bakın. Codelab: Dialogflow CX etkileşimli aracının nasıl oluşturulacağına dair bir örnek için
- Dialogflow'u Chat uygulamasıyla kullanmanın bir diğer yolu da Dialogflow ES'dir.