Section 17: Lab: Authentication และ Authorization
- OAuth2 Password Flow และ JSON Web Token ด้วย PyJWT
- Hash รหัสผ่านด้วย pwdlib แบบ Argon2
- กำหนดสิทธิ์ตามบทบาท เช่น ผู้ดูผล ผู้ใช้งาน และผู้ดูแลโมเดล
- API Key สำหรับระบบอื่นที่เรียกใช้บริการพยากรณ์
- Lab: ป้องกัน Endpoint พยากรณ์และข้อมูลลูกค้า
Section 18: Lab: Testing และคุณภาพของ API
- เขียนทดสอบด้วย pytest และ TestClient ของ FastAPI
- ทดสอบสัญญาของโมเดล เช่น ชนิดข้อมูลขาเข้าและช่วงของผลลัพธ์
- ใช้ฐานข้อมูลทดสอบแยกจากระบบจริง
- Logging และการวัดเวลาตอบสนองของ API
- Lab: ชุดทดสอบที่รันได้ทุกครั้งก่อนปล่อยรุ่นใหม่
Section 19: Lab: Docker และการดูแลโมเดลหลังใช้งาน
- สร้าง Docker Image ของ API และรวมกับ PostgreSQL ด้วย Docker Compose
- ตั้งค่าระบบด้วย Environment Variables และ pydantic-settings
- ติดตามข้อมูลที่เข้ามาพยากรณ์ว่าเปลี่ยนไปจากข้อมูลที่ใช้สอนหรือไม่
- วางแผน Retrain และสลับรุ่นโมเดลผ่าน Alias โดยไม่หยุดระบบ
- Lab: รันระบบพยากรณ์ทั้งชุดด้วยคำสั่งเดียว
Section 20: Workshop: Capstone ระบบพยากรณ์ครบวงจร
- เลือกโจทย์ เช่น พยากรณ์ยอดขาย ความเสี่ยงลูกค้า หรือกลุ่มลูกค้า
- ทำครบตั้งแต่เตรียมข้อมูล สร้างโมเดล และบันทึกใน MLflow
- ส่งต่อเป็น API ที่มีฐานข้อมูล การยืนยันตัวตน และชุดทดสอบ
- นำเสนอผลงาน รีวิวร่วมกัน และสรุป Checklist ก่อนใช้งานจริง