1. ก่อนเริ่มต้น
Codelab แบบเรียนรู้ด้วยตนเองนี้จะแนะนำวิธีสร้างเอเจนต์ AI ด้วย Vertex AI Agent Builder ของ Google Cloud แต่ละขั้นตอนจะไฮไลต์ฟีเจอร์เฉพาะของ Agent Builder และอธิบายวัตถุประสงค์ของฟีเจอร์นั้น
ข้อกำหนดเบื้องต้น
- ความเข้าใจพื้นฐานเกี่ยวกับ Generative AI ใน Google Cloud
- ความเข้าใจพื้นฐานเกี่ยวกับแนวคิดของเอเจนต์ AI
- ความเข้าใจพื้นฐานเกี่ยวกับ Gemini Code Assist (ไม่บังคับ)
สิ่งที่คุณจะได้เรียนรู้
- วิธีสร้าง AI Agent อย่างง่ายโดยใช้เครื่องมือสร้างตัวแทน Vertex AI
- วิธีกำหนดพื้นฐานของเอเจนต์ที่สร้างขึ้นโดยการแนบ Datastore
- วิธีผสานรวมเอเจนต์ AI เข้ากับเว็บไซต์(ไม่บังคับ)
สิ่งที่คุณต้องมี
- จิตใจที่อยากรู้อยากเห็น
- คอมพิวเตอร์ที่ใช้งานได้และ Wi-Fi ที่เชื่อถือได้
- โปรเจ็กต์ Google Cloud ที่มีการเรียกเก็บเงิน
หมายเหตุ: หากยังไม่มีโปรเจ็กต์ Google Cloud คุณสามารถสร้างโปรเจ็กต์ได้โดยทำตามวิธีการ นอกจากนี้ คุณยังดูบริการในรุ่นฟรีของ Google Cloud ได้ด้วย
2. การออกแบบ AI Agent ตัวแรก
ตอนนี้คุณก็พร้อมสร้างเอเจนต์ AI ของคุณเองแล้ว แต่ก่อนที่จะเริ่มพัฒนา คุณต้องกำหนดวิสัยทัศน์ที่ชัดเจนสำหรับเอเจนต์ ถามคำถามสำคัญต่อไปนี้กับตัวคุณเอง
- ฟีเจอร์นี้จะช่วยแก้ปัญหาอะไร จะช่วยทำให้งานเป็นแบบอัตโนมัติ ให้ข้อมูล มอบความบันเทิง หรือช่วยให้สำรวจความคิดสร้างสรรค์ได้ง่ายขึ้นไหม
- ฟังก์ชันหลักของเครื่องมือนี้คืออะไร จะดำเนินการหรืองานมอบหมาย จะสร้างข้อความหรือสร้างการผสมผสานของสื่อต่างๆ
- มีข้อจำกัดอะไรบ้าง และจะทำทุกอย่างได้โดยอัตโนมัติไหม
- ควรมีบุคลิกภาพหรือลักษณะตัวตนแบบใด จะเป็นทางการ ไม่เป็นทางการ ตลก เป็นประโยชน์ หรือให้ข้อมูล
- เมตริกวัดความสำเร็จคืออะไร คุณจะวัดประสิทธิภาพของตัวแทนอย่างไร
เรามีคำตอบสำหรับคำถามเหล่านั้นเพื่อช่วยให้กระบวนการเป็นไปอย่างรวดเร็วสำหรับตัวแทนท่องเที่ยวที่คุณจะสร้างในวันนี้
- ฟีเจอร์นี้จะช่วยแก้ปัญหาอะไร
- การวางแผนการเดินทางอาจใช้เวลานานและทำให้รู้สึกเหนื่อยล้า ตัวแทนท่องเที่ยวนี้จะช่วยให้ผู้ใช้ค้นพบจุดหมายปลายทาง วางแผนการเดินทาง จองเที่ยวบิน และที่พัก
- ฟังก์ชันหลักของเครื่องมือนี้คืออะไร
- ตัวแทนควรทำสิ่งต่อไปนี้ได้
- ตอบคำถามเกี่ยวกับจุดหมาย เช่น ข้อกำหนดด้านวีซ่า
- วางแผนกำหนดการเดินทางที่เหมาะกับตารางเวลาและวัตถุประสงค์ของผู้ใช้
- จองเที่ยวบินและที่พัก
- มีข้อจำกัดอะไรบ้าง
- โดยค่าเริ่มต้นแล้ว ตัวแทนอาจตอบคำถามที่ซับซ้อนไม่ได้
- ตัวแทนจะสร้างรูปภาพไม่ได้
- ความรู้ของเอเจนต์จะถูกจำกัดโดยโมเดลพื้นฐาน
- ควรมีบุคลิกภาพหรือลักษณะตัวตนแบบใด
- ตัวแทนควรมีความรู้ ให้ความช่วยเหลือ และกระตือรือร้นเกี่ยวกับการเดินทาง โดยควรสื่อสารข้อมูลได้อย่างชัดเจนและกระชับ
- เมตริกวัดความสำเร็จคืออะไร
- ความสำเร็จของเอเจนต์นี้อาจวัดได้จากความพึงพอใจของผู้ใช้ที่มีต่อคำแนะนำ (การสำรวจ การวางแผน การจอง)
3. การสร้าง AI Agent ด้วยเครื่องมือสร้างตัวแทน Vertex AI
Vertex AI Agent Builder ช่วยให้สร้าง AI Agent ได้ในไม่กี่ขั้นตอน
ขั้นตอนที่ 1:
- ไปที่ Vertex AI Agent Builder
- คุณควรเห็นหน้าต้อนรับ

