ข้ามไปยังเนื้อหา
Google ADK คืออะไร? ใครอยากสร้าง AI Agent ต้องใช้

บทความโดย: 9Expert Team

Google ADK คืออะไร? ใครอยากสร้าง AI Agent ต้องใช้

Google ADK คืออะไร Framework Open Source สร้าง AI Agent และ Multi-agent พร้อมองค์ประกอบ ความสามารถเด่น วิธีติดตั้งด้วย Python Java และตัวอย่างงาน

9Expert Team 3 นาที

Google ADK คืออะไร

Google ADK ย่อมาจากคำว่า Google Agent Development Kit ที่เป็น Framework Open-source ตัวใหม่จาก Google ที่มีจุดประสงค์เพื่อใช้สร้าง Agent และระบบ Multi-agent ที่เปิดตัวไปในงาน Google Cloud NEXT 2025

การทำงานของ Agent บน Google ADK

ขอบคุณภาพจาก: https://google.github.io/adk-docs/get-started/about/

โดย ADK ตัวสร้างขึ้นเพื่อให้ผู้พัฒนาสามารถสร้าง Agentic App ได้ง่าย ยืดหยุ่นและเหมาะสมกับการพัฒนารูปแบบ Full-stack ตั้งแต่เริ่มจนถึงจบ พร้อมรองรับการใช้งานอย่าง Model ของ Gemini และเครื่องมืออื่น ๆ ของ Google Cloud ได้อีกด้วย

องค์ประกอบของ Google ADK

ขอบคุณภาพจาก: https://google.github.io/adk-docs/get-started/about/

องค์ประกอบของ Google ADK

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

  • Agent: หน่วยการทำงานหลักของระบบ ที่ใช้ LLM ช่วยให้ Agent ทำงานได้ยืดหยุ่นมากขึ้น

  • Tool: ตัวเพิ่มความสามารถให้กับ Agent ที่สามารถทำงานร่วมกับ API อื่น ๆ ได้ โดยมีความสามารถเพิ่มขึ้นเช่น ค้นหาข้อมูล, รันโค้ด หรือเรียก Service ต่าง ๆ ได้

  • Callbacks: การ Callbacks คือการปรับแต่ง Code เฉพาะจุดเพื่อให้ Agent สามารถทำงานได้ยืดหยุ่นและสามารถตรวจสอบ บันทึก เพื่อปรับเปลี่ยนพฤติกรรมของ Agent ได้

  • Session Management (Session & State): จัดการกับกับการสนทนาในแต่ล่ะครั้ง (Session) รวมถึงจัดเก็บประวัติ (Events) เพื่อใช้เป็นข้อมูลให้กับ Agent ในแต่ละครั้ง

  • Memory: อนุญาตให้ Agent สามารถเรียกคืนข้อมูลเกี่ยวกับผู้ใช้งาน เพื่อให้สามารถสร้างบริบทได้ยาวมากขึ้นและต่อเนื่อง

  • Artifact Management (Artifact): อนุญาตให้ Agent สำหรับการบันทึกข้อมูลรูปแบบต่าง ๆ เช่น รูปภาพ, ไฟล์ PDF ที่เกิดขึ้น

  • Code Execution: ให้ Agent มีความสามารถในการสร้างและรันโค้ดเพื่อการคำนวณหรือการทำงานที่ซับซ้อน (โดยใช้ความสามารถนี้ผ่าน Tools)

  • Planning: การวางแผนในการทำงานที่จะแบ่งแยกเป้าหมายใหญ่ ให้ออกมาเป็นขั้นตอน และวางแผนให้เหมาะสมเพื่อให้การทำงานถึงเป้าหมายที่วางไว้

  • Models: ให้ Agent ใช้โมเดลภาษาจาก LLM เพื่อให้การทำงานในด้านการวิเคราะห์และการเข้าใจในภาษา

  • Event: หน่วยข้อมูลพื้นฐานใน Agent เช่น ข้อความจาก User, คำตอบของ Agent หรือ การเรียกใช้งานเครื่องมืออื่น ๆ

  • Runner: ตัวประมวลผลของ Agent ที่จะลำดับการทำงานและประสานการทำงานร่วมกับ Agent ตาม Event ที่เกิดขึ้น รวมถึงการเรียกใช้งานเซอร์วิสที่ทำงานอยู่เบื้องหลัง

