Section 1: ทำไมต้องรัน LLM เอง และภาพรวมเครื่องมือ
- เหตุผลที่องค์กรเลือกรันโมเดลเอง: ความลับของข้อมูล PDPA ต้นทุน และการทำงานแบบออฟไลน์
- ข้อจำกัดเมื่อเทียบกับโมเดลบน Cloud ทั้งคุณภาพ ภาระดูแล และค่าฮาร์ดแวร์
- ภาพรวม Inference Engine: Ollama, llama.cpp, vLLM และสถาปัตยกรรมอ้างอิงของระบบ LLM ภายในองค์กร
- Lab: ติดตั้ง Ollama ดึงโมเดลแรกและคุยผ่าน Command Line
Section 2: เลือกโมเดล Open-weight ให้เหมาะกับงาน
- ตระกูลโมเดลที่ใช้บ่อย เช่น Qwen, Llama, Gemma และโมเดลภาษาไทยอย่าง Typhoon
- Base, Instruct และ Reasoning Model ต่างกันอย่างไร และเลือกใช้เมื่อไร
- อ่าน Model Card และเงื่อนไข License ก่อนนำไปใช้เชิงพาณิชย์
- ทดสอบความสามารถภาษาไทยด้วยชุดคำถามจากงานจริงขององค์กร
- Lab: เทียบคำตอบภาษาไทยของโมเดล 3 ตัวจากโจทย์เดียวกัน
Section 3: Lab: Quantization และรูปแบบ GGUF
- Quantization คืออะไร และทำไมโมเดลใหญ่จึงรันบนเครื่องเล็กได้
- ระดับที่ใช้บ่อยใน GGUF เช่น Q4_K_M, Q5_K_M และ Q8_0
- รูปแบบสำหรับ GPU อย่าง AWQ, GPTQ และ FP8 ที่ใช้กับ vLLM
- ผลของ Quantization ต่อคุณภาพคำตอบ ความเร็ว และหน่วยความจำ
- Lab: รันโมเดลเดียวกันสองระดับความละเอียดแล้วเทียบผลลัพธ์
Section 4: Workshop: คำนวณ GPU และหน่วยความจำ
- สูตรประมาณหน่วยความจำของน้ำหนักโมเดลจากจำนวนพารามิเตอร์และ Precision
- KV Cache คืออะไร และโตขึ้นอย่างไรตาม Context Length และผู้ใช้พร้อมกัน
- รันบน CPU, GPU ตัวเดียว หลายตัว หรือ Apple Silicon ต่างกันอย่างไร
- เลือก GPU และ Cloud Instance ให้คุ้มกับปริมาณงาน
- Workshop: ทำตารางคำนวณขนาดเครื่องสำหรับโจทย์ขององค์กรตัวเอง
Section 5: Lab: Ollama และ API มาตรฐาน
- สร้างโมเดลขององค์กรด้วย Modelfile: System Prompt, Template และ Parameter
- นำเข้าไฟล์ GGUF จาก Hugging Face และตั้งค่า Context Length, Keep Alive และคำขอพร้อมกัน
- รัน Ollama ใน Docker พร้อม GPU และเปิดให้เครื่องอื่นในเครือข่ายเรียกใช้
- เรียกผ่าน OpenAI-compatible API โดยแก้แค่ Base URL ของโค้ดเดิม
- Structured Output, Tool Calling และ Embedding กับโมเดลภายใน
- Lab: สคริปต์ Python ดึงข้อมูลจากเอกสารโดยไม่ส่งข้อมูลออกนอกเครื่อง