บทนำ: ทำไมต้องเรียนรู้ LangChain Agent?

สวัสดีครับ ผมเป็นนักพัฒนาที่เริ่มต้นจากศูนย์เหมือนกัน ไม่เคยเขียนโค้ด API มาก่อนเลย แต่หลังจากทดลองและลงมือทำมาเกือบปี วันนี้อยากเล่าให้ฟังว่า LangChain Agent คืออะไร และจะเริ่มต้นใช้งานได้อย่างไร โดยเราจะใช้ HolySheep AI เป็นตัวเลือกหลักเพราะมีความเร็วต่ำกว่า 50 มิลลิวินาที ราคาถูกกว่า 85% เมื่อเทียบกับบริการอื่น (GPT-4.1 อยู่ที่ $8/ล้าน token, DeepSeek V3.2 อยู่ที่ $0.42/ล้าน token)

LangChain Agent คืออะไร?

LangChain Agent คือ "สมองกล" ที่ทำให้ AI สามารถตัดสินใจได้ด้วยตัวเอง เปรียบเหมือนลูกน้องที่รู้ว่าต้องทำอะไรต่อไป โดยไม่ต้องรอคำสั่งทุกขั้นตอน

แนวคิดหลัก 3 ประการที่ต้องเข้าใจ

1. Tools (เครื่องมือ)

Tools คือสิ่งที่ AI Agent สามารถใช้ได้ เช่น ค้นหาข้อมูล คำนวณ หรืออ่านไฟล์ ลองนึกภาพว่า Agent มีกล่องเครื่องมือ และมันจะเลือกหยิบเครื่องมือที่เหมาะสมกับงาน

2. Agent (ตัวตน)

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

3. Memory (ความจำ)

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

การติดตั้งและเริ่มต้นใช้งาน

ก่อนอื่นต้องติดตั้ง Python และ LangChain ก่อนนะครับ ให้เปิด Terminal (หรือ Command Prompt) แล้วพิมพ์คำสั่งนี้:

pip install langchain langchain-core langchain-community

ตอนนี้เรามาลองสร้าง Agent ตัวแรกกันเลย!

ตัวอย่างที่ 1: Agent พื้นฐานที่ใช้งานได้จริง

นี่คือโค้ดที่ผมใช้จริงในโปรเจกต์แรกของผม ลองคัดลอกไปรันได้เลยครับ:

import os
from langchain.agents import AgentExecutor, create_react_agent
from langchain_core.tools import tool
from langchain_openai import ChatOpenAI
from langchain import hub

ตั้งค่า API Key ของ HolySheep

os.environ["OPENAI_API_KEY"] = "YOUR_HOLYSHEEP_API_KEY"

กำหนด base_url สำหรับ HolySheep

llm = ChatOpenAI( model="gpt-4.1", api_key="YOUR_HOLYSHEEP_API_KEY", base_url="https://api.holysheep.ai/v1", streaming=True )

สร้างเครื่องมือคำนวณอย่างง่าย

@tool def calculate(expression: str) -> str: """ใช้สำหรับคำนวณทางคณิตศาสตร์""" try: result = eval(expression) return f"ผลลัพธ์คือ: {result}" except Exception as e: return f"เกิดข้อผิดพลาด: {str(e)}"

สร้าง Agent

tools = [calculate] prompt = hub.pull("hwchase17/react") agent = create_react_agent(llm, tools, prompt) agent_executor = AgentExecutor(agent=agent, tools=tools, verbose=True)

ทดสอ