teach-me-ai / sources / HO-0
⟵ กลับหน้าแทร็กเสริม
HO-0 · Hands-On AI Engineering

แกลเลอรีแอป AI จริง 59 ตัว — เปิดของจริงมาผ่าทีละ pattern

⏱️ ~18 นาที 🎯 เข้าใจว่า repo นี้คืออะไร มี 6 หมวดอะไรบ้าง tech stack ที่เจอบ่อย และวิธีเดินอ่านโปรเจกต์ 1 ตัว 📦 ต้นทาง: Hands-On-AI-Engineering/README.md

แทร็กเสริม 2 อันก่อนหน้า (Superpowers, mattpocock/skills) สอน "วิธีทำงานกับ agent" — เป็นเมโธดอโลยีในโฟลเดอร์ .claude แต่แทร็กนี้ต่างออกไปคนละแนว: Hands-On AI Engineering คือ คลังโปรเจกต์แอป AI ที่ทำงานได้จริง ~59 ตัว เราจะไม่ได้เรียน "วิธีสั่ง agent" แต่จะเรียน "สถาปัตยกรรมของการสร้างแอป AI" — โดยเปิดของจริงมาผ่าทีละตัว แล้วถอด pattern ที่เอาไปใช้กับงาน NestJS/Go ของคุณได้

repo นี้คืออะไรกันแน่

README ของโปรเจกต์นิยามตัวเองไว้ว่า:

"A curated collection of practical, production-ready AI projects across multiple modalities, including language models, multimodal models, OCR systems, RAG pipelines, and AI agents. Each project is designed to help you learn, experiment, and build real-world AI applications."

แปลไทย: มันคือ คอลเลกชันโปรเจกต์ AI ที่คัดมาแล้ว ครอบคลุมหลาย modality (ข้อความ, ภาพ, เสียง, เอกสาร) แต่ละโปรเจกต์อยู่ในโฟลเดอร์ของตัวเอง มีโค้ดครบ + README.md + .env.example (บอกว่าต้องใช้ API key อะไรบ้าง) + ไฟล์รันได้จริง จุดสำคัญคือมันไม่ใช่ "ทฤษฎี" แต่เป็น ของที่รันเห็นผลได้ — เหมาะมากกับการเรียนแบบ "อ่านของจริงแล้วถอดแบบ"

🧭

วางแทร็กนี้ตรงไหนในหลักสูตร: HO เป็น ภาคสนาม ของเส้นทางหลัก — สิ่งที่คุณเรียนเป็นทฤษฎีใน Lv4 (RAG) และ Lv5 (Agents) จะมาเห็นเป็นของจริงที่นี่ ถ้ายังไม่แม่น concept พื้นฐาน แนะนำเรียน Lv4–Lv5 ควบคู่กันไป

ต่างจาก SP / MP ยังไง

SP / MP (2 แทร็กก่อน)HO (แทร็กนี้)
เป็นอะไรชุด skill ในโฟลเดอร์ .claudeคลังแอป AI ที่รันได้จริง
สอนอะไรวิธีทำงานกับ coding agentสถาปัตยกรรมของแอป AI
คำถามหลัก"จะให้ agent ทำงานเป็นระบบยังไง""แอป AI ตัวนี้ต่อกันยังไง แล้วฉันทำเองบ้างได้ไหม"
ภาษา/สแตกภาษาอะไรก็ได้ (เป็น prompt/skill)Python + หลาย provider → เราถอดเป็น pattern

6 หมวดในคลัง (รวม 59 โปรเจกต์)

🤖 AI Agents 34 📚 RAG 11 🎬 Multimodal 6 📸 OCR 4 🎧 Audio 3 🎛️ Fine-tuning 1
หมวด AI Agents ใหญ่สุด (34 ตัว) — สะท้อนว่าเทรนด์ปี 2026 คือ "agent" จริง ๆ แทร็ก HO จะไล่ทีละหมวดตามน้ำหนักนี้
หมวดทำอะไรตัวอย่างในคลัง
🤖 AI Agents (34)agent ทำงานอัตโนมัติ — single & multi-agentMulti-Agent Coding Assistant, Self-Reflective Agentic RAG, GitHub Intelligence Agent
📚 RAG (11)ตอบจากคลังความรู้ ไม่เดา (ground answer)GraphRAG, Hybrid RAG, HyDE, Vision RAG, Reasoning RAG
🎬 Multimodal (6)รวมภาพ/วิดีโอ + ข้อความGLM-OCR Pro, Video Understanding Agent, Multimodal RAG
📸 OCR (4)ดึงโครงสร้าง/ความหมายจากเอกสาร-ภาพReceipt Tracker, Image-to-Structured-Data, Prescription Digitizer
🎧 Audio (3)ฟัง/แปล/พูดMultilingual Audio Translator, Voice Support Agent
🎛️ Fine-tuning (1)เทรนโมเดลเฉพาะงานText-to-SQL Inventory (Qwen fine-tuned)

