การแก้ไขปัญหา Base URL

การเปลี่ยนโมเดลควรเป็นเรื่องง่าย คุณแค่เปลี่ยน endpoint และใช้ SDK ตัวเดิมต่อไป แต่มักจะเกิดข้อผิดพลาดเช่น 401, 404 หรือ 429

ก่อนที่จะโทษ SDK ให้ลองตรวจสอบ 7 ข้อนี้ก่อน

  1. ตรวจสอบ prefix /v1 Gateway ส่วนใหญ่จำเป็นต้องมี suffix /v1 ใน base URL หากคุณใช้เพียงแค่โดเมน SDK อาจเรียกไปยัง path ที่ผิดพลาด ควรคัดลอกรูปแบบที่ถูกต้องจากเอกสารของผู้ให้บริการเสมอ

  2. ตรวจสอบ API keys ของคุณ การใช้ key ผสมกันเป็นสาเหตุหลักของความล้มเหลว ระวังเรื่องเหล่านี้:

  • การใช้ OpenAI key กับ relay URL
  • การใช้ relay key กับ OpenAI URL
  • การใช้ key จากโปรเจกต์ที่ถูกปิดใช้งาน
  • การมีช่องว่างเกินมาใน key

หากคุณพบข้อผิดพลาด 401 ให้ลองพิมพ์เฉพาะตัวอักษรไม่กี่ตัวแรกและตัวสุดท้ายของ key เพื่อนำไปเปรียบเทียบกับใน dashboard ของคุณ อย่าบันทึก (log) key ทั้งหมดลงในระบบเด็ดขาด

  1. ใช้ชื่อโมเดลที่ถูกต้องแม่นยำ อย่าเดาชื่อโมเดล ชื่อของ gateway เปลี่ยนแปลงได้ตามความพร้อมใช้งาน ให้คัดลอก model ID มาจากรายการของผู้ให้บริการโดยตรง การใช้ชื่อที่ไม่ถูกต้องจะนำไปสู่ข้อผิดพลาด 404 หรือ model_not_found

  2. ลองส่งคำขอทดสอบขนาดเล็ก ทดสอบการเชื่อมต่อด้วยคำขอขนาดเล็กเพียงหนึ่งรายการก่อนที่จะเริ่ม debug แอปพลิเคชันทั้งหมดของคุณ หากการ "ping" แบบง่ายๆ ทำงานได้ แสดงว่า URL, key และโมเดลของคุณถูกต้องแล้ว ปัญหาอาจอยู่ที่ logic ของแอปพลิเคชัน เช่น เรื่อง streaming หรือ tool calling

  3. ทำความเข้าใจรหัสข้อผิดพลาด

  • 401 หมายถึง key หรือสถานะบัญชีของคุณไม่ถูกต้อง
  • 429 หมายถึงคุณใช้งานเกินขีดจำกัด (rate limit) หรือยอดเงินคงเหลือหมด หากคุณพบ 429 ให้ตรวจสอบหน้าการชำระเงิน (billing page) หลีกเลี่ยงการทำ retry loop ที่ถี่เกินไป เพราะจะยิ่งทำให้ติด limit หนักกว่าเดิม
  1. ตรวจสอบหน้าสถานะ หากโค้ดของคุณเคยใช้งานได้เมื่อวานแต่กลับใช้ไม่ได้ในวันนี้ อย่าเพิ่งเขียนโค้ดใหม่ ให้ตรวจสอบหน้า status page ของผู้ให้บริการก่อน ปัญหาจากต้นทาง (upstream incidents) เป็นเรื่องปกติสำหรับบริการประเภท relay

  2. ใช้คำสั่ง curl ควรเก็บคำสั่ง curl แบบสั้นๆ ไว้ในเอกสารของโปรเจกต์ เพื่อใช้รันเมื่อแอปพลิเคชันเกิดปัญหา

  • หาก curl ล้มเหลว: ให้ตรวจสอบ (debug) บัญชี, gateway หรือเครือข่ายของคุณ
  • หาก curl ทำงานได้: ให้ตรวจสอบโค้ดในแอปพลิเคชันของคุณ

การจัดการพื้นฐานให้เรียบร้อยจะช่วยให้การเปลี่ยนโมเดลเป็นเรื่องง่าย

Source: https://dev.to/alice_kelly_68226d164218e/openai-compatible-base-url-troubleshooting-7-checks-before-you-blame-the-sdk-53ge

Optional learning community: https://t.me/GyaanSetuAi