Gemini AI Chat uygulamasıyla Chat görüşmelerine dayalı soruları yanıtlama

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ı:

  • Yapay zeka bilgi asistanı uygulamasından bahsedildiğinde bu uygulama bir alana eklenir.
    Şekil 1. Charlie, yapay zeka bilgi asistanı Chat uygulamasını bir Chat alanına ekliyor.
  • Derya bir soru sorar..
    Şekil 2. Derya, şirketin topluluk önünde konuşma eğitimi sunup sunmadığını soruyor.
  • Soruyu yapay zeka bilgi asistanı Chat uygulaması yanıtlar..
    Ş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

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ının mimari şeması

Yapay zeka bilgi asistanı Chat uygulaması şu şekilde çalışır:

  • Bir kullanıcı, yapay zeka bilgi asistanı Chat uygulamasını ekler ekleme:

    1. Chat uygulaması, kullanıcı tarafından sağlanan e-posta adresi kimlik doğrulama ve yetkilendirme.

    2. 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.

    3. 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.

    4. Chat uygulaması, ortaya çıkar.

  • Chat alanındaki bir kullanıcı mesaj yayınladığında:

    1. Chat uygulaması, mesajı gerçek zamanlı olarak alır konusundan bahsetmek istiyorum.

    2. 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

    3. Chat uygulaması, mesajı Vertex AI'a gönderir Gemini ile:

      1. İ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.

      2. 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:

    1. Chat uygulaması, abonelik için subscriptions.patch yöntemini çağırın Google Workspace Events API.
  • Chat uygulaması Chat'ten kaldırılır boşluk:

    1. Chat uygulaması, aboneliği şu şekilde siler: subscriptions.delete yöntemini çağırarak Google Workspace Events API.

    2. 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.
    ziyaret edin. Cloud Functions, derleme ve teslim işlemleri için aşağıdaki Google Cloud ürünlerini kullanır: ana bilgisayar bilgi işlem kaynakları:
    • 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

  1. Google Cloud konsolunda Menü'ye gidin > IAM ve Yönetici > Proje oluşturun'u tıklayın.

    Proje Oluştur'a gidin

  2. 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.

  3. 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.
  4. 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
    Oluşturmak istediğiniz projenin kimliğini ayarlayarak PROJECT_ID değerini değiştirin.

Cloud projesi için faturalandırmayı etkinleştirin

Google Cloud Console

  1. Google Cloud konsolunda Faturalandırma'ya gidin. Sonraki slayta geçin Menü > Faturalandırma > Projelerim'i tıklayın.

    Projelerim İçin Faturalandırma'ya gidin

  2. Bir kuruluş seçin bölümünde, ilişkili kuruluşu seçin Google Cloud projenize ekleyin.
  3. 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.
  4. Hesap belirle'yi tıklayın.

gcloud CLI

  1. Kullanılabilir faturalandırma hesaplarını listelemek için şu komutu çalıştırın:
    gcloud billing accounts list
    .
  2. 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

  1. 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 etkinleştirme

  2. API'leri doğru şekilde etkinleştirdiğinizden emin olun. Cloud projesine, ardından İleri'yi tıklayın.

  3. Doğru API'leri etkinleştirdiğinizden emin olun ve ardından Etkinleştir'i tıklayın.

gcloud CLI

  1. 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.

  2. 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.

  1. Google Cloud konsolunda şu adrese gidin: Menü > API'ler ve Hizmetler > OAuth izin ekranı'nı tıklayın.

    OAuth izin ekranına gidin.

  2. Kullanıcı türü bölümünde Dahili'yi seçin ve ardından Oluştur'u tıklayın.

  3. Uygulama adı alanına AI knowledge assistant yazın.

  4. Kullanıcı desteği e-postası bölümünde e-posta adresinizi veya Google grubu.

  5. Geliştirici iletişim bilgileri bölümünün altına e-posta adresinizi girin.

  6. Kaydet ve Devam Et'i tıklayın.

  7. 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.

  8. Kapsamları manuel olarak ekle bölümüne aşağıdaki kapsamı yapıştırın:

    • https://www.googleapis.com/auth/chat.messages
  9. Add to Table'ı (Tabloya Ekle) tıklayın.

  10. Güncelle'yi tıklayın.

  11. Kaydet ve Devam Et'i tıklayın.

  12. Uygulama kaydı özetini inceleyin ve ardından Kontrol Paneline Dön'ü tıklayın.