- คลิกปุ่มดำเนินการต่อและเปิดใช้งาน API
ขั้นตอนที่ 2:
- ระบบจะเปลี่ยนเส้นทางคุณไปยังหน้าการสร้างแอป

- คลิกปุ่มสร้างแอปใหม่
ขั้นตอนที่ 3:
- เลือกเอเจนต์การสนทนา แล้วคลิกสร้าง

หมายเหตุ
- เมื่อคลิกสร้างแล้ว แท็บใหม่ของเอเจนต์สนทนาของ Dialogflow จะเปิดขึ้น
- หากระบบขอให้คุณเลือกโปรเจ็กต์ Google Cloud โปรดเลือกโปรเจ็กต์ Google Cloud ที่เชื่อมโยงกับบัญชี Gmail ที่ถูกต้อง
- หากคุณทำแล็บนี้ในบัญชีใหม่ ระบบจะขอให้คุณเปิดใช้ Dialogflow API ให้คลิกเปิดใช้ API เพื่อเปิดใช้

- หากคลิกปุ่มแล้วไม่ได้ผล คุณสามารถเปิดใช้ด้วยตนเองได้โดยไปที่หน้า API โดยตรง
- ในหน้า Dialogflow ที่เปิดใหม่ ให้คลิกสร้าง Agent

- ตอนนี้ระบบจะแสดงตัวเลือกในการสร้างเอเจนต์ ให้เลือกสร้างเอง

ขั้นตอนที่ 4:
- เลือกชื่อที่แสดง (เช่น เพื่อนร่วมเดินทาง)
- สำหรับตำแหน่ง ให้เลือกทั่วโลก (การแสดงผลทั่วโลก ข้อมูลที่ไม่มีการเคลื่อนไหวในสหรัฐอเมริกา) เป็นภูมิภาค
- คงการกำหนดค่าอื่นๆ เป็นค่าเริ่มต้น
- คลิกปุ่มสร้าง

ขั้นตอนที่ 5:
- เลือกชื่อ Playbook (เช่น ตัวแทนข้อมูล)
- เพิ่มเป้าหมาย (เช่น ช่วยลูกค้าตอบคำถามเกี่ยวกับการเดินทาง)
- กำหนดวิธีการ (เช่น ทักทายผู้ใช้ แล้วถามว่าวันนี้คุณจะช่วยอะไรได้บ้าง)
- กดบันทึกเมื่อทุกอย่างพร้อมแล้ว

ขั้นตอนที่ 6:
- คลิกไอคอนสลับเครื่องจำลอง

- เลือกเอเจนต์ที่คุณเพิ่งสร้าง (เช่น Info Agent)
- เลือกโมเดล Generative AI พื้นฐานสำหรับ Agent (เช่น gemini-1.5-flash)
- ทดสอบเอเจนต์โดยการสนทนากับเอเจนต์ (เช่น พิมพ์ข้อความในกล่องข้อความ "ป้อนข้อมูลจากผู้ใช้")

