การสร้างตัวแทน AI ด้วย Vertex AI Agent Builder

เกี่ยวกับ Codelab นี้
schedule45 นาที
subjectอัปเดตล่าสุดเมื่อ 7 มีนาคม 2568
account_circleเขียนโดย Thu Ya Kyaw (Googler), Abhishek Sharma (GDE)

โค้ดแล็บแบบเรียนด้วยตนเองนี้จะช่วยแนะนำการสร้างตัวแทน AI ด้วย Vertex AI Agent Builder ของ Google Cloud แต่ละขั้นตอนจะไฮไลต์ฟีเจอร์ที่เฉพาะเจาะจงของเครื่องมือสร้างตัวแทนและอธิบายวัตถุประสงค์ของฟีเจอร์นั้น

  • วิธีสร้างตัวแทน AI ง่ายๆ โดยใช้ Vertex AI Agent Builder
  • วิธีกําหนดค่าตัวแทนที่สร้างขึ้นโดยการแนบที่เก็บข้อมูล
  • วิธีผสานรวมตัวแทน AI เข้ากับเว็บไซต์(ไม่บังคับ)
  • จิตใจที่ใฝ่รู้
  • คอมพิวเตอร์ที่ใช้งานได้และ Wi-Fi ที่เชื่อถือได้
  • โปรเจ็กต์ Google Cloud ที่มีการเรียกเก็บเงินแนบอยู่

หมายเหตุ: หากยังไม่มีโปรเจ็กต์ Google Cloud ให้สร้างโปรเจ็กต์โดยทําตามวิธีการ นอกจากนี้ คุณยังดูบริการรุ่นฟรีของ Google Cloud ได้ด้วย

2. การออกแบบตัวแทน AI ตัวแรก

ตอนนี้คุณก็พร้อมสร้างตัวแทน AI ของคุณเองแล้ว แต่ก่อนที่จะเริ่มพัฒนา คุณควรกำหนดวิสัยทัศน์ที่ชัดเจนสำหรับตัวแทน ลองถามคำถามสำคัญต่อไปนี้กับตัวเอง

  • ปัญหาใดที่จะช่วยแก้ไขได้ เนื้อหาจะทำงานอัตโนมัติ ให้ข้อมูล ให้ความบันเทิง หรือช่วยให้การสำรวจความคิดสร้างสรรค์ง่ายขึ้นไหม
  • ฟังก์ชันหลักมีอะไรบ้าง โปรแกรมจะดําเนินการหรือมอบหมายงาน เครื่องมือจะสร้างข้อความหรือสร้างสื่อต่างๆ ผสมกัน
  • มีข้อจำกัดอะไรบ้าง อุปกรณ์จะทําทุกอย่างได้เองไหม
  • ควรมีบุคลิกหรือภาพลักษณ์แบบใด เนื้อหาจะเป็นทางการ ไม่เป็นทางการ ตลก มีประโยชน์ หรือให้ข้อมูล
  • เมตริกวัดความสําเร็จคืออะไร คุณจะวัดประสิทธิภาพของตัวแทนอย่างไร

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

  • ปัญหาใดที่จะช่วยแก้ไขได้
  • การวางแผนการเดินทางอาจใช้เวลานานและน่าสับสน ตัวแทนท่องเที่ยวรายนี้จะช่วยให้ผู้ใช้ค้นพบจุดหมายปลายทาง วางแผนแผนการเดินทาง จองเที่ยวบิน และที่พัก
  • ฟังก์ชันหลักมีอะไรบ้าง
  • ตัวแทนควรดำเนินการต่อไปนี้ได้
  • ตอบคำถามเกี่ยวกับจุดหมาย เช่น ข้อกำหนดเกี่ยวกับวีซ่า
  • วางแผนแผนการเดินทางที่เหมาะกับกำหนดการและวัตถุประสงค์ของผู้ใช้
  • จองเที่ยวบินและที่พัก
  • มีข้อจำกัดอะไรบ้าง
  • ตัวแทนอาจตอบคำถามที่ซับซ้อนไม่ได้โดยค่าเริ่มต้น
  • ตัวแทนจะสร้างภาพไม่ได้
  • ความรู้ของตัวแทนจะจํากัดตามโมเดลพื้นฐาน
  • ควรมีบุคลิกหรือภาพลักษณ์แบบใด
  • โดยตัวแทนควรมีความรู้ ช่วยเหลือดี และมีความกระตือรือร้นในการท่องเที่ยว ข้อมูลควรสื่อสารได้อย่างชัดเจนและกระชับ
  • เมตริกวัดความสําเร็จคืออะไร
  • ความสำเร็จของตัวแทนรายนี้อาจวัดได้จากระดับความพึงพอใจของผู้ใช้ที่มีต่อคำแนะนำ (การสำรวจ การวางแผน การจอง)

