คำถามที่พบบ่อย
การแก้ไขปัญหา
แก้ไขปัญหาการยืนยันตัวตน โมเดล สตรีมมิ่ง งาน และข้อจำกัดอัตรา ด้วยรายการตรวจสอบตามอาการ
เริ่มจากอาการ แล้วปฏิบัติตามวิธีแก้ไข ความล้มเหลวส่วนใหญ่มาจาก base URL คีย์ ID โมเดล หรือยอดคงเหลือ
ตารางเริ่มจากอาการ
| อาการ | สาเหตุที่เป็นไปได้ | วิธีแก้ไข |
|---|---|---|
401 UNAUTHORIZED | คีย์หายไป ผิด ถูกเพิกถอน หรือไม่ได้ส่ง | ส่ง Authorization: Bearer $FELO_API_KEY สร้างคีย์ใหม่หากคีย์ถูกเพิกถอน |
402 INSUFFICIENT_CREDITS | ยอดคงเหลือไม่พอสำหรับการเรียก | เติมเงินใน Console Billing |
| 404 ทุกคำขอ | base URL มีพาธที่ endpoint เติมให้อยู่แล้ว | ใช้ https://openapi.felo.ai/api/v1 สำหรับไคลเอนต์ OpenAI และ https://openapi.felo.ai/api สำหรับไคลเอนต์ Anthropic |
| 404 กับโมเดลหนึ่ง | ID โมเดลไม่เป็นสาธารณะ หรือ endpoint ไม่ให้บริการโมเดลนั้น | ตรวจสอบ ID โมเดลบนหน้ารายการโมเดลและเอกสารของ endpoint |
400 ข้อผิดพลาด model หรือ max_tokens | ฟิลด์ที่จำเป็นหายไป หรือโมเดลไม่ยอมรับรูปแบบคำขอ | เพิ่ม max_tokens สำหรับ Messages ลบฟิลด์ที่ไม่รองรับ |
| 429 | ขีดจำกัดอัตรา หรือขีดจำกัดของผู้ให้บริการต้นทาง | อ่าน Retry-After ดูข้อผิดพลาด ขีดจำกัด และการลองใหม่ |
| 5xx | ความล้มเหลวจากต้นทางหรือบริการ | ลองใหม่พร้อมการหน่วงแบบทวีคูณ ระบุ request_id หากยังเกิดขึ้นต่อเนื่อง |
| สตรีมเชื่อมต่อได้แต่ไม่ส่งข้อมูล | พร็อกซีกำลังบัฟเฟอร์การตอบกลับ หรือตัวแยกวิเคราะห์เหตุการณ์คาดหวังรูปแบบผิด | อ่านสตรีมแบบเพิ่มทีละส่วน ปิดการบัฟเฟอร์การตอบกลับในพร็อกซีของคุณ |
| งานไม่เคยเสร็จ | endpoint สำหรับโพลผิด หรือไม่ได้จัดการสถานะสิ้นสุด | โพล endpoint สถานะของงานนั้นเองและหยุดเมื่อพบค่าสิ้นสุด |
| การเรียกเครื่องมือถูกเพิกเฉย | โมเดลไม่ได้ประกาศความสามารถนั้น | ตรวจสอบ supported_parameters ในแค็ตตาล็อก |
| Data API ส่ง 404 | เติมคำนำหน้า /v1/beta ซ้ำสองครั้ง | ใช้พาธตามที่เขียนไว้ในเอกสารอ้างอิงทุกประการ |
การรับรองความถูกต้อง
คีย์ที่ถูกเพิกถอนจะส่งข้อความที่ระบุคำนำหน้าของคีย์:
{
"status": 401,
"code": "UNAUTHORIZED",
"message": "API Key has been revoked (keyPrefix=...)"
}รายการตรวจสอบ:
- header คือ
Authorization: Bearer <key>สำหรับ Model API และ Felo APIs - Data API ยังยอมรับ
X-API-Key: <key> - คีย์ไม่ได้ถูกครอบด้วยเครื่องหมายคำพูด และไม่มีอักขระขึ้นบรรทัดใหม่ต่อท้ายจากการคัดลอกตัวแปรสภาพแวดล้อม
- สภาพแวดล้อมที่ปรับใช้มีการตั้งค่าตัวแปรจริง คีย์ที่ใช้ได้ในเครื่องอาจหายไปในโปรดักชัน
- คีย์ไม่ถูกลบหรือหมุนเวียน คีย์ที่ถูกลบหรือหมุนเวียนแล้วไม่สามารถแสดงอีกครั้ง ให้สร้างใหม่
ดูการรับรองความถูกต้องสำหรับการสร้างคีย์และขีดจำกัด
กับดักของ base URL
| ไคลเอนต์ | base URL ที่ถูกต้อง |
|---|---|
| OpenAI SDK | https://openapi.felo.ai/api/v1 |
| Anthropic SDK | https://openapi.felo.ai/api |
| endpoint โมเดลโดยตรง | https://openapi.felo.ai/api/v1/chat/completions, /responses หรือ /messages |
| Data API | https://openapi.felo.ai/v1/beta |
Felo /v2 APIs | https://openapi.felo.ai/v2 |
ข้อผิดพลาดที่พบบ่อยสองข้อ:
- การเพิ่ม
/chat/completionsให้ base URL ที่ SDK ต่อท้ายอยู่แล้ว - การตั้ง base URL ของ Anthropic เป็น
https://openapi.felo.ai/api/v1SDK จะต่อท้ายด้วย/v1/messagesคำขอจึงกลายเป็น/api/v1/v1/messages
ปัญหา ID โมเดล
ID โมเดลคือ ID สาธารณะจากแค็ตตาล็อก ไม่ใช่ชื่อภายในของผู้ให้บริการต้นทางหรือชื่อที่แสดง
- ค้นหา ID บนหน้ารายการโมเดลหรือใน
GET /api/v1/models - ยืนยันว่าโมเดลรองรับโปรโตคอลที่คุณเรียก (
supported_protocols) - หากคุณตรึงช่องทางไว้ ให้ยืนยันว่าช่องทางนั้นเผยแพร่และพร้อมใช้งานสำหรับโมเดลนั้น ช่องทางที่ไม่พร้อมใช้งานไม่ใช่ตัวสำรอง
ดูช่องทางและการกำหนดเส้นทางผู้ให้บริการ
ปัญหาสตรีมมิ่ง
- ตั้ง
stream: trueในเนื้อหาคำขอ ไม่ใช่เป็นพารามิเตอร์คิวรี - อ่านเนื้อหาการตอบกลับเป็นสตรีม การรอให้ได้การตอบกลับครบจะทำให้สตรีมมิ่งไม่เกิดประโยชน์
- พร็อกซีและแพลตฟอร์มแบบเซิร์ฟเวอร์เลสบางตัวบัฟเฟอร์การตอบกลับ ให้ปิดการบัฟเฟอร์สำหรับเส้นทางที่พร็อกซีคำขอ
- Chat Completions สตรีม
choices[0].deltaไม่ใช่choices[0].messageเนื้อหาสุดท้ายจะมาในหลาย chunk - สตรีมอาจจบโดยไม่มีเหตุการณ์สิ้นสุดที่สมบูรณ์หากการเชื่อมต่อหลุด ให้ถือว่าการเชื่อมต่อที่หลุดคือการตอบกลับที่ไม่สมบูรณ์
ปัญหางานอะซิงโครนัส
- โพล endpoint สถานะที่เป็นของตระกูลงานนั้น เวิร์กโฟลว์ Felo ใช้
GET /v2/tasks/{task_id}/statusส่วนงานวิดีโอและรูปภาพของโมเดลใช้ endpoint การสร้างของตนเอง - หยุดเมื่อพบสถานะสิ้นสุดทุกแบบ รวมถึงความล้มเหลวและการหมดอายุ ไม่ใช่แค่ความสำเร็จ
- callback ของวิดีโอและรูปภาพถูกเพิกเฉยในปัจจุบัน ห้ามรอ webhook
- URL ผลลัพธ์อาจมีอายุสั้น หากการดาวน์โหลดหมดอายุ ให้ขอ URL ใหม่จาก endpoint สถานะ
- ตรวจสอบงานก่อนส่งคำขอใหม่ การส่งงานที่กำลังทำงานอยู่อีกครั้งจะสร้างงานซ้ำและทั้งสองงานถูกเรียกเก็บเงิน
ปัญหา Data API
- ใช้พาธของ method ตามที่ปรากฏในเอกสารอ้างอิง Data APIทุกประการ
- เนื้อหาคำขอเฉพาะเจาะจงตามซัพพลายเออร์ ฟิลด์ที่ใช้ได้กับซัพพลายเออร์รายหนึ่งไม่ได้รับประกันว่าจะใช้ได้กับอีกราย
- ข้อผิดพลาดของผู้ให้บริการอาจมาในรูปแบบการตอบกลับ 4xx พร้อมข้อความเฉพาะของผู้ให้บริการ ให้บันทึก
request_idและเนื้อหาการตอบกลับ
ข้อควรระวังด้านความปลอดภัย
- ห้ามใส่คีย์ API ในโค้ดเบราว์เซอร์ แพ็กเกจแอปมือถือ หรือที่เก็บโค้ดสาธารณะ ให้เก็บไว้บนเซิร์ฟเวอร์และพร็อกซีคำขอ
- ห้ามบันทึกคีย์แบบเต็ม ให้บันทึกเฉพาะคำนำหน้าหากจำเป็นต้องระบุคีย์
- หมุนเวียนคีย์ทันทีหากอาจรั่วไหล
ก่อนติดต่อฝ่ายสนับสนุน
รวบรวม:
- Endpoint และ HTTP method
- สถานะ HTTP,
codeและrequest_id - ID โมเดลหรือ ID งาน
- เวลาประทับพร้อมเขตเวลา
- เนื้อหาคำขอขั้นต่ำที่ลบข้อมูลลับออกแล้ว
ส่งข้อมูลนี้ให้ฝ่ายสนับสนุนพร้อมอีเมลของบัญชี ห้ามรวมคีย์ API แบบเต็ม