ยินดีด้วย คุณสร้าง AI Agent โดยใช้ Vertex AI Agent Builder เรียบร้อยแล้ว
4. การแนบ Datastore กับ Agent
ลองถามเอเจนต์เกี่ยวกับวิธีเดินทางไปวากานดา (เช่น "วิธีที่ดีที่สุดในการเดินทางไปวากานดาคืออะไร") คุณจะได้รับคำตอบดังนี้

แม้ว่าข้อมูลนี้จะถูกต้องตามข้อเท็จจริง แต่แทนที่จะพูดว่า "เราให้ข้อมูลไม่ได้" แล้วจบการสนทนา การแนะนำสถานที่ที่คล้ายกันจะเป็นประโยชน์ต่อผู้ใช้มากกว่า แนวทางนี้อาจทำให้ผู้ใช้จองการเดินทางผ่านตัวแทนจริงๆ
หากต้องการให้เอเจนต์แนะนำสถานที่ที่คล้ายกัน คุณสามารถให้ข้อมูลเพิ่มเติมแก่เอเจนต์ผ่าน Datastore ได้ ซึ่งจะทำหน้าที่เป็นฐานความรู้เพิ่มเติมสำหรับตัวแทนเพื่อใช้อ้างอิงในกรณีที่ตัวแทนไม่สามารถตอบคำถามของผู้ใช้ตามความรู้ที่มีอยู่ได้
หมายเหตุ: หากต้องการปิดเครื่องจำลอง ให้คลิกไอคอนเปิด/ปิดเครื่องจำลองอีกครั้ง
การสร้างพื้นที่เก็บข้อมูลนั้นทำได้ง่าย เพียงคลิกปุ่ม + พื้นที่เก็บข้อมูลที่ด้านล่างของหน้าพื้นฐานของเอเจนต์

กรอกข้อมูลต่อไปนี้
- ชื่อเครื่องมือ: สถานที่ตั้งสำรอง
- ประเภท: ที่เก็บข้อมูล
- คำอธิบาย: ใช้เครื่องมือนี้หากคำขอของผู้ใช้มีตำแหน่งที่ไม่มีอยู่
คลิกบันทึกเมื่อเสร็จสิ้น
ซึ่งจะสร้างเครื่องมือ Datastore ให้ตัวแทนสื่อสารกับ Datastore แต่คุณยังคงต้องสร้าง Datastore จริงที่มีข้อมูล โดยคลิกเพิ่มพื้นที่เก็บข้อมูลและสร้างพื้นที่เก็บข้อมูล


เมื่อคลิกสร้างพื้นที่เก็บข้อมูลใหม่ ระบบจะเปลี่ยนเส้นทางคุณไปยังหน้า Vertex AI Agent Builder ดังที่แสดงด้านล่าง
เลือกตัวเลือกใน Cloud Storage

เมื่อทำตามขั้นตอนเสร็จแล้ว
- คลิกไฟล์ (ขั้นตอนนี้สำคัญมาก มิเช่นนั้นการนำเข้าจะล้มเหลว)
- พิมพ์ ai-workshops/agents/data/wakanda.txt
- คลิกดำเนินการต่อ

หากคุณอยากทราบ เนื้อหาของไฟล์ข้อความที่ระบุมีดังนี้
Places that are similar to Wakanda
- Oribi Gorge in South Africa: The rock formations here are reminiscent of the Warrior Falls in Wakanda.
- Iguazu Falls: Located on the border of Argentina and Brazil, these massive waterfalls were a major inspiration for the Warrior Falls.
- Immerse yourself in Wakandan culture: Read the Black Panther comics, watch the movies, and explore online resources to learn more about Wakandan culture, language, and technology.
- Visit a Disney theme park: While there isn't a dedicated Wakanda land yet, you might be able to meet Black Panther at Disneyland or on a Marvel Day at Sea Disney cruise.
ในหน้าถัดไป ให้ตั้งชื่อ Datastore (เช่น Wakanda Alternative) แล้วคลิกสร้าง

ในขั้นตอนสุดท้าย ให้เลือกแหล่งข้อมูลที่คุณเพิ่งสร้าง แล้วคลิกสร้าง คุณจะดูความคืบหน้าของการนำเข้าที่เก็บข้อมูลได้โดยคลิกที่ที่เก็บข้อมูล**

