ระดับการเขียนโค้ด: ขั้นสูง
ระยะเวลา: 45 นาที
ประเภทโปรเจ็กต์: ส่วนเสริมของ Google Workspace
ขยาย Chat,
Gmail,
ปฏิทิน,
ไดรฟ์,
เอกสาร, ชีต และสไลด์
บทช่วยสอนนี้จะแสดงวิธีเผยแพร่ตัวแทน AI ไปยัง Google Workspace เป็นส่วนเสริมของ Google Workspace โดยใช้ Apps Script หรือจุดสิ้นสุด HTTP หลังจากที่คุณเผยแพร่ส่วนเสริมของคุณแล้ว ผู้ใช้ของคุณจะสามารถโต้ตอบกับตัวแทน AI ภายในเวิร์กโฟลว์ของพวกเขาได้
ภาพรวม
ในบทแนะนำนี้ คุณจะทำให้ตัวอย่าง Travel Concierge ใช้งานได้จาก Agent Development Kit (ADK) Travel Concierge เป็น AI แบบหลายเอเจนต์ที่สนทนาได้ซึ่งใช้เครื่องมือต่างๆ เช่น Places API ของ Google Maps Platform, การอ้างอิงจาก Google Search และเซิร์ฟเวอร์ Model Context Protocol (MCP)
ADK จัดให้มีอินเทอร์เฟซการแชทและข้อความสำหรับนักพัฒนาตามค่าเริ่มต้น ในบทช่วยสอนนี้ คุณจะเพิ่มอินเทอร์เฟซผู้ใช้แบบกราฟิก (GUI) ให้กับแอปพลิเคชัน Google Workspace ที่ผู้ใช้ของคุณสามารถเข้าถึงได้โดยตรงในแชท Gmail ปฏิทิน ไดรฟ์ เอกสาร แผ่นงาน และสไลด์
รูปที่ 1. การใช้ตัวแทน AI จาก Chat เพื่อระดมความคิดเกี่ยวกับการเดินทาง
รูปที่ 2 การใช้เอเจนต์ AI จาก Gmail เพื่อวางแผนการเดินทางจากบริบทในอีเมลที่เลือก
วัตถุประสงค์
- ตั้งค่าสภาพแวดล้อม
- ติดตั้งใช้งานเอเจนต์ AI
- ตั้งค่าโครงการ
- นำไปใช้กับ Gmail, ปฏิทิน, ไดรฟ์, เอกสาร, แผ่นงาน, สไลด์
- ติดตั้งใช้งานใน Chat
- ทดสอบโซลูชัน
เกี่ยวกับโซลูชันนี้
โซลูชันนี้ใช้เทคโนโลยีหลักต่อไปนี้ ได้แก่ ADK, Google Cloud และ Google Workspace APIs Vertex AI Agent Engine และCard Framework
GUI ได้รับการออกแบบมาให้แตกต่างกันสำหรับแอปพลิเคชัน Chat และแอปพลิเคชันที่ไม่ใช่ Chat (Gmail, ปฏิทิน, ไดรฟ์, เอกสาร, ชีต, สไลด์) เพื่อพิจารณาฟีเจอร์และข้อจำกัดเฉพาะของแอปพลิเคชันเหล่านั้น
ฟีเจอร์
ฟีเจอร์ต่อไปนี้ของแอปพลิเคชัน Travel Concierge เป็นฟีเจอร์ทั่วไปใน แอปพลิเคชัน Google Workspace ทั้งหมด
เซสชันผู้ใช้แบบถาวร: Vertex AI จะจัดการเซสชันเพื่อ ความต่อเนื่อง ผู้ใช้แต่ละคนจะแชร์เซสชันเดียวในแอปพลิเคชัน Workspace ทั้งหมด ผู้ใช้สามารถรีเซ็ตเซสชันด้วยตนเองเพื่อเริ่มการสนทนาใหม่
การส่งข้อความที่หลากหลาย: ผู้ใช้ส่งข้อความและรับการตอบกลับด้วยข้อความที่หลากหลายและวิดเจ็ตการ์ด
การจัดการข้อผิดพลาด: ข้อผิดพลาดที่ไม่คาดคิดจะได้รับการจัดการอย่างเหมาะสมโดยใช้ การลองใหม่และสถานะที่กำหนดค่าได้ในการตอบกลับ
แอปแชทมีคุณลักษณะเพิ่มเติมดังต่อไปนี้:
การส่งข้อความผู้ใช้แบบหลายโหมด: ผู้ใช้สามารถส่งข้อความพร้อมไฟล์แนบ รวมถึงเสียงและวิดีโอที่บันทึกโดยตรงจากพื้นที่แชท
การตอบกลับขั้นสูงด้วยภาพมากขึ้น: สามารถสร้างการตอบกลับได้ด้วยวิดเจ็ตขั้นสูง เช่น แถบเลื่อนพร้อมรูปภาพ โดยอาศัยคุณลักษณะการแชทเท่านั้นของกรอบงานการ์ดและพื้นที่การเรนเดอร์เพิ่มเติม
แอปพลิเคชันอื่นมีคุณลักษณะเพิ่มเติมดังต่อไปนี้:
บริบทโปรไฟล์ Google: ผู้ใช้สามารถส่งข้อความพร้อมข้อมูลโปรไฟล์ของตนเองได้ (ในตัวอย่างนี้จำกัดเฉพาะวันเกิด)
บริบท Gmail: ผู้ใช้สามารถส่งข้อความด้วยอีเมล (จำกัดเพียงหนึ่งหัวเรื่องและเนื้อหาในตัวอย่างนี้)
สิทธิ์เข้าถึงพื้นที่ Chat ของตัวแทน: ผู้ใช้สามารถเปิดพื้นที่ข้อความส่วนตัว (DM) ของแอป Chat ในแท็บใหม่ได้ด้วยการคลิกปุ่มเพียงปุ่มเดียว
สถาปัตยกรรม
แอปพลิเคชัน Travel Concierge จะรับและประมวลผลเหตุการณ์การโต้ตอบส่วนเสริมของ Google Workspace จากแอปพลิเคชัน Google Workspace ใช้ Vertex AI เพื่อแจ้งเตือนตัวแทน ADK AI และจัดการเซสชันของผู้ใช้ และอาศัย Google Cloud และ Google Workspace API เพื่อรวบรวมบริบทและแสดงการตอบกลับ
แผนภาพต่อไปนี้แสดงขั้นตอนการใช้งานหลัก: ส่งข้อความไปยังตัวแทน AI
HTTP
รูปที่ 3 แอปแชทจะเติมบริบทด้วยไฟล์แนบจากข้อความของผู้ใช้ และส่งชุดข้อความพร้อมประวัติการโต้ตอบระหว่างตัวแทนย่อยและคำตอบโดยรวมขั้นสุดท้ายตามลำดับเวลา
รูปที่ 4 แอปพลิเคชันที่ไม่ใช่แชทจะเติมเต็มบริบทด้วยโปรไฟล์ Google ของผู้ใช้และการเลือกรายการ แล้วแสดงชุดส่วนที่มีประวัติการโต้ตอบของตัวแทนย่อยและคำตอบโดยรวมสุดท้ายตามลำดับเวลาแบบย้อนหลัง
Apps Script
รูปที่ 3 แอปแชทจะเติมบริบทด้วยไฟล์แนบจากข้อความของผู้ใช้ และส่งชุดข้อความพร้อมประวัติการโต้ตอบระหว่างตัวแทนย่อยและคำตอบโดยรวมขั้นสุดท้ายตามลำดับเวลา
รูปที่ 4 แอปพลิเคชันที่ไม่ใช่แชทจะเติมเต็มบริบทด้วยโปรไฟล์ Google ของผู้ใช้และการเลือกรายการ แล้วแสดงชุดส่วนที่มีประวัติการโต้ตอบของตัวแทนย่อยและคำตอบโดยรวมสุดท้ายตามลำดับเวลาแบบย้อนหลัง
ข้อกำหนดเบื้องต้น
บัญชี Google Workspace สำหรับธุรกิจหรือองค์กร ที่มีสิทธิ์เข้าถึง Google Chat
เว็บเบราว์เซอร์ที่มีสิทธิ์เข้าถึงอินเทอร์เน็ต
ข้อกำหนดเบื้องต้นสำหรับเอเจนต์ AI ของ Travel Concierge ADK โดยเฉพาะ
- Python 3.10 ขึ้นไป: โปรดทำตามวิธีการติดตั้งในเว็บไซต์ทางการของ Python
uv: สำหรับการติดตั้ง ให้ทำตามคำแนะนำอย่างเป็นทางการuvเว็บไซต์ -- Google Cloud CLI: หากต้องการติดตั้ง ให้ทำตามวิธีการในเว็บไซต์ Google Cloud อย่างเป็นทางการ
เตรียมสภาพแวดล้อม
ส่วนนี้จะแสดงวิธีสร้างและกำหนดค่าโปรเจ็กต์ Google Cloud
สร้างโปรเจ็กต์ Google Cloud
คอนโซล Google Cloud
- ใน Google Cloud Console ให้ไปที่เมนู > IAM และผู้ดูแลระบบ > สร้างโปรเจ็กต์
-
ในช่องชื่อโปรเจ็กต์ ให้ป้อนชื่อที่สื่อความหมายสำหรับโปรเจ็กต์
ไม่บังคับ: หากต้องการแก้ไขรหัสโปรเจ็กต์ ให้คลิกแก้ไข คุณจะเปลี่ยนรหัสโปรเจ็กต์ไม่ได้ หลังจากสร้างโปรเจ็กต์แล้ว ดังนั้นให้เลือกรหัสที่ตรงกับความต้องการตลอดอายุการใช้งานของ โปรเจ็กต์
- ในฟิลด์ตำแหน่งที่ตั้ง คลิกเรียกดูเพื่อแสดงตำแหน่งที่ตั้งที่เป็นไปได้สำหรับโครงการของคุณ จากนั้นคลิกเลือก
- คลิกสร้าง คอนโซล Google Cloud จะนำทางไปยังหน้าแดชบอร์ด และโปรเจ็กต์ของคุณจะถูกสร้างขึ้นภายในไม่กี่นาที
gcloud CLI
ในสภาพแวดล้อมการพัฒนาต่อไปนี้ ให้เข้าถึง Google Cloud CLI (gcloud):
-
Cloud Shell: หากต้องการใช้เทอร์มินัลออนไลน์โดยตั้งค่า gcloud CLI ไว้แล้ว ให้เปิดใช้งาน Cloud Shell
เปิดใช้งาน Cloud Shell -
เชลล์ภายในเครื่อง: หากต้องการใช้สภาพแวดล้อมการพัฒนาภายใน
ติดตั้งและ
เริ่มต้น
gcloud CLI
ในการสร้างโปรเจ็กต์บนคลาวด์ ให้ใช้คำสั่งgcloud projects create: แทนที่ PROJECT_ID โดยการตั้งค่า ID สำหรับโครงการที่คุณต้องการสร้างgcloud projects create PROJECT_ID
เปิดใช้การเรียกเก็บเงินสำหรับโปรเจ็กต์ Cloud
คอนโซล Google Cloud
- ในคอนโซล Google Cloud ให้ไปที่การเรียกเก็บเงิน คลิก เมนู > การเรียกเก็บเงิน > โปรเจ็กต์ของฉัน
- ในเลือกองค์กร ให้เลือกองค์กรที่เชื่อมโยงกับโครงการ Google Cloud ของคุณ
- ในแถวของโปรเจ็กต์ ให้เปิดเมนูการดำเนินการ () คลิกเปลี่ยนการเรียกเก็บเงิน แล้วเลือก บัญชี Cloud Billing
- คลิกตั้งค่าบัญชี
gcloud CLI
- หากต้องการแสดงรายการบัญชีสำหรับการเรียกเก็บเงินที่ใช้ได้ ให้เรียกใช้คำสั่งต่อไปนี้
gcloud billing accounts list - ลิงก์บัญชีสำหรับการเรียกเก็บเงินกับโปรเจ็กต์ Google Cloud โดยทำดังนี้
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_IDแทนที่ค่าต่อไปนี้
PROJECT_IDคือรหัสโปรเจ็กต์ของ โปรเจ็กต์ Cloud ที่คุณต้องการเปิดใช้การเรียกเก็บเงินBILLING_ACCOUNT_IDคือรหัสบัญชีสำหรับการเรียกเก็บเงินที่จะลิงก์กับ โปรเจ็กต์ Google Cloud
เปิดใช้ Google Cloud APIs
HTTP
ในคอนโซล Google Cloud ให้เปิดใช้ Vertex AI, Places, People, Google Chat, Gmail, Cloud Build, Cloud Functions, Cloud Pub/Sub, Cloud Logging, Artifact Registry, Cloud Run และ API ของส่วนเสริม Google Workspace
ยืนยันว่าคุณกำลังเปิดใช้ API ในโปรเจ็กต์ Cloud ที่ถูกต้อง แล้วคลิกถัดไป
ยืนยันว่าคุณเปิดใช้ API ที่ถูกต้อง แล้วคลิกเปิดใช้
Apps Script
ในคอนโซล Google Cloud ให้เปิดใช้ Vertex AI, Places, People, Google Chat API
ยืนยันว่าคุณกำลังเปิดใช้ API ในโปรเจ็กต์ Cloud ที่ถูกต้อง แล้วคลิกถัดไป
ยืนยันว่าคุณเปิดใช้ API ที่ถูกต้อง แล้วคลิกเปิดใช้
รับคีย์ API ของ Google Maps Platform Places
ในคอนโซล Google Cloud ให้ไปที่หน้า Google Maps Platform > คีย์และ ข้อมูลเข้าสู่ระบบ
กล่องโต้ตอบ เริ่มต้นใช้งานบน Google Maps Platform จะแสดงคีย์ API ที่คุณเพิ่งสร้างขึ้น ซึ่งเป็นสตริงตัวอักษรและตัวเลข คุณจะต้องใช้สตริงนี้ในส่วนถัดไป
สร้างบัญชีบริการในคอนโซล Google Cloud
สร้างบัญชีบริการใหม่ที่มีบทบาท Vertex AI User โดยทำตามขั้นตอนเหล่านี้:
คอนโซล Google Cloud
- ใน Google Cloud Console ให้ไปที่เมนู > IAM & Admin > บัญชีบริการ
- คลิกสร้างบัญชีบริการ
- กรอกรายละเอียดบัญชีบริการ แล้วคลิกสร้างและต่อไป
- ไม่บังคับ: มอบหมายบทบาทให้กับบัญชีบริการเพื่อให้สิทธิ์เข้าถึงทรัพยากรของโปรเจ็กต์ Google Cloud ดูรายละเอียดเพิ่มเติมได้ที่การให้ เปลี่ยน และเพิกถอนสิทธิ์เข้าถึงทรัพยากร
- คลิกต่อไป
- ไม่บังคับ: ป้อนผู้ใช้หรือกลุ่มที่จัดการและดำเนินการกับบัญชีบริการนี้ได้ โปรดดูรายละเอียดเพิ่มเติมที่หัวข้อการจัดการการแอบอ้างเป็นบัญชีบริการ
- คลิกเสร็จสิ้น จดบันทึกที่อยู่อีเมลสำหรับบัญชีบริการ
gcloud CLI
- สร้างบัญชีบริการโดยทำดังนี้
gcloud iam service-accounts createSERVICE_ACCOUNT_NAME\ --display-name="SERVICE_ACCOUNT_NAME" - ไม่บังคับ: มอบหมายบทบาทให้กับบัญชีบริการเพื่อให้สิทธิ์เข้าถึงทรัพยากรของโปรเจ็กต์ Google Cloud ดูรายละเอียดเพิ่มเติมได้ที่การให้ เปลี่ยน และเพิกถอนสิทธิ์เข้าถึงทรัพยากร
บัญชีบริการจะปรากฏในหน้าบัญชีบริการ ขั้นตอนต่อไปคือสร้างคีย์ส่วนตัวสำหรับบัญชีบริการ
สร้างคีย์ส่วนตัว
หากต้องการสร้างและดาวน์โหลดคีย์ส่วนตัวสำหรับบัญชีบริการ ให้ทำตามขั้นตอนเหล่านี้:
- ใน Google Cloud Console ให้ไปที่เมนู > IAM & Admin > บัญชีบริการ
- เลือกบัญชีบริการ
- คลิกคีย์ > เพิ่มคีย์ > สร้างคีย์ใหม่
- เลือก JSON จากนั้นคลิกสร้าง
คู่คีย์สาธารณะ/ส่วนตัวใหม่ของคุณจะถูกสร้างขึ้นและดาวน์โหลดไปยังเครื่องของคุณเป็นไฟล์ใหม่ บันทึกไฟล์ JSON ที่ดาวน์โหลดเป็น
credentials.jsonในไดเร็กทอรีการทำงานของคุณ ไฟล์นี้เป็นสำเนาเดียวของคีย์นี้ ดูข้อมูลเกี่ยวกับวิธีจัดเก็บคีย์อย่างปลอดภัยได้ที่การจัดการคีย์ของบัญชีบริการ - คลิกปิด
ดูข้อมูลเพิ่มเติมเกี่ยวกับบัญชีบริการได้ที่บัญชีบริการในเอกสารประกอบของ Google Cloud IAM
กำหนดค่าหน้าจอขอความยินยอม OAuth
ส่วนเสริมของ Google Workspace ต้องมีการกำหนดค่าหน้าจอขอความยินยอม การกำหนดค่าหน้าจอขอความยินยอม OAuth ของส่วนเสริมจะกำหนดสิ่งที่ Google แสดงต่อผู้ใช้
- ในคอนโซล Google Cloud ไปที่เมนู > Google Auth platform > การสร้างแบรนด์
- หากคุณได้กำหนดค่า Google Auth platformแล้ว คุณสามารถกำหนดค่าการตั้งค่าหน้าจอการยินยอม OAuth ต่อไปนี้ได้ใน การสร้างแบรนด์, กลุ่มเป้าหมาย และ การเข้าถึงข้อมูล หากคุณเห็นข้อความที่ระบุว่า Google Auth platform ยังไม่ได้กำหนดค่า ให้คลิก เริ่มต้นใช้งาน:
- ในส่วนข้อมูลแอป ให้ป้อนชื่อแอปในชื่อแอป
- ในอีเมลสนับสนุนสำหรับผู้ใช้ ให้เลือกอีเมลสนับสนุนที่ผู้ใช้สามารถติดต่อคุณได้หากมีข้อสงสัยเกี่ยวกับการยินยอม
- คลิกถัดไป
- ภายใต้ผู้ชม ให้เลือกภายใน
- คลิกถัดไป
- ในส่วนข้อมูลติดต่อ ให้ป้อนอีเมลที่คุณต้องการรับการแจ้งเตือนเกี่ยวกับการเปลี่ยนแปลงในโปรเจ็กต์
- คลิกถัดไป
- ในส่วนเสร็จสิ้น ให้อ่านนโยบายข้อมูลผู้ใช้ของบริการ Google API และหากยอมรับ ให้เลือกฉันยอมรับบริการ Google API: นโยบายข้อมูลผู้ใช้
- คลิกต่อไป
- คลิกสร้าง
- ในตอนนี้ คุณข้ามการเพิ่มขอบเขตได้ ในอนาคต เมื่อสร้างแอปเพื่อใช้ภายนอกองค์กร Google Workspace คุณจะต้องเปลี่ยนประเภทผู้ใช้เป็นภายนอก จากนั้น เพิ่มขอบเขตการให้สิทธิ์ที่แอปของคุณต้องการ ดูข้อมูลเพิ่มเติมได้ที่คู่มือกำหนดค่าความยินยอม OAuth ฉบับเต็ม
ทำให้ AI Agent ของ ADK Travel Concierge ใช้งานได้
หากยังไม่ได้ดำเนินการ ให้ตรวจสอบสิทธิ์ด้วยบัญชี Google Cloud และกำหนดค่า Google Cloud CLI ให้ใช้โปรเจ็กต์ Google Cloud
gcloud auth application-default logingcloud config set project PROJECT_IDgcloud auth application-default set-quota-project PROJECT_IDแทนที่ PROJECT_ID ด้วยรหัสของโปรเจ็กต์ Cloud ที่คุณสร้างขึ้น
ดาวน์โหลดที่เก็บ GitHub นี้
ในสภาพแวดล้อมการพัฒนาในเครื่องที่ต้องการ ให้แตกไฟล์ที่ดาวน์โหลด มาแล้วเปิดไดเรกทอรี
adk-samples/python/agents/travel-conciergeunzip adk-samples-main.zipcd adk-samples-main/python/agents/travel-conciergeสร้างที่เก็บข้อมูล Cloud Storage ใหม่สำหรับเอเจนต์ AI ของ ADK โดยเฉพาะ
gcloud storage buckets create gs://CLOUD_STORAGE_BUCKET_NAME --project=PROJECT_ID --location=PROJECT_LOCATIONแทนที่ค่าต่อไปนี้
- CLOUD_STORAGE_BUCKET_NAME โดยใช้ชื่อที่เก็บข้อมูลที่ไม่ซ้ำกันที่คุณต้องการใช้
- PROJECT_ID โดยใช้รหัสของโปรเจ็กต์ที่อยู่ในระบบคลาวด์ที่คุณสร้าง
- PROJECT_LOCATION ที่มีตำแหน่งของ โปรเจ็กต์ Cloud ที่คุณสร้าง
ตั้งค่าตัวแปรสภาพแวดล้อมต่อไปนี้
export GOOGLE_GENAI_USE_VERTEXAI=1export GOOGLE_CLOUD_PROJECT=PROJECT_IDexport GOOGLE_CLOUD_LOCATION=PROJECT_LOCATIONexport GOOGLE_PLACES_API_KEY=PLACES_API_KEYexport GOOGLE_CLOUD_STORAGE_BUCKET=CLOUD_STORAGE_BUCKET_NAMEexport TRAVEL_CONCIERGE_SCENARIO=travel_concierge/profiles/itinerary_empty_default.jsonแทนที่ค่าต่อไปนี้
- PROJECT_ID โดยใช้รหัสของโปรเจ็กต์ที่อยู่ในระบบคลาวด์ที่คุณสร้าง
- PROJECT_LOCATION ที่มีตำแหน่งของ โปรเจ็กต์ Cloud ที่คุณสร้าง
- PLACES_API_KEY ด้วยสตริงของคีย์ API ที่คุณสร้างขึ้น
- CLOUD_STORAGE_BUCKET_NAME พร้อมชื่อถังที่คุณสร้างขึ้น
ติดตั้งและติดตั้งใช้งาน ADK AI Agent
uv sync --group deploymentuv run python deployment/deploy.py --createดึงหมายเลขโครงการและ ID เครื่องยนต์จากบันทึกที่พิมพ์ล่าสุดเป็น PROJECT_NUMBER และ ENGINE_ID ตามลำดับ คุณจะต้องใช้ทั้งสองอย่างในภายหลังเพื่อกำหนดค่าโครงการของคุณ
Created remote agent: projects/PROJECT_NUMBER/locations/us-central1/reasoningEngines/ENGINE_ID
ตรวจสอบโค้ดตัวอย่าง
ก่อนตั้งค่าโปรเจ็กต์ คุณอาจใช้เวลาสักครู่เพื่อตรวจสอบและ ทำความคุ้นเคยกับโค้ดตัวอย่างที่โฮสต์ใน GitHub
Python
Apps Script
สร้างและกำหนดค่าโครงการ
Python
ดาวน์โหลดที่เก็บ GitHub นี้
ในสภาพแวดล้อมการพัฒนาในเครื่องที่ต้องการ ให้แตกไฟล์ที่ดาวน์โหลด มาแล้วเปิดไดเรกทอรี
add-ons-samples/python/travel-adk-ai-agentunzip add-ons-samples-main.zipcd add-ons-samples-main/python/travel-adk-ai-agentย้ายไฟล์คีย์ JSON
credentials.jsonจากบัญชีบริการ ที่ดาวน์โหลดในขั้นตอนก่อนหน้าไปยังไดเรกทอรีโปรเจ็กต์ในคอนโซล Google Cloud ให้ไปที่ Cloud Run แล้วทำดังนี้
คลิกเขียนฟังก์ชัน
ในหน้าสร้างบริการ ให้ตั้งค่าฟังก์ชันดังนี้
- ในช่องชื่อบริการ ให้ป้อน
travel-concierge-app - ในรายการภูมิภาค ให้เลือกตำแหน่งของโปรเจ็กต์ Cloud ที่คุณสร้าง PROJECT_LOCATION
- ในส่วน URL ปลายทาง ให้คลิก
- ในรายการรันไทม์ ให้เลือก Python เวอร์ชันล่าสุด
- ในส่วนการตรวจสอบสิทธิ์ ให้เลือกอนุญาตการเข้าถึงแบบสาธารณะ
- ในส่วน คอนเทนเนอร์, วอลุ่ม, เครือข่าย, ความปลอดภัย ภายใต้ ทรัพยากร:
- เลือก 1 GiB ในช่อง Memory
- ในฟิลด์ CPU ให้เลือก 2
- คลิกสร้าง แล้วรอให้ Cloud Run สร้างบริการ คอนโซลจะเปลี่ยนเส้นทางคุณไปยังแท็บแหล่งที่มา
- ในช่องชื่อบริการ ให้ป้อน
ในสภาพแวดล้อมการพัฒนาในเครื่องที่คุณต้องการ ให้ติดตั้งใช้งานแหล่งที่มาของ โปรเจ็กต์โดยทำดังนี้
gcloud run deploy travel-concierge-app --quiet --source . \ --region PROJECT_LOCATION \ --function adk_ai_agent \ --set-env-vars LOCATION=LOCATION,PROJECT_NUMBER=PROJECT_NUMBER,ENGINE_ID=ENGINE_ID,BASE_URL=BASE_URLแทนที่ค่าต่อไปนี้
- PROJECT_LOCATION ที่มีตำแหน่งของฟังก์ชัน Cloud Run ที่คุณสร้างไว้ก่อนหน้านี้
- LOCATION โดยใช้ตำแหน่งของโปรเจ็กต์ Google Cloud ที่สร้างในขั้นตอนก่อนหน้า PROJECT_LOCATION
- PROJECT_NUMBER พร้อมหมายเลขโครงการของ Travel Concierge ADK AI Agent ที่ใช้งานในขั้นตอนก่อนหน้านี้
- ENGINE_ID โดยใช้รหัสเครื่องมือของ Travel Concierge ADK AI Agent ที่ติดตั้งใช้งานในขั้นตอนก่อนหน้า
- BASE_URL ด้วย URL ปลายทางที่คุณคัดลอกไว้ก่อนหน้านี้
Apps Script
วิธีสร้างโปรเจ็กต์ Apps Script และกำหนดค่าให้ใช้เอเจนต์ AI ของ Travel Concierge ADK ที่คุณ ติดตั้งใช้งาน
คลิกปุ่มต่อไปนี้เพื่อเปิดโครงการ Travel Concierge ADK AI Agent Apps Script
เปิดโปรเจ็กต์คลิก ภาพรวม แล้วคลิก
ทำสำเนา
ตั้งชื่อสำเนาโครงการ Apps Script ของคุณ:
- คลิก สำเนาของตัวแทน ADK AI ของ Travel Concierge
- ในชื่อโปรเจ็กต์ ให้พิมพ์
Travel Concierge ADK AI Agent - คลิกเปลี่ยนชื่อ
ในโปรเจ็กต์ Apps Script ให้ คลิก
Editor แล้ว ย้ายไฟล์
VertexAi.gsขึ้นไปจนอยู่เหนือไฟล์AgentHandler.gsโดยใช้การดำเนินการกับไฟล์ Move file upในโปรเจ็กต์ Apps Script ให้ คลิก
การตั้งค่าโปรเจ็กต์ คลิกแก้ไขพร็อพเพอร์ตี้สคริปต์ แล้วคลิกเพิ่มพร็อพเพอร์ตี้สคริปต์ เพื่อเพิ่มพร็อพเพอร์ตี้สคริปต์ต่อไปนี้
ENGINE_IDโดยใช้รหัสเครื่องมือค้นหาของตัวแทน AI ของ Travel Concierge ADK ที่ติดตั้งใช้งานในขั้นตอนก่อนหน้า ENGINE_IDLOCATIONพร้อมตำแหน่งของโปรเจ็กต์ Google Cloud ที่สร้างในขั้นตอนก่อนหน้านี้ PROJECT_LOCATIONPROJECT_NUMBERพร้อมหมายเลขโครงการของ Travel Concierge ADK AI Agent ที่ใช้งานในขั้นตอนก่อนหน้านี้ PROJECT_NUMBERSERVICE_ACCOUNT_KEYพร้อมด้วยคีย์ JSON จากบัญชีบริการที่ดาวน์โหลดในขั้นตอนก่อนหน้า เช่น{ ... }คลิกบันทึกคุณสมบัติสคริปต์
ในโปรเจ็กต์ Apps Script ให้ คลิก
การตั้งค่าโปรเจ็กต์
ในส่วนโปรเจ็กต์ Google Cloud Platform (GCP) ให้คลิกเปลี่ยนโปรเจ็กต์
ในหมายเลขโครงการ GCP ให้วางหมายเลขโครงการของ Travel Concierge ADK AI Agent ที่ใช้งานในขั้นตอนก่อนหน้านี้ PROJECT_NUMBER
คลิกตั้งค่าโปรเจ็กต์ ตอนนี้โปรเจ็กต์ระบบคลาวด์และโปรเจ็กต์ Apps Script เชื่อมต่อกันแล้ว
นำไปใช้กับ Gmail, ปฏิทิน, ไดรฟ์, เอกสาร, แผ่นงาน, สไลด์
Python
ใช้การปรับใช้ส่วนเสริมของ Google Workspace เพื่อติดตั้งโครงการตัวอย่างไปยังแอปพลิเคชัน Google Workspace ทั้งหมด (แต่เป็น Google Chat) เพื่อเปิดใช้งานการทดสอบ
ในสภาพแวดล้อมการพัฒนาในเครื่องที่คุณต้องการ ให้เปิดไฟล์
deployment.jsonจากแหล่งที่มาของโค้ดของโปรเจ็กต์ แล้วแทนที่อินสแตนซ์ทั้งหมดของ$BASE_URLด้วยค่าของ BASE_URL ซึ่งเป็น URL ของปลายทางที่คุณคัดลอกไว้ในขั้นตอนก่อนหน้าสร้างการปรับใช้ส่วนเสริม Google Workspace ชื่อ
travel-concierge-addon:gcloud workspace-add-ons deployments create travel-concierge-addon \ --deployment-file=deployment.jsonติดตั้งการปรับใช้ส่วนเสริม Google Workspace:
gcloud workspace-add-ons deployments install travel-concierge-addon
Apps Script
ติดตั้งโครงการ Apps Script ลงในแอปพลิเคชัน Google Workspace ทั้งหมด (แต่รวมถึง Google Chat) เพื่อเปิดใช้งานการทดสอบ
- ในโครงการ Apps Script ของคุณ ให้คลิก ปรับใช้ > ทดสอบการปรับใช้ จากนั้นคลิก ติดตั้ง
ตอนนี้สามารถเข้าถึงส่วนเสริมได้จากแถบด้านข้างของแอปพลิเคชัน Google Workspace แล้ว
ปรับใช้ในการแชท
Python
ติดตั้งโครงการตัวอย่างในการแชทโดยใช้ URL ปลายทางเพื่อเปิดใช้งานการทดสอบ
ในคอนโซล ให้ค้นหา
Google Chat APIคลิก Google Chat API แล้วคลิกจัดการและ การกำหนดค่าตั้งค่าแอปแชท:
- ในช่องชื่อแอป ให้ป้อน
Travel ADK AI Agent - ในช่อง URL อวาตาร์ ให้ป้อน
https://goo.gle/3SfMkjb - ในช่องคำอธิบาย ให้ป้อน
Travel ADK AI Agent - ในส่วนการตั้งค่าการเชื่อมต่อ ให้เลือก URL ของปลายทาง HTTP
- ในส่วนทริกเกอร์ ให้เลือก ใช้ URL ปลายทาง HTTP ทั่วไปสําหรับทริกเกอร์ทั้งหมด
- ในช่อง URL ปลายทาง HTTP ให้วาง URL ปลายทาง ที่คุณคัดลอกไว้ก่อนหน้านี้ ซึ่งก็คือ BASE_URL
- ลงทะเบียนคำสั่งด่วนที่แอป Chat ที่ใช้งานได้เต็มรูปแบบใช้ ดังนี้
- ภายใต้คำสั่ง คลิกเพิ่มคำสั่ง
- ในรหัสคำสั่ง ให้พิมพ์
1 - ในคำอธิบาย ให้พิมพ์
Reset session - ภายใต้ประเภทคำสั่ง เลือกคำสั่งด่วน
- ในส่วนชื่อ ให้พิมพ์
Reset session - คลิกเสร็จสิ้น คำสั่งด่วนได้รับการลงทะเบียนและแสดงรายการแล้ว
- ภายใต้การมองเห็น ให้เลือกทำให้แอปแชทนี้พร้อมใช้งานสำหรับบุคคลและกลุ่มเฉพาะในโดเมนพื้นที่ทำงานของคุณ และป้อนที่อยู่อีเมลของคุณ
- ในส่วนบันทึก ให้เลือกบันทึกข้อผิดพลาดไปยังการบันทึก
- คลิกบันทึก
- ในช่องชื่อแอป ให้ป้อน
Apps Script
ติดตั้งโปรเจ็กต์ Apps Script ใน Chat โดยใช้รหัสการทำให้ใช้งานได้ของ Head เพื่อเปิดใช้การทดสอบ
ในโปรเจ็กต์ Apps Script ให้คลิกทำให้ใช้งานได้ > ทดสอบการทำให้ใช้งานได้ แล้วคลิก
คัดลอกในส่วนรหัสการทำให้ใช้งานได้ของเวอร์ชันล่าสุด
ในคอนโซล ให้ค้นหา
Google Chat APIคลิก Google Chat API แล้วคลิกจัดการและ การกำหนดค่าตั้งค่าแอปแชท:
- ในช่องชื่อแอป ให้ป้อน
Travel ADK AI Agent - ในช่อง URL อวาตาร์ ให้ป้อน
https://goo.gle/3SfMkjb - ในช่องคำอธิบาย ให้ป้อน
Travel ADK AI Agent - ภายใต้การตั้งค่าการเชื่อมต่อ เลือกสคริปต์แอป
- ในช่องรหัสการติดตั้งใช้งาน ให้วางรหัสการติดตั้งใช้งานส่วนหัวที่คุณคัดลอกไว้ก่อนหน้านี้
- ลงทะเบียนคำสั่งด่วนที่แอปแชทที่ใช้งานเต็มรูปแบบใช้:
- ในส่วนคำสั่ง ให้คลิกเพิ่มคำสั่ง
- ในรหัสคำสั่ง ให้พิมพ์
1 - ในคำอธิบาย ให้พิมพ์
Reset session - ภายใต้ประเภทคำสั่ง เลือกคำสั่งด่วน
- ในส่วนชื่อ ให้พิมพ์
Reset session - คลิกเสร็จสิ้น คำสั่งด่วนได้รับการลงทะเบียนและแสดงรายการแล้ว
- ภายใต้การมองเห็น ให้เลือกทำให้แอปแชทนี้พร้อมใช้งานสำหรับบุคคลและกลุ่มเฉพาะในโดเมนพื้นที่ทำงานของคุณ และป้อนที่อยู่อีเมลของคุณ
- ในส่วนบันทึก ให้เลือกบันทึกข้อผิดพลาดไปยังการบันทึก
- คลิกบันทึก
- ในช่องชื่อแอป ให้ป้อน
ตอนนี้สามารถเข้าถึงแอปได้จาก Google Chat แล้ว
เปิด Google Chat
สร้างพื้นที่ DM ใน Chat โดยทำดังนี้
- คลิก แชทใหม่
- พิมพ์และเลือกแอป
Travel ADK AI Agentในการค้นหา - ในกล่องโต้ตอบ
Install appคลิกติดตั้งแอป - กล่องโต้ตอบ
Install appจะปิดลงและระบบจะเลือกพื้นที่ DM ใน Chat ที่สร้างขึ้นใหม่
แอป Chat พร้อมตอบกลับข้อความแล้ว
ทดสอบเอเจนต์
เปิด Gmail
ส่งอีเมลต่อไปนี้ให้ตัวเอง
- เรื่อง:
You need to travel to Paris - เนื้อความ:
Please be there between 11/25/2025 and 11/30/2025!
- เรื่อง:
เปิดส่วนเสริม Travel ADK AI Agent จากแถบด้านข้าง
คลิกให้สิทธิ์เพื่อตั้งค่าส่วนเสริมให้เสร็จสมบูรณ์
คลิกส่งหลังจากกำหนดค่าคำขอต่อไปนี้ไปยังตัวแทน
- ข้อความ:
Please help me plan this travel! - บริบท: เลือกอีเมลปัจจุบัน
แถบด้านข้างจะอัปเดตตามคำตอบของเอเจนต์

