Extend OllamaApiClient Timeout (Note)

พอดีช่วงนี้มีลอง Side Project ทำ Coding Review Agent โดยใช้ Local LLM แล้วพบว่าการทำงานจริงมันช้ามาก ผมใช้เครื่องเก่าด้วยมั่งไฟล์นึงใช้เวลา Review ประมาณ 20-30 นาที จะเจอ Error แนวๆนี้ ซึ่งมันมาจาก OllamaApiClient แต่ตัว Ollama ใช้ HttpClient ซึ่งกำหนดค่า Default 100 Second (อ้างอิงจาก HttpClient.Timeout) ซึ่งถ้าดู Code ของ OllamaApiClient มันยอมให้ Inject HttpClient มาได้นะ ดังนั้นเราสามารถมา Custom Timeout ได้ อย่าง Code ด้านล่างกำหนดไว้ 20 นาทีครับ หรือ ถ้าเอาแบบโหดสุดก็กำหนด Timeout.InfiniteTimeSpan อีกแบบใช้ reflection มาช่วย แต่ผมว่ามันเกิด Overhead เยอะ ถ้าจะลองผมใช้ให้ แก้มือ + Gemini ปรับมาแล้วตามนี้ sample การใช้ประมาณนี้