หมายเหตุ: กิจกรรมการนำเข้าจะต้องใช้เวลาสักระยะจึงจะเสร็จสมบูรณ์ ในระหว่างนี้ คุณสามารถดูตัวเลือกพื้นที่เก็บข้อมูลเพิ่มเติมที่พร้อมใช้งานสำหรับเอเจนต์ Vertex AI ได้ที่นี่

หากทุกอย่างเป็นไปด้วยดี ให้กลับไปที่แท็บ Dialogflow แล้วคลิกรีเฟรช คุณควรเห็น Datastore ที่สร้างขึ้นในหน้าDatastore ที่พร้อมใช้งาน

หากต้องการป้องกันไม่ให้เอเจนต์เกิดอาการหลอน ในการกำหนดค่าการอ้างอิงสำหรับที่เก็บข้อมูล ให้ตั้งค่าเป็นต่ำมาก ซึ่งจะใช้ข้อจำกัดที่เข้มงวดมากขึ้นกับเอเจนต์ในการแต่งเรื่องขึ้นมา ในตอนนี้ให้ใช้ค่าเริ่มต้น แต่คุณสามารถสำรวจการตั้งค่าต่างๆ ได้ทุกเมื่อ

ตอนนี้ ให้เลือกที่เก็บข้อมูลที่เพิ่มเข้ามา คลิกยืนยัน แล้วคลิกบันทึก

ตอนนี้ ให้กลับไปที่หน้าข้อมูลพื้นฐานของเอเจนต์ ที่ด้านล่างของการกำหนดค่า Playbook คุณจะเห็นว่าที่เก็บข้อมูลที่สร้างขึ้นใหม่(เช่น สถานที่ตั้งสำรอง) พร้อมใช้งานแล้ว ให้เลือกที่เก็บข้อมูล (เช่น สถานที่ตั้งสำรอง) แล้วคลิกปุ่มบันทึกที่ด้านบนของหน้า


คุณดำเนินการใกล้จะเสร็จแล้ว ขั้นตอนสุดท้ายคือการรวมเครื่องมือ "ตำแหน่งอื่น" ไว้ในวิธีการของตัวแทน เพิ่มบรรทัด - ใช้ ${TOOL: Alternative Location} หากคำขอของผู้ใช้มีสถานที่ตั้งที่ไม่มีอยู่ ลงในวิธีการของตัวแทน แล้วคลิกบันทึก

ทุกอย่างพร้อมหมดแล้ว มาเปิดโปรแกรมจำลองปุ่มสลับอีกครั้งและถามคำถามเดียวกัน (เช่น วิธีที่ดีที่สุดในการไปถึงวากานดาคืออะไร)

ยินดีด้วย ตอนนี้เอเจนต์แนะนำสถานที่โดยใช้ข้อมูลที่ระบุจากไฟล์ข้อความแล้ว
เพียงเท่านี้ เราก็สร้างเอเจนต์ AI สำหรับเครื่องมือสร้างเอเจนต์ของเราเองเสร็จแล้ว หากต้องการสำรวจเพิ่มเติมในแง่ของการปรับแต่งเอเจนต์เพื่อประสบการณ์การใช้งานที่ดียิ่งขึ้น โปรดดู "กิจกรรมเพิ่มเติม" ด้านล่าง
5. กิจกรรมเพิ่มเติม - ทำให้ AI Agent พร้อมใช้งาน
ในขั้นตอนก่อนหน้า คุณได้พัฒนาเอเจนต์ AI และอิงตามข้อมูลอ้างอิงที่เกี่ยวข้อง ในส่วนต่อไปนี้ คุณจะได้ทราบคำตอบของคำถามสำคัญเกี่ยวกับวิธีฝังเอเจนต์นี้ภายในเว็บไซต์ ซึ่งจะช่วยให้โต้ตอบกับผู้เข้าชมได้แบบเรียลไทม์
คุณเปิดเผยเอเจนต์ได้หลายวิธี คุณจะส่งออกหรือเผยแพร่โดยตรงก็ได้ คุณสามารถดูตัวเลือกที่เป็นไปได้ในเอกสารประกอบ
ที่มุมขวาบนของแท็บ Dialogflow ให้คลิกเมนูโอเวอร์โฟลว์ แล้วคลิกเผยแพร่เอเจนต์

