แอป Chat ที่มี PaLM API ใน Cloud Run

1. บทนำ

Codelab นี้จะแสดงวิธีสร้างและทำให้แอปแชทที่ใช้ AI ใช้งานได้บนเว็บแอปพลิเคชัน โดยอยู่ในรูปแบบบริการ Cloud Run บน Google Cloud แอปแชทนี้ช่วยให้ผู้ใช้ค้นหาและรับคำตอบโดยใช้โมเดล PaLM สำหรับ Chat Bison ( text-chat) ได้

สิ่งที่คุณจะสร้าง

คุณจะได้สร้าง

  • สภาพแวดล้อมใน Google Cloud สำหรับเรียกใช้แอปพลิเคชัน
  • อิมเมจ Docker สำหรับแอปพลิเคชัน
  • บริการ Cloud Run ที่เรียกใช้แอปพลิเคชัน

2. ข้อกำหนด

  • เบราว์เซอร์ เช่น Chrome หรือ Firefox
  • โปรเจ็กต์ Google Cloud ที่เปิดใช้การเรียกเก็บเงิน

3. ก่อนเริ่มต้น

  1. ใน Google Cloud Console ในหน้าตัวเลือกโปรเจ็กต์ ให้เลือกหรือสร้างโปรเจ็กต์ Google Cloud
  2. ตรวจสอบว่าเปิดใช้การเรียกเก็บเงินสำหรับโปรเจ็กต์ Google Cloud แล้ว ดูวิธีตรวจสอบว่าเปิดใช้การเรียกเก็บเงินในโปรเจ็กต์แล้ว
  3. เปิดใช้งาน Cloud Shell จากคอนโซล Google Cloud โดยทำตามวิธีการที่นี่
  4. หากไม่ได้ตั้งค่าโปรเจ็กต์ไว้ ให้ใช้คำสั่งต่อไปนี้เพื่อตั้งค่าโปรเจ็กต์
gcloud config set project <YOUR_PROJECT_ID>
  1. ใน Cloud Shell ให้ตั้งค่าตัวแปรสภาพแวดล้อมต่อไปนี้
export GCP_PROJECT=<YOUR_PROJECT_ID>
export GCP_REGION=us-central1
  1. เปิดใช้ Google Cloud API ที่จำเป็นโดยเรียกใช้คำสั่งต่อไปนี้ใน Cloud Shell Terminal
gcloud services enable cloudbuild.googleapis.com cloudfunctions.googleapis.com run.googleapis.com logging.googleapis.com storage-component.googleapis.com aiplatform.googleapis.com

4. ตั้งค่าสภาพแวดล้อมของคุณ

  1. หากต้องการคัดลอกโค้ดตัวอย่างไปยังโปรเจ็กต์ ให้โคลนที่เก็บใน Cloud Shell ดังนี้
git clone https://github.com/rominirani/genai-apptemplates-googlecloud
  1. คำสั่งนี้จะโคลนเนื้อหาของที่เก็บลงในโฟลเดอร์ genai-templates-googlecloud
  2. ไปที่โฟลเดอร์ของโปรเจ็กต์ที่เราสนใจโดยเรียกใช้คำสั่งต่อไปนี้จากเทอร์มินัล Cloud Shell
cd genai-apptemplates-googlecloud/chat-flask-cloudrun
  1. ตั้งค่าตัวแปรสภาพแวดล้อมต่อไปนี้สำหรับการเริ่มต้น Vertex AI

GCP_PROJECT : รหัสโปรเจ็กต์ Google Cloud เช่น my_project

GCP_REGION : ภูมิภาคที่คุณต้องการทำให้ Cloud Function ใช้งานได้ ตัวอย่างเช่น us-central1

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

5. สร้างอิมเมจ Docker

หากต้องการสร้างอิมเมจ Docker สำหรับแอปพลิเคชันและพุชไปยัง Artifact Registry ให้ทำดังนี้

  1. ตั้งค่าตัวแปรสภาพแวดล้อมสำหรับที่เก็บ Artifact Registry ชื่อมีได้เฉพาะตัวอักษรพิมพ์เล็ก ตัวเลข และขีดกลางเท่านั้น โดยต้องขึ้นต้นด้วยตัวอักษรและลงท้ายด้วยตัวอักษรหรือตัวเลข เช่น my-chat-app-repo
export AR_REPO='my-chat-app-repo'
  1. ตั้งค่าตัวแปรสภาพแวดล้อมสำหรับชื่อบริการของคุณ เช่น chat-flask-app
export SERVICE_NAME='chat-flask-app'
  1. สร้างที่เก็บในรูปแบบ Docker
gcloud artifacts repositories create "$AR_REPO" --location="$GCP_REGION" --repository-format=Docker
  1. กำหนดค่าการตรวจสอบสิทธิ์ Docker
gcloud auth configure-docker "$GCP_REGION-docker.pkg.dev"
  1. สร้างอิมเมจ
gcloud builds submit --tag "$GCP_REGION-docker.pkg.dev/$GCP_PROJECT/$AR_REPO/$SERVICE_NAME"
  1. หากต้องการตรวจสอบว่ามีการพุชอิมเมจไปยัง Artifact Registry หรือไม่ ให้ไปที่หน้า Artifact Registry ค้นหาที่เก็บที่คุณสร้างไว้ในหน้านี้

6. ทำให้แอปพลิเคชันใช้งานได้

  1. ทำให้แอปพลิเคชันใช้งานได้ใน Cloud Run
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

ขั้นตอนนี้อาจใช้เวลาสักครู่จึงจะเสร็จสมบูรณ์

  1. เมื่อต้องการเปิดแอปพลิเคชันแชท ให้คลิก URL ของบริการ

56c06b62e0ac95bf.png

แอปพลิเคชันแชทจะเปิดขึ้นในแท็บใหม่ดังที่แสดงในภาพหน้าจอต่อไปนี้

eebde9c35c171563.png

7. ล้างข้อมูล

โปรดทำตามขั้นตอนต่อไปนี้เพื่อเลี่ยงไม่ให้เกิดการเรียกเก็บเงินกับบัญชี Google Cloud สำหรับทรัพยากรที่ใช้ในโพสต์นี้

  1. ในคอนโซล Google Cloud ให้ไปที่หน้าจัดการทรัพยากร
  2. ในรายการโปรเจ็กต์ ให้เลือกโปรเจ็กต์ที่ต้องการลบ แล้วคลิกลบ
  3. ในกล่องโต้ตอบ ให้พิมพ์รหัสโปรเจ็กต์ แล้วคลิกปิดเครื่องเพื่อลบโปรเจ็กต์
  4. หากต้องการเก็บโปรเจ็กต์ไว้ ให้ข้ามขั้นตอนข้างต้นและลบบริการ Cloud Run โดยไปที่ Cloud Run แล้วเลือกบริการที่ต้องการลบจากรายการบริการ แล้วคลิก "ลบ"

8. ขอแสดงความยินดี

ยินดีด้วย คุณสร้างและทำให้แอปแชทที่ใช้ AI ใช้งานได้สำหรับเว็บแอปพลิเคชันเป็นบริการ Cloud Run บน Google Cloud เรียบร้อยแล้ว คุณสามารถใช้แอปแชทนี้เพื่ออนุญาตให้ผู้ใช้ป้อนคำถาม และแอปนี้จะเรียกใช้โมเดลแชท Vertex AI และแสดงคำตอบ