OAuth istemci kimliği kimlik bilgileri oluşturma

  1. Google Cloud konsolunda şu adrese gidin: Menü > API'ler ve Hizmetler > Kimlik bilgileri.

    Kimlik bilgilerine git

  2. Kimlik Bilgisi Oluştur'u tıklayın. > OAuth istemci kimliği.

  3. Uygulama türü'nü tıklayın. > Web uygulaması.

  4. Ad alanına kimlik bilgisi için bir ad yazın. Bu ad yalnızca Google Cloud Console'da görebilirsiniz.

  5. Yetkili yönlendirme URI'leri altında URI ekle'yi tıklayın.

  6. 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.
  7. Oluştur'u tıklayın.

  8. OAuth istemcisi oluşturuldu penceresinde JSON'u indir'i tıklayın.

  9. İndirilen dosyayı client_secrets.json olarak kaydedin. Daha sonra, oluşturduğunuz her iki Cloud Functions işlevine de client_secrets.json dosyasını dahil edersiniz. dağıtım.

  10. 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

  1. Google Cloud konsolunda şu adrese gidin: Menü > Pub/Sub.

    Pub/Sub'a git

  2. Konu Oluştur'u tıklayın.

  3. Konu Kimliği alanına events-api yazın.

  4. Varsayılan abonelik ekle'nin seçimini kaldırın.

  5. Şifreleme bölümünde, Google tarafından yönetilen şifreleme anahtarı'nı seçin.

  6. Oluştur'u tıklayın. Pub/Sub konusu görüntülenir.

  7. Bu Pub/Sub konusunun ve Google Workspace Events API'nin çalışması için Chat IAM kullanıcısının konusundan emin olun:

    1. events-api panelinde İZİNLER altında Ana Hesap Ekle.

    2. Ana hesap ekle'nin altında, Yeni ana hesaplar bölümünde chat-api-push@system.gserviceaccount.com.

    3. Rol atama bölümünde, Rol seçin bölümünde Pub/Sub'ı seçin. > Pub/Sub Yayıncısı.

    4. Kaydet'i tıklayın.

gcloud CLI

  1. events-api konu kimliğine sahip bir Pub/Sub konusu oluşturun:

    gcloud pubsub topics create events-api
    
  2. 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

Firestore veritabanı kalır ve 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 doküman organize edilen koleksiyonlar. Daha fazla bilgi edinmek için bkz. Firestore veri modeli.

Aşağıdaki şemada, yapay zeka bilgi asistanına genel bir bakış sunulmaktadır Chat uygulamasının veri modeli:

Firestore veritabanının veri modeli.

Kök iki koleksiyon içerir:

  1. spaces; burada her doküman Google Chat'in eklendiğine dikkat edin. Her mesaj temsil edilir messages alt koleksiyonundaki bir doküman tarafından.

  2. 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 IDString
