วิธีสร้าง AI Agent ตัวแรกด้วย OpenAI Agents SDK ใน Python

· By: SirilukP

How to Build Your First AI Agent in Python

การสร้าง AI agent ใน Python ในปัจจุบันนั้นง่ายขึ้นกว่าเดิมมาก ด้วย OpenAI Agents SDK คุณสามารถสร้าง agent เชื่อมต่อเครื่องมือ (tools) และคงสถานะการสนทนาเพื่อรันเวิร์กโฟลว์หลายขั้นตอนได้ทันที โดยไม่ต้องเขียนลูปการเรียกใช้เครื่องมือ (tool-calling loop) ขึ้นมาเองตั้งแต่ต้น

ในบทความนี้ เราจะสร้าง research agent ที่ใช้งานได้จริง ซึ่งมีความสามารถในการ ค้นหาเว็บ เรียกใช้ฟังก์ชัน Python ที่กำหนดเอง จดจำบริบทการสนทนา และตัดสินใจเลือกใช้เครื่องมือที่เหมาะสมได้เอง

AI Agent คืออะไร? โดยปกติแล้ว แอปพลิเคชันโมเดลภาษาขนาดใหญ่ (LLM) ทั่วไปมักมีกระบวนการทำงานแบบเส้นตรงคือ Prompt: Model: Response โดยโมเดลจะรับคำสั่ง สร้างคำตอบ และจบการทำงานทันที

แต่สำหรับ AI agent จะมีการเพิ่ม เครื่องมือและลูปการประมวลผล (execution loop) เข้ามาในกระบวนการ: User - Agent - Tool if needed - Agent - Final Response

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

ด้วย OpenAI Agents SDK ตัว Runner จะจัดการกระบวนการนี้ให้โดยอัตโนมัติ ตั้งแต่การส่งคำขอไปยังโมเดล รันเครื่องมือที่ถูกเรียก ส่งผลลัพธ์กลับไปให้ agent และประมวลผลต่อจนกว่าจะได้คำตอบสุดท้าย ความสามารถในการ ให้เหตุผล (reason) ใช้เครื่องมือ และทำงานต่อเนื่องหลายขั้นตอน คือสิ่งที่ทำให้ agent แตกต่างจากแอปพลิเคชัน LLM พื้นฐานทั่วไป

ตั้งค่าโปรเจกต์

ก่อนเริ่มสร้าง agent ให้เตรียมสภาพแวดล้อม Python และติดตั้งแพ็กเกจที่จำเป็น โดยสร้างโปรเจกต์ด้วย uv หรือใช้ pip ตามคำสั่งด้านล่าง:

mkdir first-ai-agent
cd first-ai-agent
 
uv init
uv add openai-agents

หรือติดตั้งผ่าน pip:

pip install openai-agents

จากนั้นตั้งค่า OpenAI API key ของคุณ:

export OPENAI_API_KEY="your-api-key"

สำหรับผู้ใช้ Windows บน Command Prompt หรือ PowerShell ให้ใช้คำสั่ง:

setx OPENAI_API_KEY "your-api-key"

สร้าง Agent ตัวแรกของคุณ

เราจะเขียนโค้ด Python เพียงไม่กี่บรรทัดเพื่อสร้าง agent ที่ตัดสินใจได้เองว่าควรค้นหาข้อมูลใหม่จากเว็บเมื่อใด โดยสร้างไฟล์ main.py ดังนี้:

from agents import Agent, Runner, WebSearchTool
 
agent = Agent(
    name="Research Assistant",
    instructions=(
        "You are a concise research assistant. "
        "Use web search when current information is required."
    ),
    tools=[WebSearchTool()],
)
 
result = Runner.run_sync(
    agent,
    "What are the latest developments in Python?"
)
 
print(result.final_output)