ความสามารถที่ผู้พัฒนาได้จาก Google ADK

ความสามารถหลักของ Google ADK ได้เตรียมเครื่องมือสำคัญหลาย ๆ ด้านสำหรับผู้พัฒนาที่สร้างแอปพลิเคชันแบบ Agentic

  • Multi-Agent by Design: การออกแบบระบบหลาย Agent สามารถสร้าง Agent ขึ้นมาหลาย ๆ ตัว ให้มาทำงานร่วมกันได้แบบเป็นลำดับแบบมีประสิทธิภาพ ที่สามารถทำงานย่อย ๆ รวมถึงการมอบหมายงานต่อให้ Agent ตัวอื่น ๆ กันเอง  และระบบการทำงานก็จะมีความยืดหยุ่นและสามารถขยายการทำงานต่อได้

  • Rich Tool Ecosystem: ระบบเครื่องมือครบถ้วน ทำให้ Agent มีความสามารถที่หลากหลายและครบถ้วน

  • Flexible Orchestration: การจัดการงานมีความยืดหยุ่น เพราะมีการออกแบบขั้นตอนการทำงานของ Agent และรองรับทั้งรูปแบบที่มีการกำหนดแน่นอน, แบบไดนามิกที่ใช้ความสามารถจาก LLM เพื่อให้ได้เรื่องของความแม่นยำและยืดหยุ่น

  • Integrated Developer Tooling: มีเครื่องมือสำหรับผู้พัฒนาอย่าง CLI และ UI ที่ทำให้สามารถทดลองรันและตรวจสอบขั้นตอน Debug รวมถึงดูโครงสร้างการทำงานของ Agent ได้

  • Native Streaming Support: รองรับการสตรีมแบบเรียลไทม์ ทั้งรูปแบบข้อความและเสียง ทั้งสามารถเชื่อมต่อกับ Multimodel Live API หรือ Vertex AI ได้อย่างง่ายดาย ด้วยการปรับตั้งค่าไม่กี่ขั้นตอน

  • Built-in Agent Evaluation: การประเมินของ Agent ในตัวเอง ด้วยเครื่องมือสำหรับการสร้างชุดทดสอบและประเมินผลการทำงานของ Agent เพื่อให้มีการปรับปรุงข้อมูลอย่างต่อเนื่อง

  • Broad LLM Support: รองรับ LLM หลากหลาย ที่ไม่ใช่แค่ตัวของ Gemini จาก Google เพียงอย่างเดียว เรายังสามารถเชื่อมต่อไปยัง LLM ที่เป็น Opensource ต่าง ๆ หรือโมเดลที่ปรับแต่งเอง

  • Artifact Management: การจัดการไฟล์และข้อมูลรูปแบบดิจิทัลต่าง ๆ โดยที่ Agent สามารถ บันทึก โหลด และจัดการไฟล์ รูปแบบต่าง ๆ เช่น รูปภาพ, เอกสารรายงาน ได้

  • Extensibility and Interoperability: รองรับการทำงานที่จะขยายและทำงานร่วมกัน โดยเปิดให้ผู้พัฒนาสามารถนำเครื่องมือจาก Framework อื่น มาใช้งานร่วมกันได้ เช่น LangChain หรือ CrewAI มาใช้ได้

  • State and Memory Management: การจัดการสถานะและหน่วยความจำ ที่เปิดให้ Agent สามารถดูแลความจำของตัวเองในระยะสั้นได้แบบอัตโนมัติที่อยู่ภายใน Session นั้น ๆ พร้อมกับสามารถเชื่อมต่อกับระบบที่เป็นความจำแบบระยะยาวได้

ภาพแผนการทำงานของ Google ADK

ขอบคุณภาพจาก: https://google.github.io/adk-docs/get-started/about/

ภาษาที่รองรับการพัฒนาและการติดตั้งเบื้องต้น

ปัจจุบัน การใช้ Google ADK นั้น สามารถเริ่มต้นใช้งานได้ 2 ภาษา ได้แก่ Java และ Python โดยสามารถติดตั้ง Google ADK ได้ตามโค้ดที่แสดงด้านล่างนี้

Python (จำเป็นต้องมีการติดตั้งภาษา Python เวอร์ชันล่าสุดก่อน):