คงการกำหนดค่าทั้งหมดเป็นค่าเริ่มต้น แล้วคลิกเปิดใช้ API ที่ไม่มีการตรวจสอบสิทธิ์
หมายเหตุ: การเปิดใช้ API ที่ไม่มีการตรวจสอบสิทธิ์มีไว้เพื่อวัตถุประสงค์ในการสาธิตเท่านั้น และไม่แนะนำให้ใช้การกำหนดค่านี้สำหรับปริมาณงานที่ใช้งานจริง หากสนใจเผยแพร่อย่างปลอดภัย โปรดดูเอกสารประกอบนี้

เมื่อคลิก คุณจะเห็นข้อมูลโค้ด CSS ขนาดเล็กดังนี้

เพียงคัดลอกข้อมูลโค้ด คุณจะผสานรวมข้อมูลโค้ดนี้เข้ากับเว็บไซต์ในภายหลัง
หากต้องการสร้างเว็บไซต์ คุณจะต้องใช้สภาพแวดล้อมของ Cloud Editor ขั้นตอนการเปิด Cloud Editor มีดังนี้
- เปิด Google Cloud Console ในแท็บอื่น
- คลิกปุ่มเปิดใช้งาน Cloud Shell ที่มุมขวาบน
- คลิกปุ่มเปิดตัวแก้ไข
หากมีข้อความแจ้งให้ให้สิทธิ์ Cloud Shell ให้คลิกให้สิทธิ์เพื่อดำเนินการต่อ

ในส่วนต่อไปนี้ คุณจะใช้ Gemini Code Assist เพื่อสร้างเว็บแอปพลิเคชัน Flask ของ Python ตัวอย่างเพื่อผสานรวมกับข้อมูลโค้ด Agent
เมื่อเปิด Cloud Shell Editor แล้ว ให้คลิก Gemini Code Assist แล้วเข้าสู่ระบบโปรเจ็กต์ Google Cloud หากระบบขอให้คุณเปิดใช้ API ให้คลิกเปิดใช้

เมื่อเสร็จแล้ว ให้ขอให้ Gemini Code Assist สร้างแอป Flask และผสานรวมข้อมูลโค้ดของเอเจนต์ AI เข้ากับแอป
นี่คือตัวอย่างพรอมต์ที่คุณใช้ได้
Here ismyTravelbuddyVertexAIagentagentbuilderpublishcodesnippet,
<REPLACE IT WITH YOUR AI AGENT PUBLISH CODE SNIPPET>
can you create a sample flask app to use it
หมายเหตุ: ในที่นี้เราได้ขอแอป Flask ของ Python หากคุณต้องการใช้ภาษาโปรแกรมหรือเฟรมเวิร์กอื่น โปรดใช้ได้ตามสะดวก Gemini Code Assist มีความสามารถในการสร้างภาษาโปรแกรมต่างๆ ดูรายละเอียดเพิ่มเติมได้ที่ภาษา, IDE และอินเทอร์เฟซที่รองรับ
คุณจะเห็นว่าข้อมูลโค้ดที่ระบุได้ผสานรวมกับเอเจนต์ AI แล้ว หากต้องการทดสอบว่าโค้ดที่ให้มานั้นถูกต้องและทำงานได้ตามที่ต้องการหรือไม่ คุณสามารถทำตามวิธีการที่ Gemini Code Assist ระบุเกี่ยวกับวิธีรันโค้ดส่วนนี้ของคำตอบเอาต์พุต
ตัวอย่างข้อมูลโค้ดการตอบกลับของเอาต์พุต -
from flask import Flask, render_template_string
app = Flask(__name__)
# HTML template string with the provided Dialogflow Messenger code
html_template = """
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Travel Buddy Chatbot</title>
<link rel="stylesheet" href="https://www.gstatic.com/dialogflow-console/fast/df-messenger/prod/v1/themes/df-messenger-default.css">
<script src="https://www.gstatic.com/dialogflow-console/fast/df-messenger/prod/v1/df-messenger.js"></script>
<style>
df-messenger {
z-index: 999;
position: fixed;
--df-messenger-font-color: #000;
--df-messenger-font-family: Google Sans;
--df-messenger-chat-background: #f3f6fc;
--df-messenger-message-user-background: #d3e3fd;
--df-messenger-message-bot-background: #fff;
bottom: 16px;
right: 16px;
}
body {
font-family: sans-serif;
margin: 20px;
}
</style>
</head>
<body>
<h1>Welcome to Travel Buddy!</h1>
<p>Start chatting with our AI Travel buddy, in the bottom right corner.</p>
<df-messenger
project-id="<SAMPLE>"
agent-id="<SAMPLE>"
language-code="en"
max-query-length="-1">
<df-messenger-chat-bubble
chat-title="Travel Buddy">
</df-messenger-chat-bubble>
</df-messenger>
</body>
</html>
"""
@app.route("/")
def index():
"""Renders the HTML template with the Dialogflow Messenger."""
return render_template_string(html_template)
if __name__ == "__main__":
app.run(debug=True)

