Cloud Run'da PaLM API ile Chat Uygulaması

1. Giriş

Bu codelab'de, Google Cloud'da Cloud Run hizmeti olarak bir web uygulamasında AI tabanlı sohbet uygulamasının nasıl derlenip dağıtılacağı anlatılmaktadır. Bu sohbet uygulaması, kullanıcıların Chat Bison modelini ( text-chat) kullanarak PaLM'de sorgulama yapmalarına ve yanıt almalarına olanak tanır.

Neler oluşturacaksınız?

Şöyle

  • Uygulamanın çalıştırılacağı Google Cloud ortamı
  • Uygulama için bir Docker görüntüsü
  • Uygulamayı çalıştıran bir Cloud Run hizmeti

2. Şartlar

  • Chrome veya Firefox gibi bir tarayıcı
  • Faturalandırmanın etkin olduğu bir Google Cloud projesi

3. Başlamadan önce

  1. Google Cloud Console'daki proje seçici sayfasından bir Google Cloud projesi seçin veya oluşturun.
  2. Google Cloud projeniz için faturalandırmanın etkinleştirildiğinden emin olun. Bir projede faturalandırmanın etkin olup olmadığını nasıl kontrol edeceğinizi öğrenin.
  3. Buradaki talimatları uygulayarak Google Cloud konsolundan Cloud Shell'i etkinleştirin
  4. Projeniz ayarlanmadıysa ayarlamak için aşağıdaki komutu kullanın:
gcloud config set project <YOUR_PROJECT_ID>
  1. Cloud Shell'de aşağıdaki ortam değişkenlerini ayarlayın:
export GCP_PROJECT=<YOUR_PROJECT_ID>
export GCP_REGION=us-central1
  1. Cloud Shell Terminal'de aşağıdaki komutları çalıştırarak gerekli Google Cloud API'lerini etkinleştirin:
gcloud services enable cloudbuild.googleapis.com cloudfunctions.googleapis.com run.googleapis.com logging.googleapis.com storage-component.googleapis.com aiplatform.googleapis.com

4. Ortamınızı ayarlama

  1. Örnek kodu projenize kopyalamak için Cloud Shell'deki depoyu klonlayın:
git clone https://github.com/rominirani/genai-apptemplates-googlecloud
  1. Bu komut, depo içeriğini genai-templates-googlecloud klasörüne klonlar.
  2. Cloud Shell terminalinden aşağıdaki komutu çalıştırarak projenin önemsediğimiz klasörüne gidin:
cd genai-apptemplates-googlecloud/chat-flask-cloudrun
  1. Vertex AI'ı başlatmak için aşağıdaki ortam değişkenlerini ayarlayın:

GCP_PROJECT : Google Cloud Proje Kimliğiniz. Örneğin: projem.

GCP_REGION : Cloud Functions işlevinizi dağıtmak istediğiniz bölge. Örneğin: us-central1.

export GCP_PROJECT='YOUR_PROJECT'
export GCP_REGION='us-central1'

5. Docker görüntüsü oluşturma

Uygulama için Docker görüntüsü derleyip Artifact Registry'ye aktarmak için aşağıdaki adımları uygulayın:

  1. Artifact Registry deposu için bir ortam değişkeni belirleyin. Adlar yalnızca küçük harf, rakam ve kısa çizgi içerebilir. Bu adlar bir harfle başlamalı ve bir harf veya rakamla bitmelidir. Örneğin: my-chat-app-repo.
export AR_REPO='my-chat-app-repo'
  1. Hizmet adınız için bir ortam değişkeni belirleyin. Örneğin: chat-flask-app.
export SERVICE_NAME='chat-flask-app'
  1. Deponuzu Docker biçiminde oluşturun.
gcloud artifacts repositories create "$AR_REPO" --location="$GCP_REGION" --repository-format=Docker
  1. Docker kimlik doğrulamasını yapılandırın.
gcloud auth configure-docker "$GCP_REGION-docker.pkg.dev"
  1. Görüntüyü oluşturun.
gcloud builds submit --tag "$GCP_REGION-docker.pkg.dev/$GCP_PROJECT/$AR_REPO/$SERVICE_NAME"
  1. Resmin Artifact Registry'ye aktarılıp aktarılmadığını doğrulamak için Artifact Registry sayfasına gidin. Bu sayfada oluşturduğunuz depoyu arayın.

6. Uygulamayı dağıtın

  1. Uygulamayı Cloud Run'da hizmet olarak dağıtın.
gcloud run deploy "$SERVICE_NAME" \ 
--port=8080 \ 
--image="$GCP_REGION-docker.pkg.dev/$GCP_PROJECT/$AR_REPO/$SERVICE_NAME" \ 
--allow-unauthenticated \ 
--region=$GCP_REGION \ 
--platform=managed  \ 
--project=$GCP_PROJECT \ 
--set-env-vars=GCP_PROJECT=$GCP_PROJECT,GCP_REGION=$GCP_REGION

Bu adımın tamamlanması birkaç saniye sürebilir.

  1. Sohbet uygulamasını başlatmak için hizmet URL'sini tıklayın.

56c06b62e0ac95bf.png

Sohbet uygulaması, aşağıdaki ekran görüntüsünde gösterildiği gibi yeni bir sekmede açılır:

eebde9c35c171563.png

7. Temizleme

Bu yayında kullanılan kaynaklar için Google Cloud hesabınızın ücretlendirilmesini istemiyorsanız şu adımları uygulayın:

  1. Google Cloud konsolunda Kaynakları yönetin sayfasına gidin.
  2. Proje listesinden silmek istediğiniz projeyi seçin ve ardından Sil'i tıklayın.
  3. İletişim kutusuna proje kimliğini yazın ve projeyi silmek için Kapat'ı tıklayın.
  4. Projenizi kullanmaya devam etmek istiyorsanız yukarıdaki adımları atlayın ve Cloud Run'a giderek Cloud Run hizmetini silin. Ardından, silmek istediğiniz hizmeti işaretleyip SİL'i tıklayın.

8. Tebrikler

Tebrikler! Google Cloud'da Cloud Run hizmeti olarak bir web uygulaması için AI tabanlı sohbet uygulamasını başarıyla derleyip dağıttınız. Kullanıcılarınızın sorgularını girmelerine izin vermek için bu sohbet uygulamasını kullanabilirsiniz. Bu uygulama, Vertex AI sohbet modelini çağırarak yanıt verir.