การแก้ไขปัญหา Base URL
การเปลี่ยนโมเดลควรเป็นเรื่องง่าย คุณแค่เปลี่ยน endpoint และใช้ SDK ตัวเดิมต่อไป แต่มักจะเกิดข้อผิดพลาดเช่น 401, 404 หรือ 429
ก่อนที่จะโทษ SDK ให้ลองตรวจสอบ 7 ข้อนี้ก่อน
ตรวจสอบ prefix
/v1Gateway ส่วนใหญ่จำเป็นต้องมี suffix/v1ใน base URL หากคุณใช้เพียงแค่โดเมน SDK อาจเรียกไปยัง path ที่ผิดพลาด ควรคัดลอกรูปแบบที่ถูกต้องจากเอกสารของผู้ให้บริการเสมอตรวจสอบ API keys ของคุณ การใช้ key ผสมกันเป็นสาเหตุหลักของความล้มเหลว ระวังเรื่องเหล่านี้:
- การใช้ OpenAI key กับ relay URL
- การใช้ relay key กับ OpenAI URL
- การใช้ key จากโปรเจกต์ที่ถูกปิดใช้งาน
- การมีช่องว่างเกินมาใน key
หากคุณพบข้อผิดพลาด 401 ให้ลองพิมพ์เฉพาะตัวอักษรไม่กี่ตัวแรกและตัวสุดท้ายของ key เพื่อนำไปเปรียบเทียบกับใน dashboard ของคุณ อย่าบันทึก (log) key ทั้งหมดลงในระบบเด็ดขาด
ใช้ชื่อโมเดลที่ถูกต้องแม่นยำ อย่าเดาชื่อโมเดล ชื่อของ gateway เปลี่ยนแปลงได้ตามความพร้อมใช้งาน ให้คัดลอก model ID มาจากรายการของผู้ให้บริการโดยตรง การใช้ชื่อที่ไม่ถูกต้องจะนำไปสู่ข้อผิดพลาด 404 หรือ
model_not_foundลองส่งคำขอทดสอบขนาดเล็ก ทดสอบการเชื่อมต่อด้วยคำขอขนาดเล็กเพียงหนึ่งรายการก่อนที่จะเริ่ม debug แอปพลิเคชันทั้งหมดของคุณ หากการ "ping" แบบง่ายๆ ทำงานได้ แสดงว่า URL, key และโมเดลของคุณถูกต้องแล้ว ปัญหาอาจอยู่ที่ logic ของแอปพลิเคชัน เช่น เรื่อง streaming หรือ tool calling
ทำความเข้าใจรหัสข้อผิดพลาด
- 401 หมายถึง key หรือสถานะบัญชีของคุณไม่ถูกต้อง
- 429 หมายถึงคุณใช้งานเกินขีดจำกัด (rate limit) หรือยอดเงินคงเหลือหมด หากคุณพบ 429 ให้ตรวจสอบหน้าการชำระเงิน (billing page) หลีกเลี่ยงการทำ retry loop ที่ถี่เกินไป เพราะจะยิ่งทำให้ติด limit หนักกว่าเดิม
ตรวจสอบหน้าสถานะ หากโค้ดของคุณเคยใช้งานได้เมื่อวานแต่กลับใช้ไม่ได้ในวันนี้ อย่าเพิ่งเขียนโค้ดใหม่ ให้ตรวจสอบหน้า status page ของผู้ให้บริการก่อน ปัญหาจากต้นทาง (upstream incidents) เป็นเรื่องปกติสำหรับบริการประเภท relay
ใช้คำสั่ง curl ควรเก็บคำสั่ง curl แบบสั้นๆ ไว้ในเอกสารของโปรเจกต์ เพื่อใช้รันเมื่อแอปพลิเคชันเกิดปัญหา
- หาก curl ล้มเหลว: ให้ตรวจสอบ (debug) บัญชี, gateway หรือเครือข่ายของคุณ
- หาก curl ทำงานได้: ให้ตรวจสอบโค้ดในแอปพลิเคชันของคุณ
การจัดการพื้นฐานให้เรียบร้อยจะช่วยให้การเปลี่ยนโมเดลเป็นเรื่องง่าย
Optional learning community: https://t.me/GyaanSetuAi