- ข้อความ:
คลิกเปิดแชท เพื่อเปลี่ยนเส้นทางไปยังพื้นที่แชท DM
คลิก + > รีเซ็ตเซสชัน
คุณจะได้รับข้อความใหม่ที่ยืนยันว่าดำเนินการเสร็จแล้ว
OK, let's start from the beginning, what can I help you with?ส่งข้อความ
Give me ideasคุณได้รับข้อความใหม่พร้อมการตอบกลับของตัวแทน

ส่งข้อความ
I want to go there!หลังจากอัปโหลดรูปภาพสถานที่ใดก็ได้ เช่น หอไอเฟลคุณได้รับข้อความใหม่พร้อมการตอบกลับของตัวแทน

ข้อจำกัด
HTTP
ในแอปพลิเคชัน Google Workspace อื่นๆ นอกเหนือจาก Chat เอเจนต์ AI มีข้อจำกัดต่อไปนี้
เป็นแบบซิงโครนัส: แถบด้านข้างจะอัปเดตได้ก็ต่อเมื่อมีการโต้ตอบของผู้ใช้เท่านั้น ดังนั้นคำตอบของเอเจนต์ AI จะแสดงหลังจากดำเนินการเสร็จสมบูรณ์แล้วเท่านั้น (ไม่มีการสตรีม)
อาจหมดเวลาได้: แถบด้านข้างจะอัปเดตหมดเวลาเมื่อใช้เวลานานกว่าสองสามนาทีในการดำเนินการให้เสร็จสิ้น
ข้อจำกัดเหล่านี้ไม่มีอยู่ในแชท
Apps Script
ในแอปพลิเคชัน Google Workspace ทั้งหมด เอเจนต์ AI จะเรียกใช้ Vertex AI REST API โดยใช้ UrlFetchApp ซึ่งทำให้เกิดข้อจำกัดต่อไปนี้
เป็นแบบซิงโครนัส: ระบบจะแสดงคำตอบของเอเจนต์ AI หลังจากดำเนินการเสร็จสมบูรณ์เท่านั้น (ไม่มีการสตรีม)
อาจหมดเวลา: เอเจนต์ AI จะหมดเวลาเมื่อใช้เวลาดำเนินการนานกว่า 1 นาทีโดยประมาณ
การปรับแต่ง
โซลูชันนี้รองรับเอเจนต์ AI ของ ADK ที่โฮสต์ใน Vertex AI Agent Engine ซึ่งเป็น ชุดย่อยของ UI แอปพลิเคชัน Google Workspace และการแสดงผลการตอบกลับที่เฉพาะเจาะจง สำหรับการตอบกลับของตัวอย่าง Travel Concierge โซลูชันนี้ใช้เฟรมเวิร์กที่ขยายได้ คุณจึงปรับแต่งได้โดยการแก้ไขไฟล์ต่อไปนี้
Python
main.py: กำหนด UI หลักและตรรกะการโต้ตอบของผู้ใช้ (ตัวจัดการเหตุการณ์ Google Workspace) ส่วนขยายทั่วไปจะเป็นการเปิดใช้งานเอกสารไดรฟ์เป็นคุณลักษณะบริบทสำหรับแอปพลิเคชันไดรฟ์ คล้ายกับสิ่งที่ทำกับข้อความ Gmail สำหรับแอปพลิเคชัน Gmail
vertex_ai.py: จัดการเซสชัน คำตอบ ข้อผิดพลาด และ กำหนดอินเทอร์เฟซเฉพาะของ Vertex AI เพื่อนำไปใช้รองรับการโต้ตอบของเอเจนต์ และการแสดงผลคำตอบ โดยส่วนขยายทั่วไปคือการเพิ่มการรองรับหลายเซสชันสำหรับการสนทนาของผู้ใช้แยกกัน และแพลตฟอร์มการจัดการเอเจนต์ AI อื่นๆ
agent_handler.py: นำอินเทอร์เฟซเฉพาะ Vertex AI ที่กำหนดไว้ใน vertex_ai.py ไปใช้ในกรณีเฉพาะของแอปพลิเคชัน Chat และที่ไม่ใช่ Chat ส่วนขยายทั่วไปจะเป็นการเพิ่มปุ่มสำหรับให้ผู้ใช้ส่งข้อเสนอแนะเกี่ยวกับการตอบสนองของตัวแทน AI
google_workspace.py: ใช้การโต้ตอบแพลตฟอร์มการจัดการเอเจนต์ที่ไม่ใช่ AI โดยใช้การเรียก API ในตัวอย่างนี้จะใช้เฉพาะ Google Workspace API เพื่อรวบรวมรายละเอียดบริบทและดำเนินการ ส่วนขยายทั่วไปคือการเพิ่มฟังก์ชันเพื่อดึงข้อมูลธุรกิจจาก Google ปฏิทินหรือการจัดการลูกค้าสัมพันธ์ (CRM)
travel_agent_ui_render.gs: ใช้การแสดงผลการตอบกลับเฉพาะสำหรับ Travel Concierge สำหรับแอปพลิเคชันตัวแทนย่อยและ Workspace ส่วนขยายทั่วไปคือการเพิ่มการรองรับการแสดงผลการตอบกลับใหม่เพื่อ แสดงตัวเลือกเที่ยวบินแบบกราฟิก และเอเจนต์ AI อื่นๆ
Apps Script
Code.gs: กำหนด UI หลักและตรรกะการโต้ตอบของผู้ใช้ (ตัวจัดการเหตุการณ์ Google Workspace) ส่วนขยายทั่วไปจะเป็นการเปิดใช้งานเอกสารไดรฟ์เป็นคุณลักษณะบริบทสำหรับแอปพลิเคชันไดรฟ์ คล้ายกับสิ่งที่ทำกับข้อความ Gmail สำหรับแอปพลิเคชัน Gmail
VertexAi.gs: จัดการเซสชันของตัวแทน AI การตอบสนอง ข้อผิดพลาด และกำหนดอินเทอร์เฟซเฉพาะของ Vertex AI เพื่อนำไปใช้รองรับการโต้ตอบของตัวแทนและการเรนเดอร์การตอบสนอง โดยส่วนขยายทั่วไปคือการเพิ่มการรองรับหลายเซสชันสำหรับการสนทนาของผู้ใช้แยกกัน และแพลตฟอร์มการจัดการเอเจนต์ AI อื่นๆ
AgentHandler.gs: ใช้การติดตั้งใช้งานอินเทอร์เฟซเฉพาะ Vertex AI ที่กำหนดไว้ใน VertexAi.gs ในกรณีเฉพาะของแอปพลิเคชัน Chat และแอปพลิเคชันที่ไม่ใช่ Chat ส่วนขยายทั่วไปคือการเพิ่มปุ่มเพื่อให้ผู้ใช้ส่งความคิดเห็นเกี่ยวกับคำตอบของเอเจนต์ AI
GoogleWorkspace.gs: ใช้การโต้ตอบแพลตฟอร์มการจัดการเอเจนต์ที่ไม่ใช่ AI โดยใช้การเรียก API ในตัวอย่างนี้จะใช้เฉพาะ Google Workspace API เพื่อรวบรวมรายละเอียดบริบทและดำเนินการ ส่วนขยายทั่วไปคือการเพิ่มฟังก์ชันเพื่อดึงข้อมูลธุรกิจจาก Google ปฏิทินหรือการจัดการลูกค้าสัมพันธ์ (CRM)
TravelAgentUiRender.gs: นำการแสดงผลการตอบสนองที่เฉพาะเจาะจงของ Travel Concierge ไปใช้สำหรับตัวแทนย่อยและแอปพลิเคชัน Workspace ส่วนขยายทั่วไปคือการเพิ่มการรองรับการเรนเดอร์การตอบสนองใหม่เพื่อแสดงตัวเลือกการบินและตัวแทน AI อื่นๆ ในรูปแบบกราฟิก
ล้างข้อมูล
เพื่อหลีกเลี่ยงการเรียกเก็บเงินกับบัญชี Google Cloud ของคุณสำหรับทรัพยากรที่ใช้ในการสอนนี้ เราขอแนะนำให้คุณลบโครงการ Cloud
- ใน Google Cloud Console ให้ไปที่หน้าจัดการทรัพยากร คลิก เมนู > IAM และผู้ดูแลระบบ > จัดการทรัพยากร
- ในรายการโครงการ ให้เลือกโครงการที่คุณต้องการลบ จากนั้นคลิกลบ
- ในกล่องโต้ตอบ ให้พิมพ์ ID โปรเจ็กต์ จากนั้นคลิกปิดระบบเพื่อลบโปรเจ็กต์
หัวข้อที่เกี่ยวข้อง
- ตรวจสอบข้อเท็จจริงของคำกล่าวด้วยเอเจนต์ AI ของ ADK และโมเดล Gemini
- บูรณาการแนวคิด AI พื้นฐานในแอปแชท
- สร้างแอปใน Chat เป็นส่วนเสริมของ Google Workspace ด้วย Apps Script