pip install google-adk

Java: pom.xml

<dependency>
    <groupid>com.google.adk</groupid>
    <artifactid>google-adk</artifactid>
    <version>0.2.0</version>
 </dependency>

build.gradle

dependencies {
    implementation 'com.google.adk:google-adk:0.2.0'
}

เพียงเท่านี้ก็สามารถเริ่มต้นการใช้งาน Google ADK ได้เรียบร้อย

ทำไมผู้พัฒนาถึงควรเลือก Google ADK

  1. เริ่มต้นใช้งานฟรี – Google ADK เป็นชุดเครื่องมือสำหรับการพัฒนา Agent ที่สามารถเริ่มใช้งานได้ฟรี โดยไม่ต้องเสียค่าใช้จ่ายใด ๆ เพิ่มเติม และเป็น Open Source จาก Google อีกด้วย

  2. รองรับการทำงานแบบ Multi-Agent – เครื่องมือภายใน Google ADK สามารถออกแบบมาให้รองรับการทำงานร่วมกันระหว่าง Agent

  3. มีเครื่องมือครบสำหรับผู้พัฒนา – Google ADK มีเครื่องมือในด้าน CLI และ UI ครบครัน รวมถึงการ Debug และระบบการประเมิน Agent ภายในตัว

  4. เชื่อมต่อกับ Ecosystem ใน Google ได้ง่าย: Google ADK รองรับการทำงานร่วมกันกับ Gemini, Vertex AI และบริการ Google Cloud ได้ง่ายดาย

  5. สามารถขยายการทำงานกับเครื่องมืออื่น ๆ ได้อิสระ – รองรับการทำงานร่วมกับ Framework อื่น ๆ ที่อยู่นอกเหนือจาก Google เช่น LangChain หรือ CrewAI

GitHub ของ Google ที่รวมตัวอย่างจาก Google ADK

ตัวอย่างงานที่สร้างจาก Google ADK

ปัจจุบันมีตัวอย่าง Agent ที่สร้างจาก Google ADK ยกตัวอย่างเช่น

  • Academic-Research: Agent ผู้ช่วยด้านวิชาการ ที่เหมาะกับผู้ที่ต้องการให้ Agent ค้นหาข้อมูลที่เน้นเนื้อหาวิชาการ เช่น งานวิจัย, เอกสาร, หนังสือ ทำให้ประหยัดเวลาได้มากยิ่งขึ้น

  • Blog-Writer: Agent เขียนบล็อก เหมาะกับการเขียน Blog ลงบนเว็บไซต์

  • Customer-Service: ผู้ช่วยงานบริการลูกค้า เหมาะกับฝ่าย Customer-Service ที่ต้องการผู้ช่วยมาใช้ในงานด้านบริการลูกค้าในการถามตอบหรือให้ข้อมูลกับลูกค้า ตามข้อมูลหรือคำตอบที่ตั้งไว้ทำให้ได้ประสบการณ์การใช้งานที่ดีขึ้น

  • Google Trend Agent: ผู้ช่วยในการหา Trend ที่เกิดขึ้นบน Google ทำให้ประหยัดเวลาและลดงานซ้ำ ๆ ในแต่ล่ะวันได้

โดยสามารถดูตัวอย่างอื่น ๆ ได้ที่ GitHub ของทาง Google ได้ที่นี่: http://github.com/google/adk-samples

สรุป

Google ADK เป็นเครื่องมือสำหรับการสร้าง Agent ที่น่าสนใจอีกตัวนึง เพราะสามารถใช้งานได้ฟรีและรองรับ LLM หลาย ๆ ตัวที่อยู่ภายใน Google และ Third Party ภายนอก และ Google ADK ยังคงเติบโตอย่างต่อเนื่องหลังการเปิดตัว ทำให้กลายเป็นอีกเครื่องมือนึง ที่น่าจับตามองและเหมาะกับผู้พัฒนาที่สนใจทำการพัฒนาระบบ Agentic AI เพราะเป็นเครื่องมือที่ง่าย ยืดหยุ่นและสามารถต่อยอดได้
 
ขอบคุณสำหรับการติดตาม
#อย่าหยุดเรียนรู้
9Expert Training

หลักสูตรที่เกี่ยวข้อง

บทความที่เกี่ยวข้อง