ระดับการเขียนโค้ด: ขั้นสูง
ระยะเวลา: 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 ที่ผู้ใช้เข้าถึงได้โดยตรงใน Chat, 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 ทั้งหมด ผู้ใช้สามารถรีเซ็ตเซสชันด้วยตนเองเพื่อเริ่มการสนทนาใหม่
การรับส่งข้อความริชมีเดีย: ผู้ใช้ส่งข้อความและรับการตอบกลับด้วยข้อความริชมีเดีย และวิดเจ็ตการ์ด
การจัดการข้อผิดพลาด: ข้อผิดพลาดที่ไม่คาดคิดจะได้รับการจัดการอย่างเหมาะสมโดยใช้ การลองใหม่และสถานะที่กำหนดค่าได้ในการตอบกลับ
แอป Chat มีฟีเจอร์เพิ่มเติมต่อไปนี้
การรับส่งข้อความของผู้ใช้แบบมัลติโมดัล: ผู้ใช้สามารถส่งข้อความพร้อมไฟล์แนบ ซึ่งรวมถึงเสียงและวิดีโอที่บันทึกจากพื้นที่ใน Chat โดยตรง
คำตอบที่ดูดีขึ้น: ระบบสามารถสร้างคำตอบด้วยวิดเจ็ตขั้นสูงมากขึ้น เช่น ภาพสไลด์ที่มีรูปภาพ โดยอาศัยฟีเจอร์แชทเท่านั้นของเฟรมเวิร์ดการ์ดและพื้นที่การแสดงผลที่มากขึ้น
แอปพลิเคชันอื่นๆ มีฟีเจอร์เพิ่มเติมต่อไปนี้
บริบทของโปรไฟล์ Google: ผู้ใช้สามารถส่งข้อความพร้อมข้อมูลโปรไฟล์ (จำกัดเฉพาะวันเกิดในตัวอย่างนี้)
บริบทของ Gmail: ผู้ใช้สามารถส่งข้อความพร้อมอีเมล (จำกัดไว้ที่ 1 เรื่อง และเนื้อหาในตัวอย่างนี้)
สิทธิ์เข้าถึงพื้นที่ Chat ของตัวแทน: ผู้ใช้สามารถเปิดพื้นที่ข้อความส่วนตัว (DM) ของแอป Chat ในแท็บใหม่ได้ด้วยการคลิกปุ่มเพียงปุ่มเดียว
สถาปัตยกรรม
แอปพลิเคชัน Travel Concierge จะรับและประมวลผล เหตุการณ์การโต้ตอบของส่วนเสริม Google Workspace จากแอปพลิเคชัน Google Workspace ใช้ Vertex AI เพื่อแจ้งเอเจนต์ AI ของ ADK และจัดการเซสชันของผู้ใช้ และใช้ API ของ Google Cloud และ Google Workspace เพื่อรวบรวม บริบทและแสดงคำตอบ
แผนภาพต่อไปนี้แสดงโฟลว์ของผู้ใช้หลักๆ ซึ่งก็คือการส่งข้อความไปยังเอเจนต์ AI
HTTP
รูปที่ 3 แอป Chat จะเติมเต็มบริบทด้วยไฟล์แนบจากข้อความของผู้ใช้ และส่งชุดข้อความพร้อมประวัติการโต้ตอบของเอเจนต์ย่อยและคำตอบโดยรวมสุดท้ายตามลำดับเวลา
รูปที่ 4 แอปพลิเคชันที่ไม่ใช่แชทจะเติมเต็มบริบทด้วยโปรไฟล์ Google ของผู้ใช้และการเลือกรายการ แล้วแสดงชุดส่วนที่มีประวัติการโต้ตอบของตัวแทนย่อยและคำตอบโดยรวมสุดท้ายตามลำดับเวลาแบบย้อนหลัง
Apps Script
รูปที่ 3 แอป Chat จะเติมเต็มบริบทด้วยไฟล์แนบจากข้อความของผู้ใช้ และส่งชุดข้อความพร้อมประวัติการโต้ตอบของเอเจนต์ย่อยและคำตอบโดยรวมสุดท้ายตามลำดับเวลา
รูปที่ 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 Console จะนำคุณไปยังหน้าแดชบอร์ดและสร้างโปรเจ็กต์ภายในไม่กี่นาที
gcloud CLI
ในสภาพแวดล้อมการพัฒนาอย่างใดอย่างหนึ่งต่อไปนี้ ให้เข้าถึง Google Cloud
CLI (gcloud)
-
Cloud Shell: หากต้องการใช้เทอร์มินัลออนไลน์ที่มีการตั้งค่า gcloud CLI ไว้แล้ว
ให้เปิดใช้งาน Cloud Shell
เปิดใช้งาน Cloud Shell -
เชลล์ภายในเครื่อง: หากต้องการใช้สภาพแวดล้อมการพัฒนาภายใน
ติดตั้งและ
เริ่มต้น
gcloud CLI
หากต้องการสร้างโปรเจ็กต์ Cloud ให้ใช้คำสั่งgcloud projects create แทนที่ PROJECT_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 ของ Travel Concierge ADK
หากยังไม่ได้ดำเนินการ ให้ตรวจสอบสิทธิ์ด้วยบัญชี 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ดึงหมายเลขโปรเจ็กต์และรหัสเครื่องยนต์จากบันทึกที่พิมพ์ล่าสุดเป็น PROJECT_NUMBER และ ENGINE_ID ตามลำดับ คุณจะต้องใช้ทั้ง 2 รายการนี้ในภายหลังเพื่อกำหนดค่าโปรเจ็กต์
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 - ในรายการภูมิภาค ให้เลือกตำแหน่งของโปรเจ็กต์ที่อยู่ในระบบคลาวด์ที่คุณสร้าง 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 ที่คุณ ติดตั้งใช้งาน
คลิกปุ่มต่อไปนี้เพื่อเปิดโปรเจ็กต์ Apps Script ของ Travel Concierge ADK AI Agent
เปิดโปรเจ็กต์คลิก ภาพรวม แล้วคลิก
ทำสำเนา
ตั้งชื่อสำเนาโปรเจ็กต์ Apps Script โดยทำดังนี้
- คลิก Copy of Travel Concierge ADK AI Agent
- ในชื่อโปรเจ็กต์ ให้พิมพ์
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
ติดตั้งใช้งานใน Chat
Python
ติดตั้งโปรเจ็กต์ตัวอย่างใน Chat โดยใช้URL ของปลายทาง เพื่อเปิดใช้การทดสอบ
ในคอนโซล ให้ค้นหา
Google Chat APIคลิก Google Chat API แล้วคลิกจัดการและ การกำหนดค่าตั้งค่าแอป Chat โดยทำดังนี้
- ในช่องชื่อแอป ให้ป้อน
Travel ADK AI Agent - ในช่อง URL อวตาร ให้ป้อน
https://goo.gle/3SfMkjb - ในช่องคำอธิบาย ให้ป้อน
Travel ADK AI Agent - ในส่วนการตั้งค่าการเชื่อมต่อ ให้เลือก URL ของปลายทาง HTTP
- ในส่วนทริกเกอร์ ให้เลือก ใช้ URL ปลายทาง HTTP ทั่วไปสำหรับทริกเกอร์ทั้งหมด
- ในช่อง HTTP Endpoint URL ให้วาง Endpoint URL ที่ คัดลอกไว้ก่อนหน้านี้ BASE_URL
- ลงทะเบียนคำสั่งด่วนที่แอป Chat ที่ใช้งานได้เต็มรูปแบบใช้ ดังนี้
- ในส่วนคำสั่ง ให้คลิกเพิ่มคำสั่ง
- ในรหัสคำสั่ง ให้พิมพ์
1 - ในคำอธิบาย ให้พิมพ์
Reset session - ในส่วนประเภทคำสั่ง ให้เลือกคำสั่งด่วน
- ในส่วนชื่อ ให้พิมพ์
Reset session - คลิกเสร็จสิ้น ระบบจะลงทะเบียนและแสดงคำสั่งด่วน
- ในส่วนระดับการเข้าถึง ให้เลือกทำให้แอป Chat นี้พร้อมใช้งานสำหรับ บุคคลและกลุ่มที่เฉพาะเจาะจงในโดเมน Workspace ของคุณ แล้วป้อน อีเมล
- ในส่วนบันทึก ให้เลือกบันทึกข้อผิดพลาดไปยังการบันทึก
- คลิกบันทึก
- ในช่องชื่อแอป ให้ป้อน
Apps Script
ติดตั้งโปรเจ็กต์ Apps Script ใน Chat โดยใช้รหัสการทำให้ใช้งานได้ของ Head เพื่อเปิดใช้การทดสอบ
ในโปรเจ็กต์ Apps Script ให้คลิกทำให้ใช้งานได้ > ทดสอบการทำให้ใช้งานได้ แล้วคลิก
คัดลอกในส่วนรหัสการทำให้ใช้งานได้ของเวอร์ชันล่าสุด
ในคอนโซล ให้ค้นหา
Google Chat APIคลิก Google Chat API แล้วคลิกจัดการและ การกำหนดค่าตั้งค่าแอป Chat โดยทำดังนี้
- ในช่องชื่อแอป ให้ป้อน
Travel ADK AI Agent - ในช่อง URL อวตาร ให้ป้อน
https://goo.gle/3SfMkjb - ในช่องคำอธิบาย ให้ป้อน
Travel ADK AI Agent - เลือก Apps Script ในส่วนการตั้งค่าการเชื่อมต่อ
- ในช่องรหัสการติดตั้งใช้งาน ให้วางรหัสการติดตั้งใช้งานส่วนหัวที่คุณคัดลอกไว้ก่อนหน้านี้
- ลงทะเบียนคำสั่งด่วนที่แอป Chat ที่ใช้งานได้เต็มรูปแบบใช้ ดังนี้
- ในส่วนคำสั่ง ให้คลิกเพิ่มคำสั่ง
- ในรหัสคำสั่ง ให้พิมพ์
1 - ในคำอธิบาย ให้พิมพ์
Reset session - ในส่วนประเภทคำสั่ง ให้เลือกคำสั่งด่วน
- ในส่วนชื่อ ให้พิมพ์
Reset session - คลิกเสร็จสิ้น ระบบจะลงทะเบียนและแสดงคำสั่งด่วน
- ในส่วนระดับการเข้าถึง ให้เลือกทำให้แอป Chat นี้พร้อมใช้งานสำหรับ บุคคลและกลุ่มที่เฉพาะเจาะจงในโดเมน Workspace ของคุณ แล้วป้อน อีเมล
- ในส่วนบันทึก ให้เลือกบันทึกข้อผิดพลาดไปยังการบันทึก
- คลิกบันทึก
- ในช่องชื่อแอป ให้ป้อน
ตอนนี้คุณเข้าถึงแอปได้จาก 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! - บริบท: เลือกอีเมลปัจจุบัน
แถบด้านข้างจะอัปเดตตามคำตอบของเอเจนต์