tech stack ที่เจอบ่อย — "แว่นจำแนก" ให้ไม่ตาลาย

พอเปิดหลายโปรเจกต์คุณจะเจอชื่อ library แปลก ๆ เต็มไปหมด อย่าเพิ่งตกใจ — จริง ๆ มันเข้ากลุ่มได้แค่ไม่กี่กลุ่ม ถ้าจำ "หน้าที่ของกลุ่ม" ได้ เห็นตัวไหนก็จะรู้ทันทีว่า มันทำหน้าที่อะไรในสถาปัตยกรรม (ตารางนี้ได้จากการสแกน README ย่อยทั้ง repo จริง):

กลุ่ม (หน้าที่)ชื่อที่เจอบ่อยเทียบกับโลก TS/Go ของคุณ
🎛️ UI สาธิตStreamlit, Gradioเหมือน frontend เร็ว ๆ ไว้เดโม (ในงานจริงคุณต่อ NestJS + React แทน)
🧠 Agent orchestrationLangChain, LangGraph, Agno, CrewAI, AG2, smolagentsเฟรมเวิร์กจัด "วงจร agent" — แนวคิดเดียวกับ state machine / job pipeline
🗂️ Vector storeChromaDB, Qdrant, FAISSที่เก็บ embedding — งานคุณใช้ pgvector บน PostgreSQL ได้เลย
📐 Structured outputInstructorบังคับ LLM ตอบเป็น JSON ตาม schema — เหมือน DTO + validation (Zod/class-validator)
💾 Memorymem0จำบทสนทนาข้ามรอบ — เทียบได้กับเก็บ state ลง Mongo/Redis
🎧 AudioWhisper (STT), Kokoro (TTS)โมเดลเสียง — มองเป็น "service แปลงเสียง↔ข้อความ" ที่คุณเรียกผ่าน API

เคล็ดลับ: คุณ ไม่ต้องจำชื่อทุกตัว — จำแค่ว่ามีกี่กลุ่มและแต่ละกลุ่มทำอะไร เวลาเจอชื่อใหม่ ให้ถามว่า "มันอยู่กลุ่มไหน" แล้ว pattern ที่เหลือจะเข้าใจง่ายทันที

แว่นหลักของทั้งแทร็ก: "pattern พกพาข้ามภาษา"

โปรเจกต์ต้นทางเป็น Python และใช้หลาย provider (OpenAI, Gemini, Mistral, Qwen ฯลฯ) แต่คุณถนัด TypeScript/NestJS และ Go เพราะฉะนั้นทุกบทในแทร็กนี้จะ ไม่ให้คุณจมกับ Python แต่จะสอนให้มองทะลุโค้ดไปเห็น pattern ที่อยู่เบื้องหลัง — ซึ่งพกพาข้ามภาษาได้ทั้งหมด

ยกตัวอย่าง pattern เดียวกัน มองด้วยแว่นนี้:

# ในโปรเจกต์ Python จะเห็นประมาณนี้ (Instructor + pydantic)
class Receipt(BaseModel):
    merchant: str
    total: float
    items: list[Item]

result = client.chat.completions.create(response_model=Receipt, ...)
// pattern เดียวกันในโลกคุณ (NestJS + Zod) — "บังคับ LLM ตอบตาม schema"
const Receipt = z.object({
  merchant: z.string(),
  total: z.number(),
  items: z.array(ItemSchema),
});
// → ส่ง schema ไปกับ tool/JSON mode แล้ว validate ผลลัพธ์กลับ

เห็นไหมว่า "structured output" เป็น pattern เดียวกันเป๊ะ — แค่เครื่องมือต่างกัน ทั้งแทร็กจะทำงานแบบนี้: เจอโค้ด Python → ถามว่า "pattern คืออะไร" → เขียนเป็นของคุณ

วิธีเดินอ่านโปรเจกต์ 1 ตัว (ใช้ได้กับทุกโปรเจกต์ในคลัง)

ทักษะที่สำคัญที่สุดของแทร็กนี้คือ "เปิดโปรเจกต์แปลกหน้าแล้วเข้าใจใน 10 นาที" ใช้ 5 ขั้นนี้ได้กับทุกตัว (ลองกับ ai_agents/agentic_rag_system/ เป็นตัวอย่าง):

