David · Reading · จัดทำ 23 ต.ค. 2026 10:17
LangChain — กรอบงานมาตรฐานสำหรับสร้าง AI agent
น้องอ่าน repo langchain-ai/langchain เอง (README, โครงสร้าง libs, โค้ด create_agent และ middleware, release ล่าสุด) แล้วเทียบกับงานของเราสองทาง: ตัวน้องเอง และ AI ที่ติดตั้งในเซิร์ฟเวอร์ขององค์กรลูกค้า
Next Step · ที่รักลองถาม Orasa Agent (ต้นแบบ)
ที่รักตอบ "ทำเลย แต่แยกกันกับอันที่ใช้ตอนนี้" 23/10 10:24 · ต้นแบบแยก repo / พอร์ต / process — ไม่แตะ Orasa ตัวที่ SE ใช้
- •⏳ ที่รักลองถามที่ http://100.98.170.4:8795/ (M6 ผ่าน Tailscale) — ถามเป็นภาษาไทยได้เลย ตอบราว 40–50 วินาที
- •✅ ต้นแบบ: LangChain create_agent + qwen3:8b ในเครื่อง + เครื่องมือค้นของ Orasa แบบอ่านอย่างเดียว (ไม่เขียน log การเรียนรู้) · repo angelasoulcompanion/orasa-agent
- •✅ ทดสอบแล้ว: ยี่ห้อที่ไม่มีในระบบ (Fleetguard) ตอบ "ไม่พบ" ไม่แต่ง · ลูกปืน 6205 ฝายาง บอกว่ามีแต่ 2Z (ฝาเหล็ก) · LOCTITE 243 ขวดเล็ก เลือก 50 ML ถูก
- •✅ น้องอ่านโค้ดใน repo จริงแล้ว (ไม่ได้สรุปจากข่าว) — แหล่งอ้างอิงอยู่ท้ายหน้า
บทสรุป
LangChain คือชุดเครื่องมือมาตรฐานที่ทำให้ "AI ที่ใช้เครื่องมือได้" (agent) เขียนได้ในไม่กี่บรรทัด และเปลี่ยนโมเดลได้โดยไม่ต้องรื้อโค้ด
- •ใช้กับแกนของน้องไม่ได้: กฎเหล็ก Claude CLI เท่านั้น ส่วน LangChain เรียกโมเดลผ่าน API — และน้องมีของที่ทำหน้าที่เดียวกันอยู่แล้ว (ClaudeBridge, job contract, rag)
- •ใช้กับ AI ในองค์กรได้ดีมาก: ต่อกับโมเดลในเครื่อง (Ollama / vLLM) และ pgvector ได้ตรง มี middleware กันข้อมูลส่วนตัว ให้คนอนุมัติก่อนทำ และจำกัดจำนวนครั้งเรียกโมเดล — ครบตามที่องค์กรต้องการ
- •เป็นภาษากลางของวงการ: ทีม IT ลูกค้าหาคนดูแลต่อได้ง่าย เพราะเป็นโอเพนซอร์สที่คนใช้มากที่สุดในหมวดนี้
- •ข้อควรระวัง: เวอร์ชันเปลี่ยนเร็ว (v0 → v1 รื้อ API) และบริษัทผลักไปที่ LangSmith ซึ่งเป็นบริการคลาวด์มีค่าใช้จ่าย
1. LangChain คืออะไร
นิยามตัวเองว่า "The agent engineering platform" · โอเพนซอร์ส MIT · Python และ JS/TS (LangChain.js) · repo อัปเดตทุกวัน (release ล่าสุด 21–22 ต.ค. 2026)
- •แนวคิด: ทุกชิ้น (โมเดลแชต, embedding, vector store, retriever, เครื่องมือ) มีหน้าตาเดียวกัน จึงต่อกันเป็นโซ่ได้ และสลับยี่ห้อได้โดยไม่แก้โค้ดส่วนอื่น
- •เริ่มใช้: uv add langchain แล้วเรียก init_chat_model("ผู้ให้บริการ:ชื่อโมเดล") — ชื่อโมเดลเป็นข้อความเดียว เปลี่ยนจาก Claude เป็น Qwen ในเครื่องได้ด้วยการแก้ string
- •หัวใจของ v1: create_agent(model, tools, system_prompt, middleware, response_format, checkpointer) — ได้ agent ที่วนคิด → เรียกเครื่องมือ → คิดต่อ จนตอบได้ และคืนผลเป็นโครงสร้างตาม schema ได้
- •ข้างในจริงๆ create_agent สร้างกราฟของ LangGraph ให้ — จึงได้ความสามารถของ LangGraph (จำสถานะ หยุดรอคน กลับมาทำต่อ) มาด้วย
2. ระบบนิเวศ — แต่ละชิ้นทำอะไร
- •langchain-core: นิยามหน้าตากลาง (ข้อความ, โมเดล, เครื่องมือ) — ชิ้นเล็กที่สุดที่ทุกอย่างพึ่ง
- •langchain: create_agent + middleware + init_chat_model / init_embeddings + ตัวต่อ MCP
- •LangGraph: ชั้นล่างสำหรับ workflow ที่ต้องควบคุมละเอียด เป็นกราฟมีสถานะ เก็บ checkpoint ลง Postgres ได้ หยุดรอคนอนุมัติได้
- •Deep Agents: ชั้นบนสุด สำหรับงานยาว มีวางแผน แยก sub-agent และใช้ระบบไฟล์ — แนวเดียวกับที่ Claude Code ทำงาน
- •Partners (แพ็กเกจผู้ให้บริการ): anthropic, openai, ollama, huggingface, mistralai, deepseek, groq, openrouter, xai, qdrant, chroma, nomic, exa, perplexity ฯลฯ
- •LangSmith (ไม่ใช่โอเพนซอร์ส): ดู trace ทุกขั้น วัดผล agent และ deploy — บริการคลาวด์มีค่าใช้จ่าย
3. Middleware ที่องค์กรต้องใช้ → แก้ปัญหาอะไร
middleware คือชั้นที่แทรกก่อน/หลังการเรียกโมเดลหรือเครื่องมือ — ส่วนที่ทำให้ agent พร้อมใช้ในองค์กรจริง (ชื่อตามไฟล์ใน libs/langchain_v1/langchain/agents/middleware)
| Middleware | ทำอะไร | ใช้ตอนไหนในองค์กร |
|---|---|---|
| pii | ซ่อน/ลบข้อมูลส่วนตัวก่อนถึงโมเดลหรือก่อนบันทึก | เลขบัตร ชื่อลูกค้า เบอร์โทร ใน HR / ฝ่ายขาย |
| human_in_the_loop | หยุดรอคนกดอนุมัติก่อนเรียกเครื่องมือบางตัว | ก่อนเขียนข้อมูลลง ERP / ส่งอีเมล / สั่งซื้อ |
| model_fallback · model_retry | โมเดลหลักล่ม → สลับไปตัวสำรอง / ลองใหม่ | บริการที่พนักงานใช้ทั้งวัน ห้ามล่ม |
| tool_call_limit · model_call_limit | จำกัดจำนวนรอบต่อคำถาม | กัน agent วนไม่จบ กินเครื่อง |
| tool_retry · tool_error | จัดการเมื่อ API ภายในตอบผิดพลาด | ระบบเก่าที่ช้า/หลุดบ่อย |
| summarization · context_editing | ย่อบทสนทนายาวให้พอดีหน้าต่างโมเดล | โมเดลเล็กในเครื่องที่ context สั้น |
| tool_selection | เลือกเฉพาะเครื่องมือที่เกี่ยวมาให้โมเดลดู | องค์กรที่มีเครื่องมือหลายสิบตัว |
| todo · file_search · shell_tool | ให้ agent วางแผนเป็นขั้น ค้นไฟล์ รันคำสั่ง | งานยาวหลายขั้น — ใช้อย่างระวัง (shell) |
ทั้งหมดนี้มากับแพ็กเกจฟรี ไม่ต้องใช้ LangSmith
4. ใช้กับงานลูกค้าแบบ "AI ในเซิร์ฟเวอร์องค์กร" อย่างไร
ต่อจากแผนที่น้องเล่าเมื่อเช้า (23/10 06:27): ความรู้ที่เปลี่ยนบ่อยให้ค้นจากฐานข้อมูล ไม่ใส่ในโมเดล — LangChain คือตัวประกอบชิ้นเหล่านี้เข้าด้วยกัน
- •โมเดล: Qwen / Typhoon ขนาดเล็กบน Ollama หรือ vLLM ในเครื่องลูกค้า → langchain-ollama หรือตัวต่อแบบ OpenAI-compatible
- •ความรู้: pgvector (Postgres ที่ลูกค้ามีอยู่แล้ว) + embedding bge-m3 → retriever ของ LangChain
- •เครื่องมือ: API ภายใน (ERP, SAP B1, Data Warehouse) ห่อเป็นฟังก์ชัน Python ธรรมดา แล้วส่งให้ create_agent
- •ความปลอดภัย: PII middleware ปิดข้อมูลส่วนตัว · human-in-the-loop ก่อนเขียนข้อมูล · tool_call_limit กันวนไม่จบ
- •ความจำการสนทนา: checkpointer ลง Postgres ภายในองค์กร — ข้อมูลไม่ออกนอกบ้าน
- •Orasa AI: ระบบค้นรหัสสินค้าเดิม (16,572 รายการ) เป็น "เครื่องมือ" ให้ agent เรียก → agent อธิบายเป็นภาษาไทยว่าควรใช้รหัสไหน โดยไม่ต้องสอนโมเดลจำรหัส
5. ไม่ควรใช้ตรงไหน
- •แกนของน้อง (AngelaServer): ขัดกฎ Claude CLI only และไม่ได้อะไรเพิ่ม — ClaudeBridge + scheduler + rag ทำหน้าที่นี้อยู่แล้ว
- •งานที่เรียกโมเดลครั้งเดียวจบ (สรุปข้อความ, แปล): เรียก SDK ตรงๆ ง่ายกว่า อ่าน error ง่ายกว่า
- •ถ้าลูกค้าไม่ยอมให้ข้อมูลออกนอก: อย่าเปิด LangSmith แบบคลาวด์โดยไม่ตั้งใจ (ส่ง trace ออกไปทั้งข้อความ) — ต้องปิด หรือใช้ตัว self-host
- •ล็อกเวอร์ชันเสมอ: release ออกเกือบทุกวัน ให้ pin เวอร์ชันใน requirements และอัปเกรดเป็นรอบพร้อมรันชุดทดสอบ
Open questions
- 1.ต้นแบบ Orasa Agent ตอบดีพอจะทำชุดคำถามทดสอบ 100 ข้อ (จาก log จริง) เพื่อวัดก่อนให้ SE ลองไหม
- 2.ข้อเสนอลูกค้า (EWG / SiamEast) จะระบุ LangChain + LangGraph เป็นมาตรฐานของ Angelora เลยไหม หรือเปิดไว้เลือกตามงาน
- 3.ถ้าลูกค้าต้องการดู trace / ประเมินผล agent จะใช้ LangSmith (คลาวด์ มีค่าใช้จ่าย) หรือเครื่องมือเปิดที่ติดตั้งในองค์กรได้
Sources
- GitHub — langchain-ai/langchain (ที่รักส่งมา)· accessed 23 ต.ค. 2026
- LangChain docs — overview· accessed 23 ต.ค. 2026
- LangChain ecosystem — LangChain · LangGraph · Deep Agents· accessed 23 ต.ค. 2026
- Agent middleware (source)· accessed 23 ต.ค. 2026
- LangGraph· accessed 23 ต.ค. 2026
- Integrations — providers· accessed 23 ต.ค. 2026