จากไอเดียสู่การเปิดตัว: แอปพลิเคชันแรกของคุณบน Google Cloud ในปี 2025

1. พิมพ์เขียว การวางรากฐาน

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

โปรเจ็กต์ Google Cloud คืออะไร

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

แม้ว่าวันนี้เราจะมุ่งเน้นที่โปรเจ็กต์ แต่การทำความเข้าใจว่าโปรเจ็กต์อยู่ในโครงสร้างที่ใหญ่ขึ้นซึ่งบริษัทต่างๆ ใช้ก็เป็นประโยชน์ Google Cloud จัดระเบียบทุกอย่างในลำดับชั้นจากบนลงล่างที่ชัดเจน

Organization (The entire Corporation, e.g., "MegaCorp Inc.")
└── Folders (The Corporate Divisions, e.g., "Research & Development")
    ├── Project (A specific team's lab, e.g., "Project Phoenix - R&D")
    │   └── Resources (The tools in the lab, e.g., a specific server)
    └── Project (Another team's workshop, e.g., "Q4 Marketing Campaign")
        └── Resources (The tools for that campaign, e.g., a storage bucket)

ลำดับชั้นดังกล่าวมีระดับต่างๆ ดังนี้

  1. โหนดองค์กร:
    • นี่คือสำนักงานใหญ่ของบริษัททั้งบริษัท (เช่น yourcompany.com) ซึ่งอยู่ด้านบนสุดและเป็นที่ตั้งค่านโยบายด้านความปลอดภัยและการเรียกเก็บเงินทั่วทั้งบริษัท สำหรับการทดลองใช้ฟรีของ Google Cloud โดยปกติแล้วคุณจะดำเนินการโดยไม่มีโหนดองค์กร ซึ่งเหมาะสำหรับการเรียนรู้
  2. โฟลเดอร์:
    • ซึ่งเป็นกองหรือแผนกภายในบริษัท (เช่น วิศวกรรม การเงิน) ซึ่งเป็นเลเยอร์ที่ไม่บังคับที่ใช้ในการจัดกลุ่มโปรเจ็กต์และใช้นโยบายกับทั้งทีมพร้อมกัน เราจะไม่ใช้โฟลเดอร์ในเวิร์กช็อปนี้
  3. โปรเจ็กต์ (สิ่งที่เรามุ่งเน้น):
    • นี่คือเวิร์กช็อปหรือแล็บของทีมที่เฉพาะเจาะจง งานจริงจะเกิดขึ้นที่นี่ และเป็นระดับที่สำคัญที่สุดสำหรับเวิร์กช็อปของเรา ทรัพยากรทั้งหมดที่คุณสร้างต้องอยู่ในโปรเจ็กต์ นอกจากนี้ โปรเจ็กต์ยังเป็นระดับที่คุณเปิดใช้ API (บริการ) และลิงก์บัญชีสำหรับการเรียกเก็บเงินด้วย
  4. แหล่งข้อมูล:
    • ซึ่งเป็นเครื่องมือและเครื่องจักรแต่ละชิ้นภายในเวิร์กช็อป แอปพลิเคชัน Cloud Run ที่เราจะติดตั้งใช้งานคือทรัพยากร เครื่องเสมือน ฐานข้อมูล หรือที่เก็บข้อมูลของพื้นที่เก็บข้อมูลเป็นตัวอย่างของทรัพยากร

ลงมือปฏิบัติ: สร้างและกำหนดค่าโปรเจ็กต์

  • รับเครดิต goo.gle/devfest-boston-ai/ และยอมรับข้อกำหนดในการให้บริการของ Google Cloud Platform เมื่อใช้แล้ว คุณจะเห็นข้อความที่แสดงว่าระบบได้ใช้เครดิตแล้ว ใช้เครดิตแล้ว
  • ไปที่
  • ในแถบนำทางด้านบน ให้คลิกเลือกโปรเจ็กต์ แล้วคลิกโปรเจ็กต์ใหม่ ค้นหาโปรเจ็กต์
  • ตั้งชื่อโปรเจ็กต์ให้ไม่ซ้ำกัน (เช่น idea-to-launch-yourname) แล้วคลิกสร้าง เลือก "ไม่มีองค์กร" โปรเจ็กต์ใหม่
  • ตรวจสอบว่าได้เลือกโปรเจ็กต์ใหม่จากเมนูแบบเลื่อนลงที่ด้านบนของหน้าแล้ว

เหตุใดการเรียกเก็บเงินจึงสำคัญ

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

ลงมือปฏิบัติ: ลิงก์บัญชีสำหรับการเรียกเก็บเงิน

  • ไปที่
  • คลิกลิงก์บัญชีสำหรับการเรียกเก็บเงิน ลิงก์การเรียกเก็บเงิน
  • เลือกบัญชีสำหรับการเรียกเก็บเงินของ Google Cloud Platform เวอร์ชันทดลองใช้งานจากเมนูแบบเลื่อนลง แล้วคลิก "ตั้งค่าบัญชี" (หากไม่เห็นเมนูแบบเลื่อนลง ให้รอ 1 นาทีเพื่อให้ระบบใช้เครดิต แล้วโหลดหน้าเว็บซ้ำ)

ลงมือปฏิบัติ: ตั้งค่าการแจ้งเตือนงบประมาณ (แนวทางปฏิบัติแนะนำ)

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

  1. คลิกงบประมาณและการแจ้งเตือนในเมนูด้านซ้ายของหน้าการเรียกเก็บเงิน
  2. ที่ด้านบนของหน้า ให้คลิก + สร้างงบประมาณ สร้างงบประมาณ
  3. ตั้งชื่องบประมาณ: ตั้งชื่อให้ง่ายๆ เช่น Workshop-Alert
  4. ขอบเขต: ปล่อยให้เป็นการตั้งค่าเริ่มต้น ซึ่งควรเลือกโปรเจ็กต์ปัจจุบันของคุณ คลิกถัดไป สร้างงบประมาณ
  5. จํานวน: ในส่วน "จํานวนงบประมาณ" ให้เลือกจํานวนที่ระบุสําหรับ "ประเภทจํานวน" ป้อนจำนวนเงินต่ำๆ เช่น 10 ซึ่งหมายความว่าเรามีงบประมาณ 300 บาท คลิกถัดไป สร้างงบประมาณ
  6. การดำเนินการ: คุณตั้งค่าการแจ้งเตือนได้ที่นี่ โดยค่าเริ่มต้น ระบบจะตั้งค่าการแจ้งเตือนเมื่อการใช้จ่ายเกิน 50%, 90% และ 100% ของจำนวนงบประมาณ (50, 90 และ 100 บาท)
    • ในส่วน "การแจ้งเตือนทางอีเมล" ให้ตรวจสอบว่าได้เลือกการแจ้งเตือนทางอีเมลไปยังผู้ดูแลระบบการเรียกเก็บเงินและผู้ใช้แล้ว ซึ่งจะส่งการแจ้งเตือนไปยังอีเมลที่เชื่อมโยงกับบัญชีของคุณ
  7. คลิกเสร็จสิ้น สร้างงบประมาณ

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

บริการคืออะไรและเหตุใดเราจึงเปิดใช้บริการ

ตอนนี้คุณได้ตั้งค่าศูนย์บัญชาการในห้องทดลองส่วนตัวแล้ว เรามาพูดถึงอุปกรณ์หนักที่พร้อมใช้งานกัน Google Cloud มีผลิตภัณฑ์ที่แตกต่างกันกว่า 200 รายการ ตั้งแต่ฐานข้อมูลไปจนถึงโมเดล AI แต่ละรายการเรียกว่าบริการ ลองนึกถึง Cloud Run ในฐานะ "บริการจัดส่งและโลจิสติกส์อัตโนมัติ" และ Gemini ในฐานะ "บริการประดิษฐ์และสร้างต้นแบบด้วย AI" หากต้องการใช้บริการที่มีประสิทธิภาพเหล่านี้ คุณต้องเปิดใช้ API (Application Programming Interface) ที่เกี่ยวข้องสำหรับโปรเจ็กต์ก่อน

ภาพรวมของบริการ

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

การเปิดใช้ API คือการเดินไปยังเวิร์กสเตชันที่เฉพาะเจาะจงในห้องทดลอง เช่น "สถานีต้นแบบ AI" แล้วพลิกสวิตช์ไฟหลักไปที่ตำแหน่ง "เปิด"

แต่ทำไมระบบจึงปิดทุกอย่างโดยค่าเริ่มต้น เราตั้งใจออกแบบมาเช่นนี้ด้วยเหตุผลสำคัญหลายประการ ดังนี้

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

ลงมือปฏิบัติ: เริ่มต้นสภาพแวดล้อม

  1. เปิดใช้ Vertex AI, Cloud Run, Cloud Build และ Compute API:
    • ในหน้ารายละเอียดของ API ให้คลิกปุ่มเปิดใช้สีน้ำเงิน รอให้กระบวนการเสร็จสมบูรณ์ เปิดใช้บริการ

2. การรักษาความปลอดภัยของแอปพลิเคชัน: ใคร (หรืออะไร) ควบคุมแอปของคุณได้บ้าง

ข้อมูลเบื้องต้นเชิงแนวคิด

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

ซึ่งทั้งหมดนี้จัดการโดย Identity and Access Management (IAM)

  • สูตรหลักของ IAM IAM ทำงานตามหลักการที่เรียบง่ายแต่ทรงพลัง นั่นคือ ใครทำอะไรกับทรัพยากรใดได้บ้าง
  • "ใคร" (ผู้ใช้) 2 ประเภท ในเวิร์กช็อปของเราจนถึงตอนนี้ เราได้เห็นข้อมูลประจำตัว 2 ประเภทพื้นฐาน ได้แก่
    1. ผู้ใช้: คุณเอง ตัวตนที่เชื่อมโยงกับบุคคล เช่น บัญชี Gmail ส่วนตัว
    2. บัญชีบริการ: บัญชีเหล่านี้เป็นตัวตนพิเศษที่ไม่ใช่มนุษย์สำหรับแอปพลิเคชันและบริการของคุณ โดยเปรียบได้กับบัตรประจำตัวสำหรับโค้ด เมื่อบริการ Google Cloud บริการหนึ่ง (เช่น Cloud Build) ต้องการโต้ตอบกับอีกบริการหนึ่ง (เช่น Artifact Registry เพื่อบันทึกคอนเทนเนอร์) บริการนั้นจะใช้บัญชีบริการของตนเพื่อพิสูจน์ว่ามีสิทธิ์

เมื่อคุณติดตั้งใช้งานแอปพลิเคชัน ระบบจะใช้ข้อมูลประจำตัวทั้ง 2 ประเภท ดังนี้

  • บัญชีผู้ใช้ของคุณมีสิทธิ์เริ่มการติดตั้งใช้งาน
  • บัญชีบริการสำหรับบริการ Cloud Build มีสิทธิ์ในการสร้างโค้ดและบันทึกคอนเทนเนอร์ที่ได้

การจัดการการเข้าถึง

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

  1. การตรวจสอบ: ไปที่คอนโซล IAM
    • ไปที่
    • หน้านี้คือแดชบอร์ดความปลอดภัยของโปรเจ็กต์ โดยจะแสดง "ผู้ใช้หลัก" (ซึ่งก็คือ "ใคร") ทุกคนที่มีสิทธิ์เข้าถึงโปรเจ็กต์ของคุณในระดับใดก็ตาม
  2. ค้นหาตัวตนของคุณ (ผู้ใช้)
    • ค้นหาอีเมลของคุณในรายการผู้รับหลัก โปรดสังเกตว่าบทบาทของบัญชีคือ"เจ้าของ" บทบาทเจ้าของจะให้สิทธิ์แบบเต็มโดยไม่มีข้อจำกัดในการดำเนินการใดๆ ในโปรเจ็กต์ ด้วยเหตุนี้ คุณจึงได้รับอนุญาตให้เปิดใช้ API และเรียกใช้คำสั่ง gcloud run deploy
  3. ค้นหาข้อมูลประจำตัวของบริการ (บัญชีบริการ)
    • ตอนนี้ ให้มองหา Principal ที่มีชื่อคล้าย [PROJECT_NUMBER]-compute@developer.gserviceaccount.com นี่คือบัญชีบริการเริ่มต้นที่บริการ Cloud Build ใช้
    • ดูบทบาทของบัญชี โดยจะมีบทบาท เช่น "ตัวแทนบริการ Cloud Build" บทบาทนี้มีสิทธิ์เฉพาะที่จำเป็นต่อการทำงาน เช่น การดึงซอร์สโค้ดและการเขียนอิมเมจคอนเทนเนอร์ไปยังรีจิสทรี นี่คือข้อมูลประจำตัวที่จัดการส่วนที่ยากให้คุณในการติดตั้งใช้งาน
  4. การจัดการสิทธิ์เข้าถึง (งานภาคปฏิบัติ)
    • ตอนนี้เรามาทํางานด้านความปลอดภัยที่เกี่ยวข้องกัน ลองนึกภาพว่าเพื่อนร่วมงานคนใหม่จำเป็นต้องตรวจสอบประสิทธิภาพและดูบันทึกของแอปพลิเคชัน 2 รายการที่เราเพิ่งติดตั้งใช้งาน (fact-app-manual และ fact-app-cli) แต่ด้วยเหตุผลด้านความปลอดภัย เขาไม่ควรติดตั้งใช้งานเวอร์ชันใหม่หรือลบแอปพลิเคชันเหล่านั้นได้
    • คลิก + ให้สิทธิ์เข้าถึงที่ด้านบนของหน้า IAM
    • ในช่องผู้ใช้หลักรายใหม่ ให้ป้อนอีเมลสมมติ เช่น dev-intern@example.com
    • ในเมนูแบบเลื่อนลงเลือกบทบาท ให้ใช้ตัวกรองเพื่อค้นหาและเลือกบทบาท "ผู้ดู Cloud Run" บทบาทนี้เป็นตัวอย่างที่ชัดเจนของหลักการให้สิทธิ์ขั้นต่ำที่สุด โดยจะให้สิทธิ์การเข้าถึงระดับอ่านอย่างเดียวสำหรับบริการ Cloud Run โดยเฉพาะเท่านั้น (หรือลองใช้ช่วยฉันเลือกบทบาท)
    • คลิกบันทึก
  5. ตรวจสอบผลลัพธ์
    • ตอนนี้คุณได้เพิ่มผู้ใช้ใหม่และมอบบทบาทที่มีสิทธิ์น้อยที่สุดแบบละเอียดซึ่งเกี่ยวข้องโดยตรงกับทรัพยากรที่คุณสร้างขึ้นในเวิร์กช็อปนี้เรียบร้อยแล้ว โดยจะเห็นแอปข้อเท็จจริง 2 รายการของคุณ แต่จะเปลี่ยนแปลงไม่ได้ คุณได้เห็นแล้วว่าทั้งบัญชีผู้ใช้และบัญชีบริการทำงานร่วมกันอย่างไรเพื่อสร้างสภาพแวดล้อมระบบคลาวด์ที่ปลอดภัยและตรวจสอบได้

ตอนนี้มาลองให้สิทธิ์แก่แอปพลิเคชันหรือบริการอื่นกันบ้าง ลองนึกถึงเครื่องมืออัตโนมัติภายนอกที่แสดงโดยบัญชีบริการ vertex-express@... ซึ่งต้องใช้บริการ AI ภายในโปรเจ็กต์ของเราได้ เราต้องมอบบทบาทที่ถูกต้องให้กับบัญชี

  1. ไปที่หน้าบัญชีบริการ
    • ในหน้า IAM ให้ไปที่บัญชีบริการ
  2. ค้นหาบัญชีบริการเป้าหมาย:
    • ค้นหาบัญชีบริการที่มีชื่อว่า vertex-express@ecstatic-acumen-{PROJECT_NUMBER}-c9.iam.gserviceaccount.com ในรายการบัญชีบริการ (คุณจะต้องแทนที่ {PROJECT_NUMBER} ด้วยหมายเลขโปรเจ็กต์จริง) นี่คือข้อมูลประจำตัวที่เราต้องการให้สิทธิ์
  3. จัดการสิทธิ์สำหรับบัญชีบริการ:
    • ในคอลัมน์การดำเนินการทางด้านขวา ให้คลิกจุด 3 จุด ซึ่งคุณจะเห็นเมนูแบบเลื่อนลง
    • หากต้องการจัดการสิ่งที่บัญชีบริการนี้ทำได้ ให้คลิกจัดการสิทธิ์
  4. ให้บทบาท "ผู้ใช้ Vertex AI"
    • ในเมนูแบบเลื่อนลงกำหนดบทบาท ให้ใช้ตัวกรองเพื่อค้นหาและเลือกบทบาท "ผู้ใช้ Vertex AI"
    • คลิกบันทึก

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

3. การเขียนโค้ดด้วยผู้ช่วย AI

ข้อมูลเบื้องต้นเชิงแนวคิด

ทุกแอปพลิเคชันเริ่มต้นด้วยโค้ด โดยปกติแล้ว ส่วนนี้เป็นส่วนที่ใช้เวลานานที่สุด วันนี้เราจะทำงานร่วมกับพาร์ทเนอร์ด้าน AI อย่าง Gemini เพื่อเร่งกระบวนการนี้ แต่ก่อนที่จะเขียนคำสั่งแรก เราควรทำความเข้าใจภาพรวมของเครื่องมือ AI ที่ Google Cloud มีให้บริการ

ข้อเสนอ AI ของ Google แบ่งออกเป็น 3 หมวดหมู่หลักๆ ตั้งแต่แบบง่ายที่สุดไปจนถึงทรงพลังที่สุด ดังนี้

คุณโต้ตอบกับ "Creative Engine" (Gemini) ได้ผ่านอินเทอร์เฟซหลัก 2 อย่าง ซึ่งแต่ละอย่างออกแบบมาเพื่อวัตถุประสงค์ที่แตกต่างกัน

  • Google AI Studio (aistudio.google.com)
    • เครื่องมือนี้คืออะไร: เครื่องมือบนเว็บฟรีสำหรับการสร้างต้นแบบอย่างรวดเร็วและการทดลองกับ Gemini ซึ่งเป็นวิธีที่เร็วที่สุดในการเริ่มเขียนพรอมต์และดูว่าโมเดลทำอะไรได้บ้าง
    • วิธีการทำงาน: คุณเริ่มใช้งานได้โดยใช้เพียงบัญชี Google หากต้องการใช้ในแอปพลิเคชัน คุณต้องสร้างคีย์ API หากต้องการใช้ในเวิร์กช็อปนี้ คุณจะต้องเปิดใช้บริการ "Generative Language API" ในโปรเจ็กต์
    • อุปมาอุปมัย: AI Studio คือห้องสมุดสาธารณะหรือเวิร์กช็อปแบบเปิด คุณสามารถเข้ามาทดลองใช้เครื่องมือได้ฟรีอย่างง่ายดาย
  • Vertex AI
    • แพลตฟอร์มนี้คืออะไร: แพลตฟอร์มแบบครบวงจรของ Google Cloud สำหรับการจัดการวงจรแมชชีนเลิร์นนิงทั้งหมด ซึ่งเป็นเวิร์กเบนช์ระดับมืออาชีพที่สมบูรณ์แบบซึ่งคุณสามารถใช้โมเดลพื้นฐานอย่าง Gemini รวมถึงสร้าง ฝึก และติดตั้งใช้งานโมเดลแมชชีนเลิร์นนิงที่กำหนดเองได้ตั้งแต่ต้น โดยสร้างขึ้นเพื่อการรักษาความปลอดภัย ความสามารถในการปรับขนาด และการกำกับดูแลระดับองค์กร นอกจากนี้ยังมีเครื่องมือเดียวกันในเวอร์ชันระดับองค์กรที่ผสานรวมอย่างเต็มรูปแบบภายในโปรเจ็กต์ Google Cloud ของคุณ
    • วิธีการทำงาน: ใช้โมเดลที่มีประสิทธิภาพเดียวกัน แต่จะรับช่วงฟีเจอร์ด้านความปลอดภัย การควบคุมการเข้าถึง (IAM) และการกำกับดูแลข้อมูลทั้งหมดของโปรเจ็กต์ นี่คือบริการที่เราเปิดใช้ในส่วนที่ 1 โดยการเปิด aiplatform.googleapis.com API
    • การเปรียบเทียบ: Vertex AI คือห้องทดลอง R&D ขององค์กรที่ปลอดภัยและเป็นส่วนตัว ระบบจะบันทึกทุกสิ่งที่คุณทำ รักษาความปลอดภัย และเชื่อมต่อกับทรัพยากรโปรเจ็กต์อื่นๆ

ภาคปฏิบัติ: การสร้างโค้ดแอปพลิเคชันใน Vertex AI Studio

มาดูกันว่าจะเกิดอะไรขึ้นเมื่อเราสร้างแอปโดยใช้เครื่องมือภาพภายใน Vertex AI

  1. ไปที่ Vertex AI Studio
  2. สร้างเว็บไซต์:
    • ในช่องพรอมต์ ให้ป้อนคำขอเดียวกันกับที่เราจะใช้ในภายหลัง
    Create the code for a simple web application that shows Halloween fun facts. The application should be built using the Python functions_framework for Cloud Run. The entry point function must be named 'hello_http'. When a user visits the main page, the server should randomly display one fact from a list. The page should have a separate 'index.html' file for the structure and a 'style.css' file to give it a spooky theme 
    
    • กด Enter โมเดลจะสร้างโค้ด ซึ่งมักจะอยู่ใน 3 บล็อกที่แตกต่างกัน ได้แก่ บล็อกสำหรับ Python (main.py) บล็อกสำหรับ HTML (index.html) และบล็อกสำหรับ CSS (style.css)

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

4. การทำให้ใช้งานได้ทั่วโลกด้วย Cloud Run

ข้อมูลเบื้องต้นเชิงแนวคิด

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

  • "Serverless" คืออะไร โดยปกติแล้ว การติดตั้งใช้งานแอปหมายถึงการเช่าเซิร์ฟเวอร์ (เครื่องเสมือน) การติดตั้งระบบปฏิบัติการ การกำหนดค่าเครือข่ายและความปลอดภัย และการบำรุงรักษาอย่างต่อเนื่อง Serverless เป็นแนวทางระบบคลาวด์ที่ทันสมัยซึ่งคุณในฐานะนักพัฒนาซอฟต์แวร์จะมุ่งเน้นเฉพาะโค้ดของคุณ คุณส่งโค้ดไปยังบริการอย่าง Cloud Run แล้วบริการจะจัดการทุกอย่างที่เหลือ ได้แก่ เซิร์ฟเวอร์ การปรับขนาด ความปลอดภัย และเครือข่าย
  • วิธีการทำงานของ Cloud Run: เสน่ห์ของการปรับขนาด เมื่อคุณทําการติดตั้งใช้งานใน Cloud Run ระบบจะแพ็กเกจโค้ดของคุณลงในคอนเทนเนอร์ (แพ็กเกจแบบพกพาที่ได้มาตรฐานของแอปพลิเคชันและทรัพยากร Dependency ทั้งหมด) เมื่อผู้ใช้เข้าชม URL ของแอป Cloud Run จะเริ่มคอนเทนเนอร์ทันทีเพื่อจัดการคำขอ หากมีผู้ใช้ 1,000 คนเข้าชมพร้อมกัน ระบบจะเริ่มสำเนา 1,000 รายการโดยอัตโนมัติ ฟีเจอร์ที่ทรงพลังที่สุดคือการปรับขนาดเป็น 0 เมื่อไม่มีใครเข้าชมแอปของคุณ Cloud Run จะปรับขนาดจำนวนคอนเทนเนอร์ที่ทำงานลงไปจนถึง 0 ซึ่งหมายความว่าคุณไม่ต้องจ่ายค่าเวลาที่ไม่ได้ใช้งานเลย ทำให้ประหยัดค่าใช้จ่ายได้อย่างมาก

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

ภาคปฏิบัติ: การติดตั้งใช้งานแอปพลิเคชัน

  1. เริ่มวิซาร์ดการสร้าง Cloud Run
    • ไปที่
    • คลิก + เขียนฟังก์ชันที่ด้านบนของหน้า
  2. กำหนดค่าบริการ:
    • เลือกใช้ตัวแก้ไขในบรรทัดเพื่อสร้างฟังก์ชัน
    • ตั้งชื่อบริการ: fact-app-manual
    • เลือกรันไทม์ Python 3.13
    • เลือกภูมิภาค us-central1
    • เลือกอนุญาตการเข้าถึงแบบสาธารณะ
    • ปล่อยให้การตั้งค่าอื่นๆ ทั้งหมดเป็นค่าเริ่มต้น
    • คลิกปุ่มสร้างที่ด้านล่าง
  3. ป้อนรหัส:
    • คุณจะเห็นเอดิเตอร์ที่มีไฟล์ main.py และ requirements.txt เริ่มต้น
    • main.py: ไปที่แท็บ Vertex AI Studio คัดลอกบล็อกโค้ด Python ทั้งหมด กลับไปที่ตัวแก้ไข Cloud Run แล้วแทนที่เนื้อหา main.py เริ่มต้นด้วยโค้ดที่คุณเพิ่งคัดลอก
    • requirements.txt:* คลิกไฟล์ requirements.txt ในตัวแก้ไข โค้ด Python ต้องมี functions-framework แทนที่เนื้อหาของไฟล์ด้วยข้อความต่อไปนี้
      functions-framework
      
    • index.html: ใน File Explorer ของโปรแกรมแก้ไข ให้คลิก "+" เพื่อเพิ่มไฟล์ใหม่ ตั้งชื่อไฟล์ index.html ไปที่แท็บ Vertex AI Studio คัดลอกบล็อกโค้ด HTML แล้ววางลงในไฟล์ index.html ใหม่นี้
    • style.css: คลิก "+" เพื่อเพิ่มไฟล์ใหม่ ตั้งชื่อว่า style.css ไปที่แท็บ Vertex AI Studio คัดลอกบล็อกโค้ด CSS แล้ววางลงในไฟล์ style.css ใหม่นี้
  4. ติดตั้งใช้งานบริการ:
    • เมื่อวางไฟล์ทั้ง 3 ไฟล์อย่างถูกต้องแล้ว ให้คลิกปุ่มบันทึกและติดตั้งใช้งาน
  5. เข้าถึงแอปพลิเคชันสด
    • การติดตั้งใช้งานจะใช้เวลาสักครู่ เมื่อเสร็จแล้ว หน้าข้อมูลบริการจะปรากฏขึ้นพร้อมกับ URL สาธารณะที่ด้านบน
    • คลิก URL นี้ การสมัครของคุณพร้อมใช้งานแล้ว วิธีนี้ได้ผล แต่ต้องคัดลอกและวางด้วยตนเองหลายครั้ง

5. การเพิ่มประสิทธิภาพเวิร์กโฟลว์ของนักพัฒนาแอป

คอนโซลเหมาะสำหรับการเรียนรู้ แต่ช้าสำหรับการพัฒนาแบบวนซ้ำ ตอนนี้เราจะมาดูเวิร์กโฟลว์ที่นักพัฒนาซอฟต์แวร์ต้องการโดยใช้ Cloud Shell และ Gemini CLI เพื่อเปลี่ยนกระบวนการแบบหลายขั้นตอนทั้งหมดนั้นให้เป็นการสนทนาที่มีประสิทธิภาพ

Cloud Shell และ Gemini CLI คืออะไร

Cloud Shell เป็นคอมพิวเตอร์ Linux แบบเต็มในเบราว์เซอร์ของคุณ ซึ่งโหลดไว้ล่วงหน้าด้วยเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ เช่น gcloud CLI (รีโมตคอนโทรลสำหรับ Google Cloud)

Gemini CLI คือผู้ช่วยเขียนโค้ดแบบอินเทอร์แอกทีฟที่ทำงานด้วยระบบ AI ซึ่งอยู่ในเทอร์มินัลของคุณ

ส่วนขยาย Gemini คืออะไร

ให้มองว่า Gemini CLI เป็นเหมือนสมาร์ทโฟนที่มีประสิทธิภาพ ซึ่งมีความสามารถสูงในตัว ส่วนขยายก็เหมือนแอปที่คุณติดตั้งจาก App Store ซึ่งจะช่วยให้ Gemini CLI มีความสามารถใหม่ๆ ที่เฉพาะเจาะจงซึ่งไม่มีโดยค่าเริ่มต้น ตัวอย่างเช่น nanobanana เป็น "แอป" ที่เชื่อมต่อ Gemini CLI กับโมเดลการสร้างรูปภาพที่มีประสิทธิภาพของ Google ซึ่งช่วยให้เราสร้างรูปภาพจากบรรทัดคำสั่งได้โดยตรง

ลงมือปฏิบัติ: เวิร์กโฟลว์ที่มีประสิทธิภาพ

  1. สร้างคีย์ API
    • ไปที่
    • คลิกปุ่ม "+สร้างคีย์ API"
    • เก็บคีย์นี้ไว้
  2. เปิดใช้งานและกำหนดค่า Cloud Shell:
    • ที่ด้านบนของคอนโซล Google Cloud ให้คลิกไอคอนเปิดใช้งาน Cloud Shell (>_)
    • เรียกใช้คำสั่งต่อไปนี้ในเทอร์มินัลเพื่อตั้งค่าสภาพแวดล้อมของคุณ โดยอย่าลืมแทนที่ด้วยรหัสโปรเจ็กต์ของคุณเอง
      # Set your Project ID
      export PROJECT_ID="[your-project-id-goes-here]"
      
      ตั้งค่า NANOBANANA_GOOGLE_API_KEY แทนที่ด้วยคีย์ API ของคุณ (พูดว่า Y เพื่อติดตั้งต่อ)
      gcloud config set project $PROJECT_ID
      
      # REPLACE with your API Key.
      export NANOBANANA_GOOGLE_API_KEY="[your-api-key-goes-here]"
      
      เรียกใช้คำสั่งต่อไปนี้ในเทอร์มินัลเพื่อติดตั้งส่วนขยาย
      # Configure the CLI to use your project with Vertex AI
      export GOOGLE_CLOUD_PROJECT=$PROJECT_ID
      export GOOGLE_CLOUD_LOCATION=us-central1
      export GOOGLE_GENAI_USE_VERTEXAI=true
      
      # Install the image generation extension
      gemini extensions install https://github.com/gemini-cli-extensions/nanobanana
      
  • เราจะใช้ Gemini CLI ซึ่งเป็นอินเทอร์เฟซบรรทัดคำสั่งที่มีประสิทธิภาพที่ทำหน้าที่เป็นผู้ช่วยเขียนโค้ด AI ซึ่งช่วยให้เราอธิบายโค้ดที่ต้องการเป็นภาษาอังกฤษธรรมดาได้ และจะสร้างโครงสร้างให้เรา ซึ่งช่วยเร่งการพัฒนาได้อย่างมาก
  1. เริ่มเซสชัน AI แบบอินเทอร์แอกทีฟ:
    • มาสร้างไดเรกทอรีใหม่สำหรับโปรเจ็กต์และเริ่มใช้ Gemini CLI ในโหมดอินเทอร์แอกทีฟกัน เรียกใช้คำสั่งต่อไปนี้ในเทอร์มินัล
      mkdir ~/2025-website
      cd ~/2025-website
      cat <<EOF > .env
        GOOGLE_CLOUD_PROJECT=$PROJECT_ID
        GOOGLE_CLOUD_LOCATION=$GOOGLE_CLOUD_LOCATION
        GOOGLE_GENAI_USE_VERTEXAI=true
        NANOBANANA_GOOGLE_API_KEY=$NANOBANANA_GOOGLE_API_KEY
      EOF
      clear
      gemini --yolo
      
  2. สร้างและทำซ้ำแอป:
    • ตอนนี้คุณอยู่ในเซสชันแชทกับผู้ช่วย AI แล้ว วางพรอมต์ต่อไปนี้เพื่อสร้างทั้งเว็บไซต์ด้วยคำสั่งเดียว
      Write a simple web app that shows Halloween fun facts using the Python Flask. When a user visits the main page, it should show one random fact. Include a button that fetches and displays a new fact when clicked. Create a simple, clean index.html, a separate style.css with a spooky theme, and a requirements.txt file. After creating the files, attempt to start the web app locally on port 8080.
      
    • ทดสอบในเครื่อง: AI จะสร้างไฟล์และเริ่มเว็บเซิร์ฟเวอร์ (บางครั้งการโหลดอาจไม่หยุด หากเห็นว่าระบบพยายามเริ่มเซิร์ฟเวอร์ โปรดไปที่ขั้นตอนถัดไป )
    • คลิกไอคอนตัวอย่างเว็บในแถบเครื่องมือของ Cloud Shell เลือกแสดงตัวอย่างบนพอร์ต 8080 แล้วเว็บไซต์จะปรากฏในแท็บใหม่
    • ใน Gemini CLI ให้กด Esc เพื่อยกเลิกคำขอและ/หรือแจ้งให้ Gemini CLI Stop the web server
  3. อัปเดตเว็บไซต์ด้วยรูปภาพที่ AI สร้างขึ้น:
    • ทีนี้มาใช้ส่วนขยายกัน คำสั่งที่ขึ้นต้นด้วย / คือ "คำสั่งเครื่องหมายทับ" ที่ส่งไปยังเครื่องมือ ไม่ใช่พรอมต์สำหรับ AI
      /generate 3 images of spooky halloween fun
      
    • ส่วนขยายจะสร้างรูปภาพ 3 รูป ตอนนี้เรามาขอให้ AI แก้ไขเว็บไซต์เพื่อใช้ฟอนต์เหล่านั้นกัน
      Update the website so it will display and rotate between the 3 newly generated images each time the button is clicked. And do NOT start the server.
      
  4. เตรียมการสำหรับการติดตั้งใช้งาน
    • Cloud Run จะทําให้โค้ดใช้งานได้โดยใช้คอนเทนเนอร์ Dockerfile คือสูตรสำหรับการสร้างคอนเทนเนอร์ มาขอให้ AI สร้างให้เรากัน
      Create a Dockerfile suitable for deploying this Python Flask app to Cloud Run.
      
  5. ติดตั้งใช้งานด้วยคำสั่งเดียว:
    • ออกจาก Gemini CLI โดยกด CtrlC 2 ครั้ง หรือพิมพ์ /quit ในพรอมต์
    • ตอนนี้ให้ใช้ gcloud CLI เพื่อทําให้แอปพลิเคชันทั้งหมดใช้งานได้จากไดเรกทอรีปัจจุบัน
      gcloud run deploy fact-app-cli \
        --source . \
        --region us-central1 \
        --allow-unauthenticated
      
  6. ดูความแตกต่าง:
    • หลังจากผ่านไป 2-3 นาที คุณจะได้รับ URL ใหม่สำหรับเว็บไซต์ที่ AI สร้างขึ้นและมีฟีเจอร์ครบถ้วน ไปที่คอนโซล Cloud Run แล้วคุณจะเห็นทั้ง 2 บริการ ได้แก่ fact-app-manual และ fact-app-cli คุณเพิ่งได้สัมผัสความเร็วและประสิทธิภาพของเวิร์กโฟลว์สำหรับนักพัฒนาซอฟต์แวร์ที่ใช้บรรทัดคำสั่ง

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

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

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

ตอนนี้คุณมีทักษะพื้นฐานในการสร้างแอปพลิเคชันที่ซับซ้อนและมีประสิทธิภาพมากยิ่งขึ้นใน Google Cloud แล้ว