1. README มันแก้ปัญหาอะไร 2. .env.example ใช้ provider ไหน 3. entrypoint main.py / app.py 4. data flow input→...→output 5. ถอด pattern ใช้ซ้ำได้ตรงไหน
5 ขั้นอ่านโปรเจกต์ไหนก็ได้ — เริ่มที่ "แก้ปัญหาอะไร" เสมอ ไม่ใช่กระโดดอ่านโค้ด
  1. อ่าน README ก่อน — โฟกัสหัวข้อ "Overview / Why" ให้ตอบได้ว่า มันแก้ปัญหาอะไร ก่อนแตะโค้ด
  2. เปิด .env.example — บอกทันทีว่าใช้ provider/บริการอะไร (OpenAI? Gemini? มี vector DB ไหม?) นี่คือ "รายการวัตถุดิบ"
  3. หา entrypoint — ไฟล์ main.py/app.py คือประตูหน้า ดูว่ามันเรียกอะไรเป็นลำดับ
  4. ไล่ data flow — ลากเส้นจาก input ของผู้ใช้ → ผ่าน step อะไรบ้าง → ออกมาเป็น output (นี่คือหัวใจของสถาปัตยกรรม)
  5. ถอด pattern — สรุปเป็นประโยคเดียวว่า "โครงหลักคือ X" แล้วถามว่า "ในงาน NestJS/Go ฉันทำแบบนี้ยังไง"

ลองกับ agentic_rag_system: README บอกมันคือ RAG ที่ "เกรดคำตอบตัวเองก่อนตอบ".env ใช้ Google/Gemini → entrypoint คือ main.py เรียก graph ใน rag_graph.py → flow คือ retrieve → grade → (rewrite ถ้าไม่ผ่าน) → generate วนได้ 3 รอบ → pattern ที่ถอดได้: "self-reflection loop — ตรวจคุณภาพ context ก่อน generate" (เราจะเจาะตัวนี้เต็ม ๆ ใน HO-1)

แผนที่แทร็ก HO ทั้ง 7 บท

บทเรียนอะไร
HO-0 (บทนี้)ภาพรวม 6 หมวด · tech stack · แว่น pattern · วิธีอ่านโปรเจกต์
HO-1AI Agents — agent loop, single vs multi-agent, orchestration
HO-2RAG 11 แบบ — ไล่สเปกตรัม naive → agentic → GraphRAG → HyDE → vision
HO-3Multimodal + OCR — vision-language + structured extraction
HO-4Audio — pipeline STT → LLM → TTS
HO-5Fine-tuning — เมื่อไหร่ควร fine-tune เทียบกับ RAG/prompt
HO-6 🎯นำไปใช้จริง — ประกอบ pattern ใหม่ย่อ ๆ บน NestJS ครบ end-to-end

ทำไมสำคัญกับงาน NestJS/Go ของคุณ

  • เห็นภาพ "แอป AI จริงต่อกันยังไง": ไม่ใช่แค่เรียก LLM 1 ครั้ง แต่มี retrieval, tool, memory, loop — เหมือนออกแบบ service ที่มีหลาย component
  • ได้คลัง pattern พร้อมใช้: self-reflection loop, router agent, structured extraction, STT→LLM→TTS — เอาไปแปะในโปรเจกต์คุณได้ทันที
  • ฝึกอ่านโค้ดแปลกหน้าเร็วขึ้น: ทักษะ "เปิด repo ไม่รู้จักแล้วเข้าใจใน 10 นาที" ใช้ได้กับทุกงาน ไม่ใช่แค่ AI
⚠️

ข้อควรระวัง: โปรเจกต์ในคลังนี้เป็น เดโม/prototype เพื่อการเรียนรู้ (แม้ README จะเขียนว่า "production-ready") — ส่วนใหญ่ยังขาด auth, rate limit, error handling ที่ครบ, การจัดการ cost/observability เวลาเอา pattern ไปใช้จริงบน NestJS/Go อย่าลืมเติมของพวกนี้ (เราจะพูดถึงเรื่อง production เต็ม ๆ ใน Lv7)

🎯 แบบฝึกหัด
  1. เปิด sources/Hands-On-AI-Engineering/README.md แล้วนับด้วยตัวเองว่า หมวด AI Agents มีกี่โปรเจกต์ ตรงกับที่บทนี้บอก (34) ไหม
  2. เลือกโปรเจกต์ที่คุณสนใจมา 1 ตัว (แนะนำในหมวด Agents หรือ RAG) แล้วใช้ 5 ขั้นการอ่าน เปิด README + .env.example ของมัน แล้วตอบให้ได้ว่า "มันแก้ปัญหาอะไร" และ "ใช้ provider ไหน"
  3. จากโปรเจกต์ที่เลือก ลองถอด pattern เป็นประโยคเดียว แล้วเขียนต่อว่า "ในงาน NestJS/Go ของฉัน จะทำแบบนี้ยังไง 1 บรรทัด"

เมื่อทำเสร็จ พิมพ์ /quiz HO-0 เพื่อทดสอบความเข้าใจ