ตามคำสั่งที่ระบุ
- คัดลอกข้อมูลโค้ดแอป Flask ตัวอย่างที่ให้ไว้
- สร้างไฟล์ใหม่ชื่อ app.py แล้วบันทึกไฟล์

ในขั้นตอนถัดไป ระบบจะขอให้ติดตั้ง Flask เพื่อเรียกใช้ข้อมูลโค้ดนี้ ซึ่งตอนนี้ยังไม่จำเป็นเนื่องจาก Cloud Shell มีการติดตั้งยูทิลิตีที่ใช้กันโดยทั่วไปทั้งหมดไว้แล้วโดยค่าเริ่มต้น

บันทึกไฟล์ (Ctrl + S หรือ CMD + S) แล้วคลิกเปิดเทอร์มินัล ซึ่งคุณจะเรียกใช้โค้ดที่ให้ไว้
เรียกใช้คำสั่งด้านล่างในเทอร์มินัล
python app.py
หมายเหตุ: ตรวจสอบว่าคุณอยู่ในโฟลเดอร์ที่ถูกต้องซึ่งมีไฟล์ app.py
แอป Python Flask จะทำงานในพอร์ต 5000 หากต้องการดูตัวอย่างเว็บแอปพลิเคชันนี้ ให้คลิกไอคอนตัวอย่างเว็บใน Cloud Shell จากนั้นคลิกเปลี่ยนพอร์ต ป้อน 5000 แล้วคลิกเปลี่ยนและแสดงตัวอย่างเพื่อบันทึก

เว็บไซต์ตัวอย่างจะปรากฏขึ้นและจะมี AI Agent พร้อมใช้งานอยู่แล้ว เพียงคลิกที่เอเจนต์ AI แล้วเริ่มแชทได้เลย

