บทนำ: ทำไมต้อง AutoGen Studio
ในปี 2024-2025 ระบบ Multi-Agent กลายเป็นหัวใจสำคัญของการพัฒนา AI Application สำหรับองค์กร ไม่ว่าจะเป็นการตอบสนองลูกค้าอัตโนมัติ การวิเคราะห์ข้อมูลเชิงลึก หรือการประมวลผลเอกสารจำนวนมาก Agentic AI ช่วยให้ธุรกิจทำงานได้เร็วขึ้น ลดต้นทุน และเพิ่มประสิทธิภาพอย่างมหาศาล
AutoGen Studio เป็นเครื่องมือที่พัฒนาโดย Microsoft Research ซึ่งทำให้การสร้างระบบ Multi-Agent ไม่จำเป็นต้องเขียนโค้ดมากมาย คุณสามารถกำหนด Agent, Workflow และการทำงานร่วมกันผ่านหน้าจอ UI ที่ใช้งานง่าย แต่หากต้องการความยืดหยุ่นสูงสุด การเขียนโค้ด Python ก็ยังเป็นทางเลือก
บทความนี้จะพาคุณสร้างระบบ Multi-Agent สำหรับ 3 กรณีการใช้งานจริง โดยใช้
HolySheep AI เป็น API Provider ที่มีความเร็วต่ำกว่า 50ms และราคาประหยัดกว่า 85% เมื่อเทียบกับ OpenAI
กรณีที่ 1: ระบบ AI ลูกค้าสัมพันธ์สำหรับ E-Commerce
ร้านค้าออนไลน์ที่มีสินค้าหลายพันรายการ ต้องการระบบที่ตอบคำถามลูกค้าเกี่ยวกับสินค้า สถานะคำสั่งซื้อ และการจัดการคืนสินค้า โดยมี Agent 3 ตัวทำงานร่วมกัน
สถาปัตยกรรมระบบ
- Order Agent — ดูแลสถานะคำสั่งซื้อและการติดตามพัสดุ
- Product Agent — ให้ข้อมูลสินค้า รีวิว และการเปรียบเทียบ
- Return Agent — จัดการเรื่องการคืนสินค้าและคืนเงิน
- Router Agent — วิเคราะห์ข้อความลูกค้าแล้วส่งต่อไปยัง Agent ที่เหมาะสม
การตั้งค่า config.json
{
"agents": [
{
"name": "router_agent",
"model": "gpt-4.1",
"system_message": "คุณคือตัวกลางที่วิเคราะห์ข้อความลูกค้าแล้วส่งต่อไปยัง Agent ที่เหมาะสม",
"capabilities": ["routing", "intent_classification"]
},
{
"name": "order_agent",
"model": "gpt-4.1",
"system_message": "คุณคือผู้เชี่ยวชาญด้านคำสั่งซื้อ ช่วยเช็คสถานะและติดตามพัสดุ",
"capabilities": ["order_lookup", "tracking"]
},
{
"name": "product_agent",
"model": "gpt-4.1",
"system_message": "คุณคือผู้เชี่ยวชาญด้านสินค้า แนะนำและเปรียบเทียบสินค้า",
"capabilities": ["product_info", "recommendations"]
},
{
"name": "return_agent",
"model": "gpt-4.1",
"system_message": "คุณคือผู้ดูแลการคืนสินค้า ช่วยดำเนินการคืนและคืนเงิน",
"capabilities": ["returns", "refunds"]
}
],
"workflows": {
"customer_service": {
"type": "group_chat",
"agents": ["router_agent", "order_agent", "product_agent", "return_agent"],
"max_turns": 10
}
}
}
โค้ด Python สำหรับ E-Commerce Multi-Agent
import os
import json
from autogen import ConversableAgent, GroupChat, GroupChatManager
from autogen.coding import LocalCommandLineCodeExecutor
ตั้งค่า HolySheep API
os.environ["OPENAI_API_KEY"] = "YOUR_HOLYSHEEP_API_KEY"
os.environ["OPENAI_API_BASE"] = "https://api.holysheep.ai/v1"
สร้าง Router Agent
router_agent = ConversableAgent(
name="router_agent",
system_message="""คุณคือตัวกลางที่วิเคราะห์ข้อความลูกค้าแล้วส่งต่อไปยัง Agent ที่เหมาะสม
คำสั่งซื้อ/พัสดุ/ติดตาม → ส่งให้ order_agent
สินค้า/รีวิว/เปรียบเทียบ → ส่งให้ product_agent
คืนสินค้า/เงินคืน → ส่งให้ return_agent
ตอบกลับลูกค้าเมื่อเสร็จสิ้น""",
llm_config={
"config_list": [{
"model": "gpt-4.1",
"api_key": os.environ["OPENAI_API_KEY"],
"base_url": os.environ["OPENAI_API_BASE"]
}],
"temperature": 0.3
},
human_input_mode="NEVER"
)
สร้าง Order Agent
order_agent = ConversableAgent(
name="order_agent",
system_message="""คุณคือผู้เชี่ยวชาญด้านคำสั่งซื้อ ตอบคำถามเกี่ยวกับ:
- สถานะคำสั่งซื้อ
- การติดตามพัสดุ
- เลขพัสดุ Kerry/J&T/Flash
ใช้ข้อมูลจาก order_database ที่มีให้""",
llm_config={
"config_list": [{
"model": "gpt-4.1",
"api_key": os.environ["OPENAI_API_KEY"],
"base_url": os.environ["OPENAI_API_BASE"]
}],
"temperature": 0.2
},
human_input_mode="NEVER"
)
สร้าง Product Agent
product_agent = ConversableAgent(
name="product_agent",
system_message="""คุณคือผู้เชี่ยวชาญด้านสินค้า ตอบคำถามเกี่ยวกับ:
- รายละเอียดสินค้า
- การเปรียบเทียบสินค้า
- การแนะนำสินค้าที่เหมาะสม
ใช้ข้อมูลจาก product_catalog ที่มีให้""",
llm_config={
"config_list": [{
"model": "gpt-4.1",
"api_key": os.environ["OPENAI_API_KEY"],
"base_url": os.environ["OPENAI_API_BASE"]
}],
"temperature": 0.4
},
human_input_mode="NEVER"
)
สร้าง Return Agent
return_agent = ConversableAgent(
name="return_agent",
system_message="""คุณคือผู้ดูแลการคืนสินค้า ตอบคำถามเกี่ยวกับ:
- นโยบายการคืนสินค้า
- ขั้นตอนการคืน
- การคืนเงิน
ช่วยสร้าง ticket สำหรับการคืนสินค้า""",
llm_config={
"config_list": [{
"model": "gpt-4.1",
"api_key": os.environ["OPENAI_API_KEY"],
"base_url": os.environ["OPENAI_API_BASE"]
}],
"temperature": 0.2
},
human_input_mode="NEVER"
)
สร้าง Group Chat
group_chat = GroupChat(
agents=[router_agent, order_agent, product_agent, return_agent],
messages=[],
max_round=10,
speaker_selection_method="round_robin"
)
สร้าง Group Chat Manager
manager = GroupChatManager(
groupchat=group_chat,
llm_config={
"config_list": [{
"model": "gpt-4.1",
"api_key": os.environ["OPENAI_API_KEY"],
"base_url": os.environ["OPENAI_API_BASE"]
}]
}
)
ทดสอบการสนทนา
customer_message = "อยากทราบสถานะคำสั่งซื้อเบอร์ TH123456 ค่ะ"
response = router_agent.initiate_chat(
manager,
message=customer_message,
summary_method="reflection_with_llm"
)
print(response.summary)
กรณีที่ 2: ระบบ RAG ขององค์กร (Enterprise RAG)
องค์กรขนาดใหญ่ต้องการระบบ Q&A ที่ค้นหาข้อมูลจากเอกสารภายใน คู่มือนโยบาย และฐานความรู้หลายแหล่ง โดยมี Agent ที่ทำหน้าที่แตกต่างกัน
สถาปัตยกรรม Enterprise RAG Agent
- Query Understanding Agent — วิเคราะห์คำถามและแยกประเภท Intent
- Retriever Agent — ค้นหาเอกสารที่เกี่ยวข้องจากหลาย Vector Store
- Grader Agent — ตรวจสอบว่าผลลัพธ์เกี่ยวข้องจริงหรือไม่
- Generator Agent — สร้างคำตอบจากข้อมูลที่ค้นพบ
โค้ด Python สำหรับ Enterprise RAG
import os
from autogen import ConversableAgent
from langchain_community.vectorstores import Chroma, FAISS
from langchain_openai import OpenAIEmbeddings
ตั้งค่า HolySheep API
os.environ["OPENAI_API_KEY"] = "YOUR_HOLYSHEEP_API_KEY"
os.environ["OPENAI_API_BASE"] = "https://api.holysheep.ai/v1"
ตั้งค่า Embeddings สำหรับ RAG
embeddings = OpenAIEmbeddings(
openai_api_key=os.environ["OPENAI_API_KEY"],
openai_api_base=f"{os.environ['OPENAI_API_BASE']}/embeddings"
)
โหลด Vector Stores หลายแหล่ง
policy_store = FAISS.load_local("vectorstores/policy", embeddings, allow_dangerous_deserialization=True)
product_store = Chroma(persist_directory="vectorstores/products", embedding_function=embeddings)
manual_store = FAISS.load_local("vectorstores/manuals", embeddings, allow_dangerous_deserialization=True)
สร้าง Query Understanding Agent
query_agent = ConversableAgent(
name="query_understanding_agent",
system_message="""คุณคือผู้เชี่ยวชาญในการวิเคราะห์คำถาม จง:
1. ระบุ Intent หลักของคำถาม
2. ระบุ Entities สำคัญ (ชื่อ, วันที่, เลขที่)
3. ตัดสินใจว่าต้องค้นหาจากแหล่งใด (policy/product/manual)
ตอบในรูปแบบ JSON""",
llm_config={
"config_list": [{
"model": "gpt-4.1",
"api_key": os.environ["OPENAI_API_KEY"],
"base_url": os.environ["OPENAI_API_BASE"]
}],
"temperature": 0.1
}
)
สร้าง Retriever Agent
def retrieve_documents(query: str, sources: list) -> list:
"""ค้นหาเอกสารจากหลายแหล่ง"""
results = []
if "policy" in sources:
policy_results = policy_store.similarity_search(query, k=3)
results.extend([f"[นโยบาย] {doc.page_content}" for doc in policy_results])
if "product" in sources:
product_results = product_store.similarity_search(query, k=3)
results.extend([f"[สินค้า] {doc.page_content}" for doc in product_results])
if "manual" in sources:
manual_results = manual_store.similarity_search(query, k=3)
results.extend([f"[คู่มือ] {doc.page_content}" for doc in manual_results])
return results
retriever_agent = ConversableAgent(
name="retriever_agent",
system_message="""คุณคือผู้เชี่ยวชาญในการค้นหาเอกสาร ใช้ฟังก์ชัน retrieve_documents
เพื่อดึงข้อมูลจากแหล่งที่กำหนด รวบรวมผลลัพธ์แล้วส่งต่อให้ Grader""",
llm_config
แหล่งข้อมูลที่เกี่ยวข้อง
บทความที่เกี่ยวข้อง