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ınızı nereden almak istersiniz?" gibi bir soruyla yanıt verebilir. Bu soru, kullanıcıyla insansı bir sohbet başlatır. Chat uygulaması, araç kiralama rezervasyonu yaparken kullanıcının sorularını anlayıp doğal bir konuşma dilinde 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. Şemada, kiralık araç için teslim alma ve iade konumu belirleme gibi sohbetteki belirli adımlarla ilgili sıralı bir dizi konu sayfası gösterilir ve bunları birbirine bağlayan mantık yapılandırılır. İleti dizisi bir simülatörde 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 etkin olup olmadığını 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'te bir Chat uygulamasına doğrudan mesaj veya Chat alanında mesaj gönderir.
- Google Cloud'da bulunan bir Dialogflow sanal aracı, yanıt oluşturmak için mesajı alır ve 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şime geçebilir.
- Dialogflow temsilcisi, Chat'teki Chat uygulaması hizmetine bir 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 temsilcisi 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 temsilcisi, gerçek bir çağrı merkezi temsilcisine benzer. Her ikisini de beklenen konuşma senaryolarını ele almaları için eğitirsiniz ve eğitiminizin çok açık olması gerekmez.
Dialogflow CX aracısını oluşturmak için:
Dialogflow CX Konsolu'nda Dialogflow CX Konsolu'nu 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. Temsilci özelleştirmesini daha sonra ayrıntılı olarak incelemeyi tercih ediyorsanız önceden oluşturulmuş temsilcilerden birini seçin. Bu temsilciler, temsilcilerin neler yapabileceği hakkında bilgi edinmenize de yardımcı olur.
Önceden oluşturulmuş bir temsilci 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, kullandıkları özellik sayısına ve sohbet mantığının karmaşıklığına göre başlangıç, orta veya ileri seviye olarak değerlendirilir. 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 müşteri temsilcisi 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.
- Temsilciniz için varsayılan dili seçin. Oluşturulan bir temsilcinin varsayılan dilini 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. Temsilci özelleştirme sürecine dair ayrıntılı bir açıklama için Dialogflow CX temsilcisi oluşturma başlıklı makaleyi inceleyin.
En iyi uygulama olarak aracıyı test edin:
- Test aracısı'nı tıklayın.
- Ortamda aracıyı test et'i seçin.
- Ortam bölümünde Taslak'ı seçin.
- Akış'ta Varsayılan Başlangıç Akışımı seçin.
- Sayfa bölümünde Başlangıç Sayfası'nı seçin.
- Temsilciyle konuş yazma çubuğuna
Hello
yazıp Enter tuşuna basın. Müşteri temsilcisi kendini tanıtarak yanıt verir. - Örnek test görüşmesini yaparak testi tamamlayın.
Dialogflow CX temsilcisi oluşturulur. Dialogflow CX Konsolu'na 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 kullanacağınız için 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 Console'da 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ünde 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 Günlüğe hata kaydet'i 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çlardan Chat uygulamanızı seçin. Doğrudan mesaj açılır.
Uygulamayla olan yeni doğrudan mesaja
Hello
yazın veenter
tuşuna basın.Dialogflow Chat uygulaması, kendisini 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 görüşmeyi 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? |
|
Kullanıcı: Aracı 5 Mart'ta öğle saatlerinde 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. Müşteri temsilcisi: Cymbal araba mı yoksa Cymbal kamyon mu istiyorsunuz? |
|
Son kullanıcı: Cymbal Truck. Temsilci: Cymbal kamyonu günlük 50,33 ABD doları. 4 kişi kapasiteli bu araçta AM/FM radyo bulunur. Ö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? Kullanıcı: Charlie Müşteri temsilcisi: Fatura 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 tutarı 175,38 ABD doları olacaktır. 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 temsilcisine 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şim etkinliğinin tam JSON yük verisi, sorgu parametresinde özel bir yük verisi olarak Dialogflow'a gönderilir ve
WebhookRequest.payload
alanının değeri sorgulanarak Dialogflow webhook'u 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 Chat 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ı oluştururken Dialogflow CX'yi 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.
- Temsilcileri nasıl oluşturacağınız ve yapılandıracağınız hakkında ayrıntılı bir açıklamalı kılavuz için Dialogflow CX temsilcisi oluşturma başlıklı makaleyi inceleyin.
- Gemini ile Google Chat için uygulama oluşturma codelab'indeki bilgi Chat uygulamasına bakın. Codelab: Dialogflow CX veri mağazası temsilcisinin nasıl oluşturulacağına dair bir örnek için
- 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.