คุณสามารถทดสอบด้วยพรอมต์ต่างๆ ได้ นอกจากนี้ คุณยังขอให้ Gemini Code Assist จัดรูปแบบเว็บไซต์ หรือเพิ่มข้อมูลพื้นฐานให้กับเอเจนต์ AI และทำให้เอเจนต์มีประโยชน์มากขึ้นได้ด้วย
เมื่อพร้อมแล้ว ขั้นตอนถัดไปคือการลองโฮสต์เอเจนต์ AI นี้ใน Google Cloud เพื่อให้ทุกคนเข้าถึงได้จากทุกที่ สำหรับส่วนที่เหลือของ Codelab นี้ คุณจะทำให้แอปพลิเคชัน Flask ตัวอย่างนี้ใช้งานได้ใน Cloud Run เป็นคอนเทนเนอร์
หมายเหตุ: ไม่ได้จำกัดเฉพาะ Cloud Run (หากไม่ทราบว่า Cloud Run คืออะไร คุณก็ถามได้) คุณสามารถขอให้ Gemini Code Assist ช่วยคุณในการติดตั้งใช้งานนี้ใน Google Cloud หรือที่ใดก็ได้ตามแนวทางปฏิบัติแนะนำ ซึ่งจะช่วยคุณในส่วนนั้นได้เช่นกัน
กลับไปที่เทอร์มินัล Cloud Shell แล้วกด Ctrl + C เพื่อหยุดกระบวนการ คลิกเปิดโปรแกรมแก้ไขอีกครั้ง แล้วขอให้ Gemini Code Assist ช่วยเราสร้างคอนเทนเนอร์ของแอปพลิเคชันและทำให้ใช้งานได้ใน Cloud Run
Can youhelpmedeploythissampleflaskapptocloudrunservice
โดยจะมีวิธีการและคำสั่งบางอย่างให้ทำตามเพื่อโฮสต์แอปในบริการ Cloud Run โปรดทำตามวิธีการ
นี่คือตัวอย่างการตอบกลับเอาต์พุต
ขั้นตอนการติดตั้งใช้งานใน Cloud Run
- ข้อกำหนดเบื้องต้น
- บัญชี Google Cloud: คุณต้องมีบัญชี Google Cloud ที่เปิดใช้การเรียกเก็บเงิน
- gcloud CLI: ติดตั้งและเริ่มต้น Google Cloud SDK (gcloud CLI) ในเครื่องของคุณ คุณจะใช้สิ่งนี้เพื่อโต้ตอบกับ Google Cloud จากเทอร์มินัล
- Docker: ติดตั้ง Docker ในเครื่องของคุณ Cloud Run ใช้ Docker เพื่อสร้างคอนเทนเนอร์แอปพลิเคชัน
- การตั้งค่าโปรเจ็กต์: ตรวจสอบว่าคุณได้เลือกโปรเจ็กต์ Google Cloud ใน gcloud CLI แล้ว คุณตรวจสอบได้ที่
gcloud config list projectและตั้งค่าได้ที่gcloud config set project YOUR_PROJECT_ID
หมายเหตุ: เนื่องจากเราจะดำเนินการทั้งหมดนี้ใน Cloud Shell จึงไม่จำเป็นต้องตั้งค่าโปรเจ็กต์
- สร้าง **
requirements.txt****:**
- ไฟล์นี้แสดงรายการแพ็กเกจ Python ทั้งหมดที่แอปของคุณต้องการ ในไดเรกทอรีโปรเจ็กต์ (ที่
main.pyอยู่) ให้สร้างไฟล์ชื่อrequirements.txtแล้วเพิ่มบรรทัดต่อไปนี้
- สร้าง **
Dockerfile****:**
Dockerfileจะกำหนดวิธีสร้างอิมเมจ Docker สำหรับแอปพลิเคชัน สร้างไฟล์ชื่อDockerfile(ไม่มีนามสกุล) ในไดเรกทอรีโปรเจ็กต์ แล้วเพิ่มเนื้อหาต่อไปนี้
# Use an official Python runtime as a parent imageFROM python:3.9-slim-buster
# Set the working directory to /appWORKDIR /app
# Copy the current directory contents into the container at /app
COPY . /app
# Install any needed packages specified in requirements.txt
RUN pip install --no-cache-dir -r requirements.txt
# Make port 5000 available to the world outside this container
EXPOSE 5000
# Define environment variable
ENV NAME World
# Run app.py when the container launches
CMD ["python", ".py"]
- สร้างอิมเมจ Docker:
- เปิดเทอร์มินัล ไปที่ไดเรกทอรีโปรเจ็กต์ แล้วเรียกใช้คำสั่งต่อไปนี้
gcloud builds submit –tag gcr.io/bgr-workshop-23rd/travel-buddy
- ทำให้ใช้งานได้กับ Cloud Run
- หลังจากสร้างและอัปโหลดอิมเมจแล้ว ให้ทําให้อิมเมจใช้งานได้ใน Cloud Run ด้วยคําสั่งต่อไปนี้
gcloud run deploy travel-buddy --image gcr.io/bgr-workshop-23rd/travel-buddy --region us-central1
เมื่อทำตามขั้นตอนเหล่านี้เสร็จแล้ว คุณจะเห็นว่าแอปพลิเคชันที่มีเอเจนต์ AI แบบผสานรวมจะพร้อมใช้งานสำหรับผู้ใช้ปลายทาง
ขอแสดงความยินดีและขอให้สนุกกับการเรียนรู้
6. ล้าง
โปรดทำตามขั้นตอนต่อไปนี้เพื่อเลี่ยงไม่ให้เกิดการเรียกเก็บเงินกับบัญชี Google Cloud สำหรับทรัพยากรที่ใช้ในโค้ดแล็บนี้
- ใน Google Cloud Console ให้ไปที่หน้าจัดการทรัพยากร
- ในรายการโปรเจ็กต์ ให้เลือกโปรเจ็กต์ที่ต้องการลบ แล้วคลิกลบ
- ในกล่องโต้ตอบ ให้พิมพ์รหัสโปรเจ็กต์ แล้วคลิกปิดเพื่อลบโปรเจ็กต์
- หรือคุณจะไปที่ Cloud Run ในคอนโซล เลือกบริการที่คุณเพิ่งติดตั้งใช้งาน แล้วลบก็ได้