- ข้อความ:
คลิกเปิด Chat เพื่อเปลี่ยนเส้นทางไปยังพื้นที่ DM ของ Chat
คลิก + > รีเซ็ตเซสชัน
คุณจะได้รับข้อความใหม่ที่ยืนยันว่าดำเนินการเสร็จแล้ว
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 จะแสดงหลังจากดำเนินการเสร็จสมบูรณ์แล้วเท่านั้น (ไม่มีการสตรีม)
อาจหมดเวลา: แถบด้านข้างจะหมดเวลาอัปเดตเมื่อใช้เวลามากกว่า 2-3 นาทีจึงจะเสร็จสมบูรณ์
แต่จะไม่มีข้อจำกัดเหล่านี้ใน Chat
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 ในกรณีเฉพาะของแอปพลิเคชันแชทและแอปพลิเคชันที่ไม่ใช่แชท ส่วนขยายทั่วไปคือการเพิ่มปุ่มเพื่อให้ผู้ใช้ส่งความคิดเห็นเกี่ยวกับ คำตอบของเอเจนต์ 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: ใช้การเรียก API เพื่อดำเนินการโต้ตอบกับแพลตฟอร์มการจัดการเอเจนต์ที่ไม่ใช่ AI ในตัวอย่างนี้จะใช้เฉพาะ Google Workspace API เพื่อรวบรวมรายละเอียดบริบทและดำเนินการ ส่วนขยายทั่วไปคือการเพิ่มฟังก์ชันเพื่อดึงข้อมูลธุรกิจจาก Google ปฏิทินหรือการจัดการลูกค้าสัมพันธ์ (CRM)
TravelAgentUiRender.gs: ใช้การแสดงผลการตอบกลับเฉพาะตัวแทนการเดินทาง สำหรับตัวแทนย่อยและแอปพลิเคชัน Workspace ส่วนขยายทั่วไปคือการเพิ่มการรองรับการแสดงผลการตอบกลับใหม่เพื่อ แสดงตัวเลือกเที่ยวบินแบบกราฟิก และเอเจนต์ AI อื่นๆ
ล้างข้อมูล
เราขอแนะนำให้คุณลบโปรเจ็กต์ Cloud เพื่อหลีกเลี่ยงการเรียกเก็บเงินจากบัญชี Google Cloud สำหรับทรัพยากรที่ใช้ในบทแนะนำนี้
- ใน Google Cloud Console ให้ไปที่หน้าจัดการทรัพยากร คลิก เมนู > IAM และผู้ดูแลระบบ > จัดการทรัพยากร
- ในรายการโปรเจ็กต์ ให้เลือกโปรเจ็กต์ที่ต้องการลบ แล้วคลิก ลบ
- ในกล่องโต้ตอบ ให้พิมพ์รหัสโปรเจ็กต์ แล้วคลิกปิดเพื่อลบ โปรเจ็กต์
หัวข้อที่เกี่ยวข้อง
- ตรวจสอบข้อเท็จจริงของคำกล่าวด้วยเอเจนต์ AI ของ ADK และโมเดล Gemini
- ผสานรวมแนวคิดพื้นฐานเกี่ยวกับ AI ในแอปใน Chat
- ตอบคำถามตามการสนทนาในแชทด้วยแอป Gemini AI Chat
- ตอบสนองต่อเหตุการณ์ด้วย Google Chat, Vertex AI, Apps Script และการตรวจสอบสิทธิ์ผู้ใช้
- จัดการโปรเจ็กต์ด้วย Google Chat, Vertex AI และ Firestore
- สร้างแอปใน Chat เป็นส่วนเสริมของ Google Workspace ด้วย Apps Script