เมื่อรันคำสั่ง uv run main.py ผลลัพธ์ที่ได้จะแสดงข้อมูลล่าสุดของ Python เช่น เวอร์ชัน stable ล่าสุด ซึ่ง WebSearchTool() ของ OpenAI จะช่วยให้โมเดลตัดสินใจดึงข้อมูลปัจจุบันได้เองโดยที่คุณไม่ต้องเขียน API เชื่อมต่อระบบค้นหาด้วยตนเอง

เพิ่มเครื่องมือ Python ของคุณเอง

นอกจากค้นหาเว็บแล้ว agent จะทรงพลังยิ่งขึ้นหากทำงานร่วมกับโค้ด Python ที่คุณเขียนขึ้นเองได้ ตัวอย่างเช่น การเพิ่มเครื่องมือช่วยคำนวณ:

from agents.decorators import tool
 
@tool
def calculate_total(
    price: float,
    quantity: int
) -> float:
    """Calculate the total cost of an order."""
 
return price * quantity

จากนั้นนำฟังก์ชันนี้ไปใส่ในลิสต์ tools ของ agent SDK จะดึงชื่อฟังก์ชัน อาร์กิวเมนต์ และ docstring ไปสร้าง tool schema ให้โมเดลเข้าใจโดยอัตโนมัติ ช่วยให้คุณไม่ต้องกำหนด JSON schemas หรือเขียนลูปควบคุมเอง

การเพิ่มหน่วยความจำการสนทนา เพื่อให้ agent ไม่ลืมบริบทก่อนหน้าเมื่อมีข้อความใหม่ เราจะเพิ่มระบบ SQLiteSession เพื่อเก็บประวัติการสนทนาลงในฐานข้อมูล ดังนี้:

from agents import SQLiteSession
 
session = SQLiteSession(
    "user_1",
    "conversations.db"
)

How to Build Your First AI Agent in Python

เมื่อส่ง session เข้าไปในการรันแต่ละครั้ง agent จะสามารถอ้างอิงข้อมูลจากการคุยครั้งก่อนได้แม้จะรีสตาร์ทโปรแกรม และสำหรับระบบที่ใหญ่ขึ้น SDK ยังรองรับการเชื่อมต่อกับ Redis, SQLAlchemy และ MongoDB อีกด้วย

วิธีการทำงานของ Agent ที่สมบูรณ์

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

How to Build Your First AI Agent in Python

นอกจากนี้ SDK ยังเปิดระบบ tracing มาให้ตั้งแต่เริ่มต้น คุณสามารถตรวจสอบขั้นตอนการทำงาน การเรียกใช้เครื่องมือ หรือการส่งต่องานได้ใน OpenAI dashboard ซึ่งมีประโยชน์มากสำหรับการดีบักและปรับปรุงคำสั่ง (instructions) ของ agent

How to Build Your First AI Agent in Python

สรุปส่งท้าย

การสร้าง AI agent ไม่ใช่เรื่องของการสร้างระบบซับซ้อน แต่คือการทำให้โมเดลสามารถ ดำเนินการที่เกิดประโยชน์จริง ได้ โดยเริ่มจากพื้นฐานง่ายๆ อย่างการค้นหาเว็บหรือการคำนวณ แล้วจึงขยายขีดความสามารถด้วยการเพิ่ม APIs, MCP servers หรือการทำงานร่วมกันระหว่างหลาย agent ในอนาคต

หัวใจสำคัญคือการมอบเครื่องมือที่เหมาะสม ปล่อยให้โมเดลตัดสินใจเอง และให้ OpenAI Agents SDK จัดการลูปการทำงานที่ยุ่งยากแทนคุณ

Source: KDnuggets
ดูแลงานแปลและเรียบเรียงโดย SirilukP

ความคิดเห็น (0)

เข้าสู่ระบบเพื่อร่วมแสดงความเห็น

สมัครสมาชิก

มาเป็นคนแรกที่แสดงความเห็นกันเลยโบร