3. การสร้างตัวแทน AI ด้วย Vertex AI Agent Builder

เครื่องมือสร้างตัวแทน Vertex AI ช่วยให้คุณสร้างตัวแทน AI ได้ง่ายๆ ในไม่กี่ขั้นตอน

ขั้นตอนที่ 1:

  • โปรดไปที่ Vertex AI Agent Builder
  • คุณจะเห็นหน้ายินดีต้อนรับ 833886ce0d2645ba.png
  • คลิกปุ่มดำเนินการต่อและเปิดใช้งาน API

ขั้นตอนที่ 2:

  • ระบบจะเปลี่ยนเส้นทางคุณไปยังหน้าการสร้างแอป f2d45cc76d62edeb.png
  • คลิกปุ่มสร้างแอปใหม่

ขั้นตอนที่ 3:

  • เลือกตัวแทนการสนทนา แล้วคลิกสร้าง

732d2cd9e10c9a79.png

หมายเหตุ

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

238281df06301db0.png

  • หากการคลิกปุ่มไม่ทำงาน คุณสามารถเปิดใช้ด้วยตนเองได้โดยไปที่หน้า API โดยตรง
  • ในหน้า Diaglogflow ที่เปิดใหม่ ให้คลิกสร้างตัวแทน

42515e46bc63506d.png

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

8af6bf0853f20768.png

ขั้นตอนที่ 4:

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

4e0dea29e5d8acde.png

ขั้นตอนที่ 5:

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

f8bfd605ddd97cf8.png

ขั้นตอนที่ 6:

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

3ac3cf54a1e2098.png

ยินดีด้วย คุณเพิ่งสร้างตัวแทน AI โดยใช้เครื่องมือสร้างตัวแทน Vertex AI เรียบร้อยแล้ว

4. การแนบที่เก็บข้อมูลกับตัวแทน

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

5baa2dbabe2941a2.png

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

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

หมายเหตุ: หากต้องการปิดเครื่องจำลอง ให้คลิกไอคอนเปิด/ปิดเครื่องจำลองอีกครั้ง

การสร้างพื้นที่เก็บข้อมูลนั้นง่ายมาก เพียงคลิกปุ่ม + พื้นที่เก็บข้อมูลที่ด้านล่างของหน้าข้อมูลเบื้องต้นเกี่ยวกับตัวแทน

6c3ef19fefc46af7.png

กรอกข้อมูลต่อไปนี้

  • ชื่อเครื่องมือ: สถานที่ตั้งอื่น
  • ประเภท: พื้นที่เก็บข้อมูล
  • คำอธิบาย: ใช้เครื่องมือนี้หากคำขอของผู้ใช้มีสถานที่ที่ไม่มีอยู่

คลิกบันทึกเมื่อเสร็จแล้ว

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

65c790a87de8fba8.png

7648d478a6f35cf0.png

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

เลือกตัวเลือกใน Cloud Storage

bff5455fac531509.png

เมื่อทำขั้นตอนนี้เสร็จแล้ว

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

d1983baa579eb78c.png

