Bu eğitimde, aşağıdaki sorulara yanıt veren bir Google Chat uygulamasının nasıl geliştirileceği gösterilmektedir: üretken yapay zekayla Chat alanlarındaki görüşmelere dayalı sorular Vertex AI tarafından desteklenen yapay zeka ve Gemini. Chat uygulaması soruları tanımak ve yanıtlamak için Google Workspace Events API ve Pub/Sub'ı birlikte kullanıyor gerçek zamanlı olarak yayınlayamazsınız. bahsedilmiyor.
Chat uygulaması, alanda gönderilen tüm mesajları şu şekilde kullanır: bir veri kaynağı ve bilgi bankası: Bir kullanıcı bir soru sorduğunda Chat uygulaması, daha önce paylaşılan yanıtları kontrol eder ve ardından birini paylaşır. Yanıt bulunamazsa yanıt verilemez demektir. Her yanıtta Kullanıcılar bir aksesuarın işlem düğmesini tıklayarak bir alan yöneticisinden @bahsedebilir ve soru sorabilir bir yanıt için. Google Chat uygulaması, Gemini yapay zekayı kullanarak Alanlardaki konuşmalar üzerine sürekli eğitim alarak bilgi tabanını büyütür. eklenir.
Çalışan oryantasyonunda Chat uygulamasının işleyiş şekli ve destek alanı:
-
Şekil 1. Charlie, yapay zeka bilgi asistanı Chat uygulamasını bir Chat alanına ekliyor. -
.
Şekil 2. Derya, şirketin topluluk önünde konuşma eğitimi sunup sunmadığını soruyor. -
.
Şekil 3. Yapay zeka bilgi asistanı Chat uygulaması, Chat alanının sohbet geçmişine dayanarak Derya'nın sorusuna yanıt vermesi için Gemini ile Vertex AI'dan istemde bulunuyor ve ardından yanıtı paylaşıyor.
Ön koşullar
İşletme veya Kuruluş Şuna erişimi olan Google Workspace hesabı: Google Chat.
Aşağıdakileri yapmak için Google Cloud hizmetlerine erişin:
- Bir Google Cloud projesi oluşturun.
- Cloud projesine bir Google Cloud faturalandırma hesabı bağlayın. Alıcı: olup olmadığını öğrenmek için Faturalandırmayı etkinleştirmek için gereken izinler.
- Kimliği doğrulanmamış Google Cloud Functions işlevi çağrılarını Bunu doğrulamak için Google Cloud Kuruluş alanla kısıtlı paylaşım kullanıyorsa.
Gerekirse Google Cloud yöneticinizden erişim izni isteyin veya izni gerekir.
Google Cloud KSA kullanıyorsanız bir Node.js ve gcloud KSA ile çalışacak şekilde yapılandırılmış geliştirme ortamına sahiptir. Görüntüleyin Node.js geliştirmesini ayarlama ortam.
Hedefler
- Şu işlemler için üretken yapay zeka kullanan bir Chat uygulaması derleyin: Chat alanında paylaşılan bilgilere göre soruları yanıtlama yardımcı olur.
- Üretken yapay zeka ile:
- Çalışanların sorularını tespit edip yanıtlayın.
- Chat'te devam eden görüşmelerden sürekli olarak bilgi alma boşluk oluşturur.
- Chat alanında mesajları anında dinleyin ve yanıtlayın Hatta Chat uygulaması doğrudan bağlanmasa bile mesaj gönderildi.
- Bir Firestore veritabanına yazarak ve bu veritabanından okuyarak mesajları kalıcı olarak kaydedebilirsiniz.
- Chat alanlarında alandan bahsederek ortak çalışmayı kolaylaştırın yöneticileri kontrol eder.
Mimari
Aşağıdaki şemada, Google Workspace ve AI bilgi asistanının kullandığı Google Cloud kaynakları Chat uygulaması.
Yapay zeka bilgi asistanı Chat uygulaması şu şekilde çalışır:
Bir kullanıcı, yapay zeka bilgi asistanı Chat uygulamasını ekler ekleme:
Chat uygulaması, kullanıcı tarafından sağlanan e-posta adresi kimlik doğrulama ve yetkilendirme.
Chat uygulaması, alanın mesajlarını Chat API'de
spaces.messages.list
yöntemini çağırarak ve ve ardından, getirilen iletileri bir Firestore veritabanında saklar.Chat uygulaması Google Workspace Events API'de
subscriptions.create
yöntemini kullanmaya başlayın alandaki mesajlar gibi etkinlikleri dinliyor. İlgili içeriği oluşturmak için kullanılan aboneliğin bildirim uç noktası, aşağıdakileri içeren bir Pub/Sub konusudur: Etkinliği Chat uygulamasına yönlendirmek için Eventarc'ı kullanın.Chat uygulaması, ortaya çıkar.
Chat alanındaki bir kullanıcı mesaj yayınladığında:
Chat uygulaması, mesajı gerçek zamanlı olarak alır konusundan bahsetmek istiyorum.
Chat uygulaması, mesajı Firestore'a ekler
Bir kullanıcı daha sonra mesajı düzenler veya silerse Chat uygulaması güncellenen veya silinen etkinliği alır gerçek zamanlı olarak günceller ve ardından Firestore'daki mesajı günceller veya siler
Chat uygulaması, mesajı Vertex AI'a gönderir Gemini ile:
İstem, Gemini ile Vertex AI'a mesajın doğru olup olmadığını kontrol etmesi için bir soru içeriyor. Bu durumda Gemini, yanıt verirken Firestore'da tutulan Chat alanının mesaj geçmişinde Google Chat uygulaması da mesajı Chat alanı Aksi halde yanıt vermeyin.
Gemini ile Vertex AI soruyu yanıtlarsa Chat uygulaması
spaces.messages.create
yöntemini çağırarak yanıtlayın Uygulama kimlik doğrulamasını kullanan Chat API.Gemini ile Vertex AI soruyu yanıtlayamazsa Chat uygulaması şunları yayınlar: bu soruya cevap bulamadığını belirten bir mesaj sohbet geçmişi oluşturabilirsiniz.
Mesajlarda her zaman kullanıcıların anlayabileceği bir aksesuar işlem düğmesi bulunur Bu, Chat uygulamasının @Yanıt vermek için bir alan yöneticisinden bahsedin.
Chat uygulaması, şuradan bir yaşam döngüsü bildirimi alır: Chat alanı aboneliğinin sunduğu Google Workspace Events API'yi de süresi dolmak üzere:
- Chat uygulaması,
abonelik için
subscriptions.patch
yöntemini çağırın Google Workspace Events API.
- Chat uygulaması,
abonelik için
Chat uygulaması Chat'ten kaldırılır boşluk:
Chat uygulaması, aboneliği şu şekilde siler:
subscriptions.delete
yöntemini çağırarak Google Workspace Events API.Chat uygulaması Chat'i siler alan verileri için geçerlidir.
Yapay zeka bilgi asistanı Chat uygulamasının kullandığı ürünleri inceleyin
Yapay zeka bilgi asistanı Chat uygulaması, aşağıdaki Google Workspace ve Google Cloud ürünlerinde:
- Gemini ile Vertex AI API: Gemini tarafından desteklenen üretken yapay zeka platformu. Yapay zeka bilgi asistanı Chat uygulaması şu işlemleri yapmak için Gemini ile Vertex AI API'yi kullanır: çalışan sorularını tanımak, anlamak ve yanıtlamak.
-
Chat API:
Mesaj alan ve yanıt veren Google Chat uygulamaları geliştirmek için bir API
Mesajlar gibi sohbet etkileşimi etkinlikleri. Yapay zeka
bilgi asistanı Chat uygulaması, Chat API'yi kullanarak:
- Chat tarafından gönderilen etkileşim etkinliklerini alın ve yanıtlayın.
- Alanda gönderilen mesajları listeler.
- Alanda kullanıcı sorularına verilen yanıtları yayınlayın.
- Google Chrome'da nasıl görüneceğini belirleyen özellikleri Sohbet (ör. ad ve avatar resmi).
- Google Workspace Events API: Bu API, etkinliklere abone olmanıza ve Google Workspace uygulamalarındaki bildirimleri değiştirebilir. İlgili içeriği oluşturmak için kullanılan Yapay zeka bilgi asistanı Chat uygulaması, Google Workspace Events API'si şurada yayınlanan mesajları dinlemek için kullanılır: Chat alanı sayesinde şu anda bile soruları algılayıp yanıtlayabilir bahsedilmiyor.
- Firestore: Sunucusuz belge veritabanı. Yapay zeka bilgi asistanı Chat uygulaması, mesajlarla ilgili verileri depolamak için Firestore kullanır Chat alanında gönderilir.
- Pub/Sub: Pub/Sub, iki tarafı birbirinden ayıran eşzamansız ve ölçeklenebilir bir mesajlaşma hizmetidir. bu iletileri işleyen hizmetlerden mesajlar üreten kullanıcılardır. İlgili içeriği oluşturmak için kullanılan AI bilgi asistanı Chat uygulaması, Pub/Sub'ı kullanarak Chat alanlarından abonelik etkinlikleri alma.
- Eventarc: Eventarc, aracı kullanmak zorunda kalmadan etkinliğe dayalı mimariler altyapıyı uygulamak, özelleştirmek veya sürdürmek. Yapay zeka bilgi asistanı Chat uygulaması, etkinlikleri Pub/Sub'dan Chat alanına yönlendirin ve abonelik etkinliklerini alan ve işleyen Cloud Functions işleviyle tanımlanır.
-
Cloud Functions:
Basit bir sunucusuz bilgi işlem hizmeti ile
Chat'e yanıt verebilen tek amaçlı, bağımsız işlevler
bir sunucu veya çalışma zamanı yönetimine gerek kalmadan etkileşim ve abonelik etkinlikleri
bahsedeceğim. Yapay zeka bilgi asistanı Chat uygulaması
şu ada sahip iki Cloud Functions işlevi kullanır:
-
app
: Chat'in gönderdiği HTTP uç noktasını barındırın bir bilişim platformu olarak iki yönlü etkileşim etkinliklerini ve bu olaylara nasıl tepki verdiğini gösterir. -
eventsApp
: Chat alanı alır ve işler Pub/Sub aboneliğinden gelen mesajlar gibi etkinlikler.
- Cloud Build: Tümüyle yönetilen sürekli entegrasyon, teslim ve dağıtım platformu geliştirmenizi sağlar.
- Cloud Run: Container mimarisine alınmış uygulamaları çalıştırmak için tümüyle yönetilen bir ortam.
-
Ortamı hazırlama
Bu bölümde, web sitesi için Google Cloud projesinin nasıl Chat uygulaması.
Google Cloud projesi oluşturma
Google Cloud Console
- Google Cloud konsolunda Menü'ye gidin > IAM ve Yönetici > Proje oluşturun'u tıklayın.
-
Proje Adı alanına projeniz için açıklayıcı bir ad girin.
İsteğe bağlı: Proje Kimliği'ni düzenlemek için Düzenle'yi tıklayın. Proje kimliği değiştirilemez Bu nedenle, ilk deneme süresi boyunca ihtiyaçlarınızı karşılayan bir kimlik seçin. belirler.
- Konum alanında, işletmenizin olası konumlarını görüntülemek için Göz at'ı tıklayın belirler. Ardından Seç'i tıklayın.
- Oluştur'u tıklayın. Google Cloud Console, Kontrol Paneli sayfasına gider ve projeniz oluşturulur birkaç dakika.
gcloud CLI
Aşağıdaki geliştirme ortamlarından birinde Google Cloud KSA (`gcloud`):
-
Cloud Shell: gcloud CLI ile online terminal kullanmak için
Cloud Shell'i etkinleştirin.
. Cloud Shell'i etkinleştir -
Yerel Kabuk: Yerel geliştirme ortamı kullanmak için
yükle ve
başlatmak
öğrenin.
. Bir Cloud projesi oluşturmak için "gcloud projects create" komutunu kullanın:gcloud projects create PROJECT_ID
Cloud projesi için faturalandırmayı etkinleştirin
Google Cloud Console
- Google Cloud konsolunda Faturalandırma'ya gidin. Sonraki slayta geçin Menü > Faturalandırma > Projelerim'i tıklayın.
- Bir kuruluş seçin bölümünde, ilişkili kuruluşu seçin Google Cloud projenize ekleyin.
- Proje satırında İşlemler menüsünü açın ( ), Faturalandırmayı değiştir'i tıklayın ve Cloud Faturalandırma Hesabı'nı seçin.
- Hesap belirle'yi tıklayın.
gcloud CLI
- Kullanılabilir faturalandırma hesaplarını listelemek için şu komutu çalıştırın:
gcloud billing accounts list
- Faturalandırma hesabını bir Google Cloud projesine bağlayın:
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
Aşağıdakini değiştirin:
PROJECT_ID
şu öğenin Proje Kimliğidir: Faturalandırmayı etkinleştirmek istediğiniz bulut projesi.BILLING_ACCOUNT_ID
, bağlanacak faturalandırma hesabı kimliğidir. Google Cloud projesinden bahsedeceğiz.
API'leri etkinleştirme
Google Cloud Console
Google Cloud konsolunda Google Chat API'yi, Vertex AI API'yi, Cloud Functions API, Firestore API, Cloud Build API, Pub/Sub API, Google Workspace Events API, Eventarc API ve Cloud Run Admin API.
API'leri doğru şekilde etkinleştirdiğinizden emin olun. Cloud projesine, ardından İleri'yi tıklayın.
Doğru API'leri etkinleştirdiğinizden emin olun ve ardından Etkinleştir'i tıklayın.
gcloud CLI
Gerekirse mevcut Cloud projesini oluşturduğunuz projeye ayarlayın oluşturulma tarihi:
gcloud config set project PROJECT_ID
PROJECT_ID değerini projenin Proje Kimliği ile değiştirin Oluşturduğunuz Cloud projesi.
Google Chat API, Vertex AI API, Cloud Functions API, Firestore API, Cloud Build API, Pub/Sub API, Google Workspace Events API, Eventarc API ve Cloud Run Yöneticisi API:
gcloud services enable chat.googleapis.com \ aiplatform.googleapis.com \ cloudfunctions.googleapis.com \ firestore.googleapis.com \ cloudbuild.googleapis.com \ pubsub.googleapis.com \ workspaceevents.googleapis.com \ eventarc.googleapis.com \ run.googleapis.com
Kimlik doğrulama ve yetkilendirme ayarlarını yapma
Kimlik doğrulama ve yetkilendirme, Google Workspace'te Chat uygulaması erişim kaynaklarına ve Google Cloud.
Bu eğitimde, Google Chat uygulamasını dahili olarak yayınlıyorsunuz. Yer tutucu bilgilerini kullanabilirsiniz. Şunu yayınlamadan önce: Google Chat uygulamasını harici olarak kullanıyorsanız yer tutucu bilgileri şununla değiştirin: gerçek bilgileri içermesi gerekir.
OAuth izin ekranını yapılandırın, kapsamları belirtin ve uygulamanızı kaydedin
Google Cloud konsolunda şu adrese gidin: Menü > API'ler ve Hizmetler > OAuth izin ekranı'nı tıklayın.
Kullanıcı türü bölümünde Dahili'yi seçin ve ardından Oluştur'u tıklayın.
Uygulama adı alanına
AI knowledge assistant
yazın.Kullanıcı desteği e-postası bölümünde e-posta adresinizi veya Google grubu.
Geliştirici iletişim bilgileri bölümünün altına e-posta adresinizi girin.
Kaydet ve Devam Et'i tıklayın.
Kapsam Ekle veya Kaldır'ı tıklayın. Kapsamların listesini içeren bir panel görüntülenir Cloud projenizde etkinleştirdiğiniz her API için otomatik olarak oluşturulur.
Kapsamları manuel olarak ekle bölümüne aşağıdaki kapsamı yapıştırın:
https://www.googleapis.com/auth/chat.messages
Add to Table'ı (Tabloya Ekle) tıklayın.
Güncelle'yi tıklayın.
Kaydet ve Devam Et'i tıklayın.
Uygulama kaydı özetini inceleyin ve ardından Kontrol Paneline Dön'ü tıklayın.
OAuth istemci kimliği kimlik bilgileri oluşturma
Google Cloud konsolunda şu adrese gidin: Menü > API'ler ve Hizmetler > Kimlik bilgileri.
Kimlik Bilgisi Oluştur'u tıklayın. > OAuth istemci kimliği.
Uygulama türü'nü tıklayın. > Web uygulaması.
Ad alanına kimlik bilgisi için bir ad yazın. Bu ad yalnızca Google Cloud Console'da görebilirsiniz.
Yetkili yönlendirme URI'leri altında URI ekle'yi tıklayın.
URI 1'e aşağıdakileri yazın:
https://REGION-PROJECT_ID.cloudfunctions.net/app/oauth2
Aşağıdakini değiştirin:
- REGION: Cloud Functions işlevinin bulunduğu bölge (ör.
us-central1
). Daha sonra, iki Cloud Functions işlevini oluşturduğunuzda, bölgesini bu değere ekleyin. - PROJECT_ID: Cloud projesinin Proje Kimliği anlatacağım.
- REGION: Cloud Functions işlevinin bulunduğu bölge (ör.
Oluştur'u tıklayın.
OAuth istemcisi oluşturuldu penceresinde JSON'u indir'i tıklayın.
İndirilen dosyayı
client_secrets.json
olarak kaydedin. Daha sonra, oluşturduğunuz her iki Cloud Functions işlevine declient_secrets.json
dosyasını dahil edersiniz. dağıtım.Tamam'ı tıklayın.
Pub/Sub konusunu oluşturma
Pub/Sub konusu, Chat'teki etkinliklere abone olmak için Google Workspace Events API'si ve Chat uygulamasına gerçek zamanlı olarak bildirim gerekir.
Pub/Sub konusunun nasıl oluşturulacağı aşağıda açıklanmıştır:
Google Cloud Console
Google Cloud konsolunda şu adrese gidin: Menü > Pub/Sub.
Konu Oluştur'u tıklayın.
Konu Kimliği alanına
events-api
yazın.Varsayılan abonelik ekle'nin seçimini kaldırın.
Şifreleme bölümünde, Google tarafından yönetilen şifreleme anahtarı'nı seçin.
Oluştur'u tıklayın. Pub/Sub konusu görüntülenir.
Bu Pub/Sub konusunun ve Google Workspace Events API'nin çalışması için Chat IAM kullanıcısının konusundan emin olun:
events-api panelinde İZİNLER altında Ana Hesap Ekle.
Ana hesap ekle'nin altında, Yeni ana hesaplar bölümünde
chat-api-push@system.gserviceaccount.com
.Rol atama bölümünde, Rol seçin bölümünde Pub/Sub'ı seçin. > Pub/Sub Yayıncısı.
Kaydet'i tıklayın.
gcloud CLI
events-api
konu kimliğine sahip bir Pub/Sub konusu oluşturun:gcloud pubsub topics create events-api
Chat IAM kullanıcısına yayın gönderme izni verin konusundan emin olun:
gcloud pubsub topics add-iam-policy-binding events-api \ --member='serviceAccount:chat-api-push@system.gserviceaccount.com' \ --role='roles/pubsub.publisher'
Firestore veritabanını oluşturma
Devam etmek ve verileri almak için Firestore veritabanı
Chat alanlarındaki veriler (ör. mesajlar) Verileri tanımlamamış olabilirsiniz
modelidir (model/message.js
ve örnek kodda dolaylı olarak ayarlanır)
services/firestore-service.js
dosya.
AI bilgi asistanı Chat uygulaması veritabanı, Google Cloud Platform'a Firestore veri modeli.
doküman organize edilen koleksiyonlar. Daha fazla bilgi edinmek için bkz.Aşağıdaki şemada, yapay zeka bilgi asistanına genel bir bakış sunulmaktadır Chat uygulamasının veri modeli:
Kök iki koleksiyon içerir:
spaces
; burada her doküman Google Chat'in eklendiğine dikkat edin. Her mesaj temsil edilirmessages
alt koleksiyonundaki bir dokümanla temsil edilir.users
; burada her doküman Chat uygulamasını bir Chat alanına dönüştürün.
Koleksiyon, doküman ve alan tanımlarını görüntüleme
spaces
Yapay zeka bilgi asistanı Chat uygulamasının bulunduğu bir Chat alanı.
Alanlar | |
---|---|
Document ID | String Belirli bir alanın benzersiz kimliği. Alanın Chat API'deki kaynak adının bir parçasıdır. |
messages | Subcollection of Documents ( Chat alanında gönderilen mesajlar Firebase'deki message öğesinin Document ID ile karşılık gelir. |
spaceName | String Chat API'deki alanın benzersiz adı. Alanın Chat API'deki kaynak adına karşılık gelir. |
messages
Chat alanında gönderilen mesajlar.
Alanlar | |
---|---|
Document ID | String Belirli bir mesajın benzersiz kimliği. |
name | String Chat API'deki bir mesajın benzersiz adı. Chat API'deki mesajın kaynak adına karşılık gelir. |
text | String İletinin metin gövdesi. |
time | String (Timestamp format) Mesajın oluşturulduğu saat. |
users
Yapay zeka bilgi asistanı Chat uygulamasını bir Chat alanına ekleyen kullanıcılar.
Alanlar | |
---|---|
Document ID | String Belirli bir kullanıcının benzersiz kimliği. |
accessToken | String Google Workspace API'lerini çağırmak için kullanılan, OAuth 2.0 kullanıcı yetkilendirmesi sırasında verilen erişim jetonu. |
refreshToken | String OAuth 2.0 kullanıcı yetkilendirmesi sırasında verilen yenileme jetonu. |
Firestore veritabanını aşağıdaki gibi oluşturabilirsiniz:
Google Cloud Console
Google Cloud konsolunda şu adrese gidin: Menü > Firestore'u tıklayın.
Create database'i (Veritabanı oluştur) tıklayın.
Firestore modunuzu seçin bölümünde Yerel mod'u tıklayın.
Devam'ı tıklayın.
Veritabanını yapılandırın:
Veritabanınızı adlandırın bölümünde Veritabanı Kimliği'ni
(default)
olarak bırakın.Konum türü'nün altında Bölge'yi seçin.
Bölge bölümünde, veritabanınız için şunun gibi bir bölge belirtin:
us-central1
. En iyi performans için aynı veya yakın bir konum seçin konumunu Chat uygulamasının Cloud Functions işlevi olarak görür.
Create database'i (Veritabanı oluştur) tıklayın.
gcloud CLI
Yerel modda bir Firestore veritabanı oluşturun:
gcloud firestore databases create \ --location=LOCATION \ --type=firestore-native
LOCATION öğesini bir Firestore adıyla değiştirin bölgesi, örneğin
us-central1
olarak. En iyi performans için aynı veya yakın bir konum seçin konumunu Chat uygulamasının Cloud Functions işlevi olarak görür.
Chat uygulamasını oluşturma ve dağıtma
Google Cloud projeniz oluşturulduğuna ve yapılandırıldığına göre artık derleme ve Chat uygulamasını dağıtabilirsiniz. Bu bölümde takip etmek için:
- İki Cloud Functions işlevi oluşturup dağıtın. Sohbete yanıt vermek için bir tane ve Pub/Sub etkinliklerine yanıt vermek için kullanılır.
- Google Chat API'de Chat uygulaması oluşturma ve dağıtma yapılandırma sayfası.
Cloud Functions oluşturma ve dağıtma
Bu bölümde, şu adlara sahip iki Cloud Functions işlevi oluşturup dağıtacaksınız:
app
: Chat uygulamasının Chat'ten alınan etkinliklere HTTP olarak yanıt veren kod kabul edersiniz.eventsApp
: Chat alanı alır ve işler etkinlikleri (ör. Pub/Sub'dan gelen mesajlar)
Bu Cloud Functions işlevleri birlikte yapay zeka bilgi asistanını oluşturur Chat uygulamasının uygulama mantığı.
İsteğe bağlı olarak, Cloud Functions'ı oluşturmadan önce bir dakikanızı ayırıp GitHub'da barındırılan örnek kodla ilgili bilgi edinin.
app
oluşturup dağıtın
Google Cloud Console
GitHub'daki kodu zip dosyası olarak indirin.
İndirilen zip dosyasını çıkarın.
Çıkarılan klasör, Google Workspace örneklerinin tamamını içerir depodur.
Çıkarılan klasörde
google-chat-samples-main/node/ai-knowledge-assistant
dizini.google-chat-samples/node/ai-knowledge-assistant
dizininde, indirdiğinizclient_secrets.json
dosyasını OAuth istemci kimliği kimlik bilgileri oluşturuldu kimlik doğrulama ve yetkilendirme.ai-knowledge-assistant
klasörünün içeriğini bir zip dosyası olarak sıkıştırın dosyası olarak kaydedebilirsiniz.ZIP dosyasının kök dizini şunu içermelidir: dosyalar ve klasörler:
.gcloudignore
.gitignore
README.md
deploy.sh
env.js
events_index.js
http_index.js
index.js
client_secrets.json
package-lock.json
package.json
controllers/
model/
services/
test/
Google Cloud konsolunda şu adrese gidin: Menü > Cloud Functions'a dokunun.
Google Cloud projesinin Chat uygulaması seçildi.
İşlev Oluştur'u tıklayın.
İşlev oluştur sayfasında işlevinizi ayarlayın:
- Ortam bölümünde 2. nesil'i seçin.
- İşlev adı alanına
app
yazın. - Bölge'den
us-central1
gibi bir bölge seçin. Bu bölge aşağıdaki durumlarda yetkili yönlendirme URI'sinde ayarladığınız bölgeyle eşleşmelidir: siz OAuth istemci kimliği kimlik bilgileri oluşturdu kimlik doğrulama ve yetkilendirme. - Tetikleyici türü bölümünde HTTPS'yi seçin.
- Kimlik Doğrulama altında Kimliği doğrulanmayan çağrılara izin ver.
- İleri'yi tıklayın.
Çalışma zamanı'nda Node.js 20'yi seçin.
Giriş noktası bölümünde varsayılan metni silin ve metin girin
app
.Kaynak kodu bölümünde Posta yüklemesi'ni seçin.
Hedef pakette, oluşturma veya bir paket seçin:
- Göz at'ı tıklayın.
- Paket seçin.
- Seç'i tıklayın.
Google Cloud, zip dosyasını yükleyip bileşen dosyalarını çıkarır bu pakette yer alıyor. Ardından Cloud Functions, bileşen dosyalarını Cloud Functions işlevi görür.
Zip dosyası olarak, GitHub'dan indirdiğiniz zip dosyasını yükleyin. çıkartıldı ve yeniden sıkıştırıldı:
- Göz at'ı tıklayın.
- ZIP dosyasına gidin ve seçin.
- Aç'ı tıklayın.
Dağıt'ı tıklayın.
Cloud Functions ayrıntısı sayfası açılır ve işleviniz görüntülenir. Biri derleme, diğeri hizmet için olmak üzere iki ilerleme göstergesi. Her iki ilerleme göstergesi de kaybolduğunda ve bir onay işaretiyle değiştirildiğinde işareti koyun, fonksiyonunuz dağıtılmış ve hazır.
Sabit değerleri ayarlamak için örnek kodu düzenleyin:
- Cloud Functions işlevi ayrıntıları sayfasında Düzenle'yi tıklayın.
- İleri'yi tıklayın.
- Kaynak kodu bölümünde Satır içi düzenleyici'yi seçin.
- Satır içi düzenleyicide,
env.js
dosyasını açın ve düzenleyin:- project değerini Cloud projesi kimliği.
- location değerini Cloud Functions işlevinin
region [bölge],
us-central1
gibi.
Dağıt'ı tıklayın.
gcloud CLI
GitHub'dan kodu klonlayın:
git clone https://github.com/googleworkspace/google-chat-samples.git
Bu yapay zeka bilgisinin kodunu barındıran dizine geçin asistan Chat uygulaması:
cd google-chat-samples/node/ai-knowledge-assistant
google-chat-samples/node/ai-knowledge-assistant
dizininde, indirdiğinizclient_secrets.json
dosyasını OAuth istemci kimliği kimlik bilgileri oluşturuldu kimlik doğrulama ve yetkilendirme.Ortam değişkenlerini ayarlamak için
env.js
dosyasını düzenleyin:- Cloud projenize project değerini ayarlayın Kimlik.
- location değerini Cloud Functions işlevinin
region (ör.
us-central1
.
Cloud Functions işlevini Google Cloud'a dağıtın:
gcloud functions deploy app \ --gen2 \ --region=REGION \ --runtime=nodejs20 \ --source=. \ --entry-point=app \ --trigger-http \ --allow-unauthenticated
REGION değerini, Cloud Functions işlevinin region [bölge]
env.js
dosyasında ayarlananla (örneğin,us-central1
) eşleştirmek için kullanılır.
eventsApp
oluşturup dağıtın
Google Cloud Console
Google Cloud konsolunda şu adrese gidin: Menü > Cloud Functions'a dokunun.
Google Cloud projesinin Chat uygulaması seçildi.
İşlev Oluştur'u tıklayın.
İşlev oluştur sayfasında işlevinizi ayarlayın:
- Ortam bölümünde 2. nesil'i seçin.
- İşlev adı alanına
eventsApp
yazın. - Bölge'den
us-central1
gibi bir bölge seçin. Bu bölge aşağıdaki durumlarda yetkili yönlendirme URI'sinde ayarladığınız bölgeyle eşleşmelidir: siz OAuth istemci kimliği kimlik bilgileri oluşturdu kimlik doğrulama ve yetkilendirme. - Tetikleyici türü bölümünde Cloud Pub/Sub'ı seçin.
- Cloud Pub/Sub konusu'nda, oluşturduğunuz Pub/Sub konusunun adını
şu biçimdedir:
projects/PROJECT/topics/events-api
burada: PROJECT, Cloud projenizin kimliğidir. Service account(s) might not have enough permissions to deploy the function with the selected trigger.
ile başlayan bir mesaj görürseniz Tümünü Ver'i tıklayın.- İleri'yi tıklayın.
Çalışma zamanı'nda Node.js 20'yi seçin.
Giriş noktası bölümünde varsayılan metni silin ve metin girin
eventsApp
.Kaynak kodu bölümünde, Cloud Storage'dan posta kodu'nu seçin.
Cloud Storage konumunda, Göz at'ı tıklayın.
ZIP dosyasını oluşturduğunuzda yüklediğiniz paketi seçin
app
Cloud Functions işlevi.Yüklediğiniz zip dosyasını tıklayın.
Seç'i tıklayın.
Dağıt'ı tıklayın.
Cloud Functions ayrıntısı sayfası açılır ve işleviniz görüntülenir. Biri derleme, biri hizmet, biri hizmet için olmak üzere diğeri tetikleyici için. Üç ilerleme göstergesi de kaybolduğunda ve yerine bir onay işareti eklenirse işleviniz dağıtılıp hazır hale gelir.
Sabit değerleri ayarlamak için örnek kodu düzenleyin:
- Cloud Functions işlevi ayrıntıları sayfasında Düzenle'yi tıklayın.
- İleri'yi tıklayın.
- Kaynak kodu bölümünde Satır içi düzenleyici'yi seçin.
- Satır içi düzenleyicide,
env.js
dosyasını açın ve düzenleyin:- project değerini Cloud projesi kimliği.
- location değerini Cloud Functions işlevinin
region [bölge],
us-central1
gibi.
Dağıt'ı tıklayın.
gcloud CLI
gcloud KSA'da değilseniz dizine geçin. bu yapay zeka bilgisinin kodunu barındıran Asistan Chat uygulamasını kullanarak GitHub'dan klonlanan:
cd google-chat-samples/node/ai-knowledge-assistant
google-chat-samples/node/ai-knowledge-assistant
dizininde, indirdiğinizclient_secrets.json
dosyasını OAuth istemci kimliği kimlik bilgileri oluşturuldu kimlik doğrulama ve yetkilendirme.Ortam değişkenlerini ayarlamak için
env.js
dosyasını düzenleyin:- Cloud projenize project değerini ayarlayın Kimlik.
- location değerini Cloud Functions işlevinin
region (ör.
us-central1
.
Cloud Functions işlevini Google Cloud'a dağıtın:
gcloud functions deploy eventsApp \ --gen2 \ --region=REGION \ --runtime=nodejs20 \ --source=. \ --entry-point=eventsApp \ --trigger-topic=events-api
REGION değerini, Cloud Functions işlevinin region [bölge]
env.js
dosyasında ayarlananla (örneğin,us-central1
) eşleştirmek için kullanılır.
app
Cloud Functions işlevinin tetikleyici URL'sini kopyalayın
app
Cloud Functions işlevinin tetikleyici URL'sini sonraki bölüme yapıştıracaksınız
CANNOT TRANSLATE
Google Cloud Console'da Chat uygulamasını yapılandırın.
Google Cloud Console
Google Cloud konsolunda şu adrese gidin: Menü > Cloud Functions'a dokunun.
Cloud Functions listesinin Ad sütununda
app
Tetikleyici'yi tıklayın.
URL'yi kopyalayın.
gcloud CLI
app
Cloud Functions işlevini açıklayın:gcloud functions describe app
url
özelliğini kopyalayın.
Google Cloud Console'da Chat uygulamasını yapılandırma
Bu bölümde, Chat uygulamanızla ilgili bilgilerin bulunduğu Google Cloud Console, Chat uygulamasının adı da dahil ve Chat uygulamasının Cloud tetikleyicisinin tetikleyici URL'si Chat etkileşim etkinliklerini gönderdiği işlev.
Google Cloud konsolunda Menü'yü tıklayın. > Diğer ürünler > Google Workspace > Ürün Kitaplığı > Google Chat API > Yönet > Yapılandırma.
Uygulama adı alanına
AI knowledge assistant
yazın.Avatar URL'si alanına
https://fonts.gstatic.com/s/i/short-term/release/googlesymbols/live_help/default/24px.svg
yazın.Açıklama alanına
Answers questions with AI
yazın.Etkileşimli özellikleri etkinleştir düğmesini tıklayarak açık konuma getirin.
İşlevler bölümünde Alanlara ve grup görüşmelerine katıl'ı seçin.
Bağlantı ayarları bölümünde Uygulama URL'si'ni seçin.
Uygulama URL'si bölümüne
app
Cloud Functions işlevindeki tetikleyici URL'sini yapıştırın. biçimihttps://
REGION-
PROJECT_ID.cloudfunctions.net/app
burada REGION, Cloud Functions işlevinin bulunduğu bölgedir (us-central1
gibi) PROJECT_ID ise dokümanın Proje Kimliği'dir Oluşturduğunuz Cloud projesi.Görünürlük altında Bu Chat uygulamasını kuruluşunuzdaki belirli kişi ve grupların kullanımına sunun Workspace alanı'nı tıklayın ve e-posta adresinizi girin.
Dilerseniz Günlükler bölümünde Hataları günlüğe kaydet'i seçebilirsiniz.
Kaydet'i tıklayın. Yapılandırma tarafından kaydedilmiş bir mesaj görünür. Bu mesaj, Chat uygulaması hazır olduğunu göreceksiniz.
Chat uygulamasını test etme
Yapay zeka bilgi asistanı Chat uygulamasını Yapay zekanın sorduğu sorular sorarak mesajlar içeren Chat alanı bilgi asistanı Chat uygulaması yanıt verebilir.
Yapay zeka bilgi asistanını test etmenin birkaç yolu Chat uygulaması:
- Yapay zeka bilgi asistanı Chat uygulamasını sohbet edebilir ve işletmenizle alakalı sorular sorabilirsiniz. bu alanı kapsıyor.
- Bir Chat alanı oluşturun ve şu amaçlarla kullanmak için birkaç mesaj yayınlayın:
bir veri kaynağıdır. Mesajların kaynağı:
Gemini'da şöyle bir istem yer alıyor:
Answer 20 common onboarding questions employees ask their teams.
Veya bağlantısını kullanarak Chat ile geliştirmeye genel bakış rehberi ve bununla ilgili sorular sorabilirsiniz.
Bu eğitim için bir Chat alanı oluşturup birkaç metin yapıştıralım. paragraflarını Chat ile geliştirmeye genel bakış rehberini inceleyin.
Google Chat'i açın.
Chat alanı oluşturma:
> Alan oluştur'a dokunun.
Yeni Sohbet'i tıklayınAlan adı bölümüne
Testing AI knowledge assistant app
yazın.Bu alan ne için? bölümünde Ortak çalışma'yı seçin.
Erişim ayarları bölümünde, alana kimlerin erişebileceğini seçin.
Oluştur'u tıklayın.
Veri kaynağı olarak kullanılacak iletileri ekleyin:
Bir web tarayıcısında Chat ile geliştirmeye genel bakış rehberini inceleyin.
Rehberin içeriğini kopyalayıp Chat alanına yapıştırın anlatacağım.
Yapay zeka bilgi asistanı Chat uygulamasını ekleyin:
Mesaj yazma çubuğuna
@AI knowledge assistant
yazın ve gösterilen öneri menüsünde yapay zeka bilgi asistanını seçin Chat uygulamasına giripenter
tuşuna basın.Yapay zeka bilgi asistanını eklemek isteyip istemediğinizi soran bir mesaj görünür Chat uygulamasını alana ekleyin. Alana ekle'yi tıklayın.
Chat uygulamasını ilk kez ekliyorsanız alan için kimlik doğrulama ve yetkilendirmeyi yapılandırmanız gerekir. Chat uygulaması:
- Configure (Yapılandır) seçeneğini tıklayın.
- Yeni bir tarayıcı penceresi veya sekmesi açılır ve sizden bir Google Hesabı. Test için kullanacağınız hesabı seçin.
- Yapay zeka bilgi asistanının izinlerini inceleyin Chat uygulaması istekleri. İzin vermek için İzin ver.
You may close this page now.
yazan bir mesaj görünüyor. Tarayıcı penceresini veya sekmesini kapatın ve Chat alanı
Bir soru sorun:
Mesaj yazma çubuğuna
What are Google Chat apps?
.Yapay zeka bilgi asistanı Chat uygulaması yanıtları.
Yanıt doğru veya yeterli değilse yapay zekanın görüşme geçmişini iyileştirme, tıklama
Yardım alın. Yapay zeka bilgi asistanı Chat uygulamasında bahsedilenler ve soruyu yanıtlamalarını ister. Bir dahaki sefere, Yapay zeka bilgi asistanı Chat uygulamasının bilebileceği bilgiler yanıt!
Dikkat edilmesi gereken noktalar, alternatif mimari seçimleri ve sonraki adımlar
Bu bölümde, yapay zeka bilgi asistanının diğer yolları incelenmektedir. Chat uygulaması oluşturulabilir.
Firestore, Cloud Storage veya Chat API'de Liste Mesajlarını çağırma
Bu eğitimde, aşağıdakiler gibi Chat alanı verilerinin depolanması önerilir:
daha iyi performans gösterdiği için Firestore veritabanına
Message
üzerinde list
yönteminin çağrılması
Chat API ile bir kaynağa
Chat uygulaması bir soruyu yanıtlar. Dahası,
list messages
tekrar tekrar şuna neden olabilir:
Chat uygulaması, API kota sınırlarına ulaşacak.
Ancak bir Chat alanının görüşme geçmişi uzun sürerse Firestore kullanmak maliyetli olabilir.
Bulut Depolama 'nı inceleyin. Firestore'a alternatiftir. Her alanda yapay zeka bilgi asistanı Chat uygulamasının etkin olduğu durumlarda kendi nesnesi olur ve her nesne alandaki tüm mesajları içeren bir metin dosyasıdır. Avantajı metin dosyasının tüm içeriğinin Vertex veri akışındaki Ancak dezavantajı ise Gemini'ın yapay zekayı kullanarak Cloud'da bir nesneye ekleme yapamayacağınız için görüşme geçmişini güncelleme Depolama alanı, yalnızca değiştirin. Bu yaklaşım, düzenli olarak güncelleyebilir, ancak toplu güncelleme yaparsanız bu iyi bir seçim olur düzenli aralıklarla (örneğin, haftada bir kez) mesaj geçmişini.
Sorun giderme
Bir Google Chat uygulaması veya card bir hata döndürürse Chat arayüzünde "Bir sorun oluştu" mesajı gösteriliyor. veya "İsteğiniz işlenemiyor." Chat kullanıcı arayüzü herhangi bir hata mesajı görüntülenmiyor ancak Chat uygulaması veya kart beklenmeyen bir sonuç veriyorsa; Örneğin karttaki bir mesajda görünür.
Chat kullanıcı arayüzünde hata mesajı görüntülenmese de Hataları düzeltmenize yardımcı olmak için açıklayıcı hata mesajları ve günlük verileri sunulur Chat uygulamaları için hata günlük kaydı etkinleştirildiğinde. Görüntüleme konusunda yardım için ve hataları düzeltme ile ilgili daha fazla bilgi edinmek için Google Chat hatalarını giderme ve düzeltme
Temizleme
Aşağıdaki işlem için Google Cloud hesabınızdan ücret alınmasını önlemek amacıyla: kaynaklardan yararlanabilmeniz için Cloud projesi.
-
Google Cloud konsolunda Kaynakları yönetin sayfasına gidin. Sonraki slayta geçin
Menü > IAM ve Yönetici
> Kaynakları Yönetin.
Resource Manager'a git 'nı inceleyin.
- Proje listesinden silmek istediğiniz projeyi seçin ve ardından Sil: .
- İletişim kutusuna proje kimliğini yazın ve silmek için Kapat'ı tıklayın gösterir.
İlgili konular
- Google Chat, Vertex AI ve Firestore ile projeleri yönetme
- Google Chat, Vertex AI ve Apps Komut Dosyası ile olaylara yanıt verme