Belirli bir alanın benzersiz kimliği. Alanın Chat API'deki kaynak adının bir parçasıdır.
messagesSubcollection of Documents (messages)
Chat alanında gönderilen mesajlar Firebase'deki message öğesinin Document ID ile karşılık gelir.
spaceNameString
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 IDString
Belirli bir mesajın benzersiz kimliği.
nameString
Chat API'deki bir mesajın benzersiz adı. Chat API'deki mesajın kaynak adına karşılık gelir.
textString
İletinin metin gövdesi.
timeString (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 IDString
Belirli bir kullanıcının benzersiz kimliği.
accessTokenString
Google Workspace API'lerini çağırmak için kullanılan, OAuth 2.0 kullanıcı yetkilendirmesi sırasında verilen erişim jetonu.
refreshTokenString
OAuth 2.0 kullanıcı yetkilendirmesi sırasında verilen yenileme jetonu.

Firestore veritabanını aşağıdaki gibi oluşturabilirsiniz:

Google Cloud Console

  1. Google Cloud konsolunda şu adrese gidin: Menü > Firestore'u tıklayın.

    Firestore'a git

  2. Create database'i (Veritabanı oluştur) tıklayın.

  3. Firestore modunuzu seçin bölümünde Yerel mod'u tıklayın.

  4. Devam'ı tıklayın.

  5. Veritabanını yapılandırın:

    1. Veritabanınızı adlandırın bölümünde Veritabanı Kimliği'ni (default) olarak bırakın.

    2. Konum türü'nün altında Bölge'yi seçin.

    3. 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.

  6. 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:

  1. İ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.
  2. 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.

GitHub'da göster

app oluşturup dağıtın

Google Cloud Console

  1. GitHub'daki kodu zip dosyası olarak indirin.

    Zip dosyasını indirme

  2. İndirilen zip dosyasını çıkarın.

    Çıkarılan klasör, Google Workspace örneklerinin tamamını içerir depodur.

  3. Çıkarılan klasörde google-chat-samples-main/node/ai-knowledge-assistant dizini.

  4. google-chat-samples/node/ai-knowledge-assistant dizininde, indirdiğiniz client_secrets.json dosyasını OAuth istemci kimliği kimlik bilgileri oluşturuldu kimlik doğrulama ve yetkilendirme.

  5. 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/
  6. Google Cloud konsolunda şu adrese gidin: Menü > Cloud Functions'a dokunun.

    Cloud Functions'a git

    Google Cloud projesinin Chat uygulaması seçildi.

  7. İşlev Oluştur'u tıklayın.

  8. İşlev oluştur sayfasında işlevinizi ayarlayın:

    1. Ortam bölümünde 2. nesil'i seçin.
    2. İşlev adı alanına app yazın.
    3. 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.
    4. Tetikleyici türü bölümünde HTTPS'yi seçin.
    5. Kimlik Doğrulama altında Kimliği doğrulanmayan çağrılara izin ver.
    6. İleri'yi tıklayın.
  9. Çalışma zamanı'nda Node.js 20'yi seçin.

  10. Giriş noktası bölümünde varsayılan metni silin ve metin girin app.

  11. Kaynak kodu bölümünde Posta yüklemesi'ni seçin.

  12. Hedef pakette, oluşturma veya bir paket seçin:

    1. Göz at'ı tıklayın.
    2. Paket seçin.
    3. 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.

  13. Zip dosyası olarak, GitHub'dan indirdiğiniz zip dosyasını yükleyin. çıkartıldı ve yeniden sıkıştırıldı:

    1. Göz at'ı tıklayın.
    2. ZIP dosyasına gidin ve seçin.
    3. 'ı tıklayın.
  14. 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.

  15. Sabit değerleri ayarlamak için örnek kodu düzenleyin:

    1. Cloud Functions işlevi ayrıntıları sayfasında Düzenle'yi tıklayın.
    2. İleri'yi tıklayın.
    3. Kaynak kodu bölümünde Satır içi düzenleyici'yi seçin.
    4. Satır içi düzenleyicide, env.js dosyasını açın ve düzenleyin:
      1. project değerini Cloud projesi kimliği.
      2. location değerini Cloud Functions işlevinin region [bölge], us-central1 gibi.
  16. Dağıt'ı tıklayın.

gcloud CLI

  1. GitHub'dan kodu klonlayın:

    git clone https://github.com/googleworkspace/google-chat-samples.git
    
  2. Bu yapay zeka bilgisinin kodunu barındıran dizine geçin asistan Chat uygulaması:

    cd google-chat-samples/node/ai-knowledge-assistant
    
  3. google-chat-samples/node/ai-knowledge-assistant dizininde, indirdiğiniz client_secrets.json dosyasını OAuth istemci kimliği kimlik bilgileri oluşturuldu kimlik doğrulama ve yetkilendirme.

  4. Ortam değişkenlerini ayarlamak için env.js dosyasını düzenleyin:

    1. Cloud projenize project değerini ayarlayın Kimlik.
    2. location değerini Cloud Functions işlevinin region (ör. us-central1.
  5. 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

  1. Google Cloud konsolunda şu adrese gidin: Menü > Cloud Functions'a dokunun.

    Cloud Functions'a git

    Google Cloud projesinin Chat uygulaması seçildi.

  2. İşlev Oluştur'u tıklayın.

  3. İşlev oluştur sayfasında işlevinizi ayarlayın:

    1. Ortam bölümünde 2. nesil'i seçin.
    2. İşlev adı alanına eventsApp yazın.
    3. 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.
    4. Tetikleyici türü bölümünde Cloud Pub/Sub'ı seçin.
    5. 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.
    6. 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.
    7. İleri'yi tıklayın.
  4. Çalışma zamanı'nda Node.js 20'yi seçin.

  5. Giriş noktası bölümünde varsayılan metni silin ve metin girin eventsApp.

  6. Kaynak kodu bölümünde, Cloud Storage'dan posta kodu'nu seçin.

  7. Cloud Storage konumunda, Göz at'ı tıklayın.

  8. ZIP dosyasını oluşturduğunuzda yüklediğiniz paketi seçin app Cloud Functions işlevi.

  9. Yüklediğiniz zip dosyasını tıklayın.

  10. Seç'i tıklayın.

  11. 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 yerine bir onay işareti koyduğunuzda işleviniz dağıtılmış ve hazır olur.

  12. Sabit değerleri ayarlamak için örnek kodu düzenleyin:

    1. Cloud Functions işlevi ayrıntıları sayfasında Düzenle'yi tıklayın.
    2. İleri'yi tıklayın.
    3. Kaynak kodu bölümünde Satır içi düzenleyici'yi seçin.
    4. Satır içi düzenleyicide, env.js dosyasını açın ve düzenleyin:
      1. project değerini Cloud projesi kimliği.
      2. location değerini Cloud Functions işlevinin region [bölge], us-central1 gibi.
  13. Dağıt'ı tıklayın.

gcloud CLI

  1. 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
    
  2. google-chat-samples/node/ai-knowledge-assistant dizininde, indirdiğiniz client_secrets.json dosyasını OAuth istemci kimliği kimlik bilgileri oluşturuldu kimlik doğrulama ve yetkilendirme.

  3. Ortam değişkenlerini ayarlamak için env.js dosyasını düzenleyin:

    1. Cloud projenize project değerini ayarlayın Kimlik.
    2. location değerini Cloud Functions işlevinin region (ör. us-central1.
  4. 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

  1. Google Cloud konsolunda şu adrese gidin: Menü > Cloud Functions'a dokunun.

    Cloud Functions'a git

  2. Cloud Functions listesinin Ad sütununda app

  3. Tetikleyici'yi tıklayın.

  4. URL'yi kopyalayın.

gcloud CLI

  1. app Cloud Functions işlevini açıklayın:

    gcloud functions describe app
    
  2. 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.

  1. 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.

    Chat API yapılandırmasına git

  2. Uygulama adı alanına AI knowledge assistant yazın.

  3. Avatar URL'si alanına https://fonts.gstatic.com/s/i/short-term/release/googlesymbols/live_help/default/24px.svg yazın.

  4. Açıklama alanına Answers questions with AI yazın.

  5. Etkileşimli özellikleri etkinleştir düğmesini tıklayarak açık konuma getirin.

  6. İşlevler bölümünde Alanlara ve grup görüşmelerine katıl'ı seçin.

  7. Bağlantı ayarları bölümünde Uygulama URL'si'ni seçin.

  8. Uygulama URL'si bölümüne app Cloud Functions işlevindeki tetikleyici URL'sini yapıştırın. biçimi https://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.

  9. 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.

  10. Dilerseniz Günlükler bölümünde Hataları günlüğe kaydet'i seçebilirsiniz.

  11. 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.

  1. Google Chat'i açın.

    Google Chat'e git

  2. Chat alanı oluşturma:

    1. Yeni Sohbet'i tıklayın > Alan oluştur'a dokunun.

    2. Alan adı bölümüne Testing AI knowledge assistant app yazın.

    3. Bu alan ne için? bölümünde Ortak çalışma'yı seçin.

    4. Erişim ayarları bölümünde, alana kimlerin erişebileceğini seçin.

    5. Oluştur'u tıklayın.

  3. Veri kaynağı olarak kullanılacak iletileri ekleyin:

    1. Bir web tarayıcısında Chat ile geliştirmeye genel bakış rehberini inceleyin.

    2. Rehberin içeriğini kopyalayıp Chat alanına yapıştırın anlatacağım.

  4. Yapay zeka bilgi asistanı Chat uygulamasını ekleyin:

    1. 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 girip enter tuşuna basın.

    2. 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.

    3. Chat uygulamasını ilk kez ekliyorsanız alan adına bağlı olarak, alan için kimlik doğrulama ve yetkilendirmeyi Chat uygulaması:

      1. Configure (Yapılandır) seçeneğini tıklayın.
      2. Yeni bir tarayıcı penceresi veya sekmesi açılır ve sizden bir Google Hesabı. Test için kullanacağınız hesabı seçin.
      3. Yapay zeka bilgi asistanının izinlerini inceleyin Chat uygulaması istekleri. İzin vermek için İzin ver.
      4. You may close this page now. yazan bir mesaj görünüyor. Tarayıcı penceresini veya sekmesini kapatın ve Chat alanı
  5. Bir soru sorun:

    1. Mesaj yazma çubuğuna What are Google Chat apps?.

    2. Yapay zeka bilgi asistanı Chat uygulaması yanıtları.

    3. 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ğitim, aşağıdaki gibi Chat alanı verilerinin depolanmasını önerir: 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.

  1. 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.

  2. Proje listesinden silmek istediğiniz projeyi seçin ve ardından Sil: .
  3. İletişim kutusuna proje kimliğini yazın ve silmek için Kapat'ı tıklayın gösterir.