เนื้อหาของไฟล์ข้อความที่ให้มามีดังนี้

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.

ในหน้าถัดไป ให้ตั้งชื่อที่เก็บข้อมูล (เช่น Wakanda Alternative) แล้วคลิกสร้าง

93eb71e8d019ae24.png

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

de1ac9256cc96f29.png

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

9b5c4a2831728a6b.png

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

a44373b78bd95ff0.png

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

c1605bd076258050.png

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

40082aebe8b82d7c.png

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

1b6b82fd7f30a598.png

e09af18697b0fd7f.png

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

3134d9eadca34e21.png

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

6cdee598391fc82a.png

ยินดีด้วย ตอนนี้ตัวแทนจะแนะนำสถานที่โดยใช้ข้อมูลที่ได้จากไฟล์ข้อความ

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

5. กิจกรรมเพิ่มเติม - เผยแพร่ตัวแทน AI

ในขั้นตอนก่อนหน้า คุณได้พัฒนาตัวแทน AI และปรับให้เข้ากับข้อมูลอ้างอิงที่เกี่ยวข้อง ในส่วนต่อไปนี้ คุณจะได้ทราบวิธีแก้ปัญหาสําคัญเกี่ยวกับวิธีฝังตัวแทนนี้ในเว็บไซต์ ซึ่งจะช่วยให้โต้ตอบกับผู้เข้าชมแบบเรียลไทม์ได้

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

ที่มุมขวาบนของแท็บ Dialogflow ให้คลิกเมนูรายการเพิ่มเติม แล้วคลิกเผยแพร่ตัวแทน

a1b109fa9d7cb51d.png

คงการกําหนดค่าทั้งหมดเป็นค่าเริ่มต้น แล้วคลิกเปิดใช้ API ที่ไม่ผ่านการตรวจสอบสิทธิ์

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

ef0f24db780a185e.png

เมื่อคลิก คุณควรเห็นข้อมูลโค้ด CSS สั้นๆ ดังนี้

c40d12f6207bf5b4.png

เพียงคัดลอกข้อมูลโค้ด คุณจะผสานรวมข้อมูลโค้ดนี้ลงในเว็บไซต์ในภายหลัง

หากต้องการสร้างเว็บไซต์ คุณจะใช้สภาพแวดล้อม Cloud Editor ขั้นตอนในการเปิด Cloud Editor มีดังนี้

  1. เปิด Google Cloud Console ในแท็บอื่น
  2. คลิกปุ่มเปิดใช้งาน Cloud Shell ที่มุมขวาบน
  3. คลิกปุ่มเปิดเครื่องมือแก้ไข

หากมีข้อความแจ้งให้ให้สิทธิ์ Cloud Shell ให้คลิกให้สิทธิ์เพื่อดำเนินการต่อ

d23192eca480f00c.png

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

เมื่อเปิด Cloud Shell Editor แล้ว ให้คลิก Gemini Code Assist และเข้าสู่ระบบโปรเจ็กต์ Google Cloud หากระบบขอให้คุณเปิดใช้ API ให้คลิกเปิดใช้

93112cce3e8d963b.png

เมื่อเสร็จแล้ว ให้ขอให้ Gemini Code Assist สร้างแอป Flask และผสานรวมข้อมูลโค้ดตัวแทน AI เข้ากับแอป

ตัวอย่างพรอมต์ที่คุณใช้ได้มีดังนี้

Here is my Travel buddy Vertex AI agent builder agent publish code snippet,

<REPLACE IT WITH YOUR AI AGENT PUBLISH CODE SNIPPET>

can you create a sample flask app to use it

หมายเหตุ: เราได้ขอให้คุณใช้แอป Python Flask แต่หากต้องการใช้ภาษาโปรแกรมหรือเฟรมเวิร์กอื่น โปรดใช้ได้เลย ฟีเจอร์ช่วยเขียนโค้ดของ Gemini สามารถสร้างภาษาโปรแกรมต่างๆ ได้ ดูรายละเอียดเพิ่มเติมได้ที่ภาษา 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)

