[ { "id": 0, "start_sec": 0.0, "end_sec": 6.2, "text": "สวัสดีครับ วันนี้เราจะมาเรียนรู้เรื่อง model serving และ API deployment กันนะครับ", "language": "th" }, { "id": 1, "start_sec": 6.2, "end_sec": 13.5, "text": "ก่อนอื่นเรามาดูภาพรวมของ pipeline ที่เราจะ build กันก่อน", "language": "th" }, { "id": 2, "start_sec": 13.5, "end_sec": 21.0, "text": "We start by training a simple machine learning model, then we save it to disk.", "language": "en" }, { "id": 3, "start_sec": 21.0, "end_sec": 29.4, "text": "ขั้นตอนต่อไปคือการสร้าง REST API ด้วย FastAPI เพื่อให้ model ของเราพร้อมใช้งาน", "language": "th" }, { "id": 4, "start_sec": 29.4, "end_sec": 37.8, "text": "Here you can see the project structure on my screen, with the model file and the server code.", "language": "en" }, { "id": 5, "start_sec": 37.8, "end_sec": 46.0, "text": "เรามาเขียน endpoint แรกกันครับ ชื่อว่า slash predict สำหรับรับ input", "language": "th" }, { "id": 6, "start_sec": 46.0, "end_sec": 54.5, "text": "The predict endpoint takes a JSON payload and returns the model prediction.", "language": "en" }, { "id": 7, "start_sec": 54.5, "end_sec": 63.0, "text": "ตรงนี้สำคัญมากนะครับ เราต้อง validate input ก่อนเสมอเพื่อความปลอดภัย", "language": "th" }, { "id": 8, "start_sec": 63.0, "end_sec": 72.2, "text": "Now let's talk about Docker. We containerize the application so it runs anywhere.", "language": "en" }, { "id": 9, "start_sec": 72.2, "end_sec": 80.5, "text": "ผมจะเขียน Dockerfile แบบง่าย ๆ ให้ดูนะครับ เริ่มจาก base image ของ Python", "language": "th" }, { "id": 10, "start_sec": 80.5, "end_sec": 89.0, "text": "After building the image, we run the container and expose port eight thousand.", "language": "en" }, { "id": 11, "start_sec": 89.0, "end_sec": 98.3, "text": "คำถามที่หลายคนสงสัยคือ แล้วเราจะ deploy ขึ้น production ยังไง?", "language": "th" }, { "id": 12, "start_sec": 98.3, "end_sec": 107.0, "text": "We can deploy this container to a cloud service or to Hugging Face Spaces for a demo.", "language": "en" }, { "id": 13, "start_sec": 107.0, "end_sec": 116.4, "text": "เรื่องของ latency ก็สำคัญครับ เราควรวัด response time ของ API เสมอ", "language": "th" }, { "id": 14, "start_sec": 116.4, "end_sec": 125.0, "text": "Let me show you how to add simple metrics logging to track p50 and p95 latency.", "language": "en" }, { "id": 15, "start_sec": 125.0, "end_sec": 134.7, "text": "ต่อไปเป็นเรื่อง monitoring เราจะใช้ log file เก็บ metric แบบง่าย ๆ ก่อน", "language": "th" }, { "id": 16, "start_sec": 134.7, "end_sec": 144.0, "text": "Finally, remember to add a health check endpoint so the platform knows the service is alive.", "language": "en" }, { "id": 17, "start_sec": 144.0, "end_sec": 153.5, "text": "สรุปนะครับ วันนี้เราได้เรียนรู้เรื่อง model serving, API, Docker และ deployment", "language": "th" }, { "id": 18, "start_sec": 153.5, "end_sec": 162.8, "text": "In summary, you now have a complete pipeline from model to a deployed API.", "language": "en" }, { "id": 19, "start_sec": 162.8, "end_sec": 172.0, "text": "ถ้าชอบ video นี้ อย่าลืมกด like และ subscribe เพื่อไม่พลาด content ใหม่ ๆ นะครับ", "language": "th" }, { "id": 20, "start_sec": 172.0, "end_sec": 184.0, "text": "Thank you for watching, and see you in the next tutorial. Goodbye!", "language": "en" } ]