3dd3246c5fceb1d4.png

ตามวิธีการที่ระบุ

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

4e58cfcf95f65d38.png

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

b657b535710fd8f3.png

บันทึกไฟล์ (Ctrl + S หรือ CMD + S) แล้วคลิกเปิดเทอร์มินัล ซึ่งคุณจะเรียกใช้โค้ดที่ระบุได้

เรียกใช้คำสั่งด้านล่างในเทอร์มินัล

python app.py

หมายเหตุ: ตรวจสอบว่าคุณอยู่ในโฟลเดอร์ที่ถูกต้องซึ่งมีไฟล์ app.py

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

59ed7b08133b82bf.png

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

35a4b5abdd299efe.png

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

เมื่อพร้อมแล้ว ขั้นตอนถัดไปคือลองโฮสต์ตัวแทน AI นี้ใน Google Cloud เพื่อให้ทุกคนเข้าถึงได้จากทุกที่ ในส่วนที่เหลือของ Codelab นี้ คุณจะทําให้แอปพลิเคชัน Flask ตัวอย่างนี้ใช้งานได้ใน Cloud Run ในรูปแบบคอนเทนเนอร์

หมายเหตุ: การดำเนินการนี้ไม่ได้จำกัดอยู่แค่การเรียกใช้ระบบคลาวด์ (หากคุณไม่ทราบว่าการเรียกใช้ระบบคลาวด์คืออะไร ก็สามารถสอบถามได้) คุณสามารถขอให้ทีมสนับสนุนด้านโค้ดของ Gemini ช่วยคุณติดตั้งใช้งานใน Google Cloud หรือที่ใดก็ได้ตามแนวทางปฏิบัติแนะนำ ทีมดังกล่าวจะช่วยคุณในส่วนนั้นด้วย

กลับไปที่ Cloud Shell Terminal แล้วกด Ctrl + C เพื่อหยุดกระบวนการ คลิกเปิดเครื่องมือแก้ไขอีกครั้ง แล้วขอให้ Gemini Code Assist ช่วยเราจัดคอนเทนเนอร์แอปพลิเคชันและทำให้ใช้งานได้ใน Cloud Run

Can you help me deploy this sample flask app to cloud run service

วิธีการและคำสั่งบางส่วนในการโฮสต์แอปในบริการ Cloud Run โปรดทำตามวิธีการ

ตัวอย่างการตอบกลับเอาต์พุตมีดังนี้

ขั้นตอนในการทำให้ใช้งานได้กับ Cloud Run

  1. ข้อกําหนดเบื้องต้น:
  • บัญชี 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 จึงไม่จำเป็นต้องตั้งค่าโปรเจ็กต์

  1. สร้าง **requirements.txt****:**
  • ไฟล์นี้จะแสดงรายการแพ็กเกจ Python ทั้งหมดที่แอปของคุณต้องใช้ ในไดเรกทอรีโปรเจ็กต์ (ที่มี main.py) ให้สร้างไฟล์ชื่อ requirements.txt แล้วเพิ่มบรรทัดต่อไปนี้
  1. สร้าง **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"]

  1. สร้างอิมเมจ Docker:
  • เปิดเทอร์มินัล ไปที่ไดเรกทอรีโปรเจ็กต์ แล้วเรียกใช้คำสั่งต่อไปนี้

gcloud builds submit –tag gcr.io/bgr-workshop-23rd/travel-buddy

  1. ทำให้ใช้งานได้กับ Cloud Run:
  • หลังจากสร้างและอัปโหลดอิมเมจแล้ว ให้ทำให้ใช้งานได้ใน Cloud Run ด้วยคำสั่งต่อไปนี้

gcloud run deploy travel-buddy --image gcr.io/bgr-workshop-23rd/travel-buddy --region us-central1

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

ยินดีด้วยและขอให้สนุกกับการเรียนรู้

6. ล้าง

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

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