Claude API แจ้ง Error แก้อย่างไร? วิธีตรวจสาเหตุและแก้ปัญหาเบื้องต้น

เมื่อ Claude API แจ้ง Error อย่าเพิ่งแก้โค้ดแบบสุ่ม ให้เริ่มจากจดรหัสสถานะ ข้อความ Error และ Request ID แล้วตรวจว่าปัญหาเกิดจากรูปแบบคำขอ สิทธิ์ การเชื่อมต่อ หรือข้อจำกัดการใช้งาน ComSiam รวบรวมวิธีไล่ตรวจที่ช่วยหาสาเหตุได้เป็นขั้นตอน โดยไม่เปิดเผย API Key หรือข้อมูลลับ

เริ่มตรวจจากข้อมูลใน Error

ถ้าใช้ SDK ให้ตรวจข้อความ Exception และรหัสสถานะที่ SDK รายงาน ส่วนการเรียก API โดยตรงให้ดู HTTP status code และเนื้อหา JSON ที่ตอบกลับ ข้อความ Error มักบอกประเภทปัญหา ขณะที่ Request ID ช่วยระบุคำขอที่ผิดพลาดเมื่อต้องตรวจสอบเพิ่มเติม

ก่อนแชร์ Error ให้ผู้อื่นช่วยวิเคราะห์ ให้ลบ API Key, Token, ข้อมูลส่วนบุคคล และเนื้อหาเอกสารที่เป็นความลับออกก่อน อย่าส่งไฟล์ .env หรือภาพหน้าจอที่เห็นค่าคีย์

รหัส Error ที่พบบ่อยและแนวทางแก้

400: คำขอไม่ถูกต้อง

ตรวจรูปแบบ JSON ชื่อพารามิเตอร์ รุ่นโมเดล และโครงสร้าง messages ให้ตรงกับ API ตรวจข้อความ Error ว่าระบุฟิลด์ใดผิดหรือไม่ บางกรณีอาจเกี่ยวกับการตั้งค่า Workspace หรือขีดจำกัดการใช้จ่ายของบัญชี

แนวทางแก้คือเปรียบเทียบคำขอจริงกับตัวอย่างในเอกสาร API ปัจจุบัน แล้วทดสอบโดยลดคำขอให้เหลือข้อมูลขั้นต่ำที่จำเป็น

401: ยืนยันตัวตนไม่ผ่าน

ตรวจว่าตัวแปร ANTHROPIC_API_KEY ถูกตั้งค่าในสภาพแวดล้อมที่รันโปรแกรมหรือไม่ คีย์อาจพิมพ์ผิด ถูกปิดใช้งาน หมดอายุ หรือโปรแกรมอ่านค่าจาก environment คนละชุดกับที่คาดไว้

อย่าแก้ด้วยการฝังคีย์จริงลงในโค้ด หากสงสัยว่าคีย์รั่ว ให้ปิดหรือลบคีย์นั้นและสร้างคีย์ใหม่จาก Console

403: ไม่มีสิทธิ์เข้าถึง

ตรวจว่าคีย์หรือบัญชีมีสิทธิ์ใช้ทรัพยากรและ Workspace ที่ระบุหรือไม่ หากเป็นโปรเจกต์ของทีม ให้ตรวจสิทธิ์ของผู้ใช้หรือ Service Account ที่ผูกกับคีย์ด้วย

404: ไม่พบปลายทางหรือทรัพยากร

ตรวจ URL, endpoint และรหัสทรัพยากรที่ใช้เรียก API รวมถึงตรวจว่าคัดลอก path ถูกต้องและไม่มีอักขระเกิน

429: เกินขีดจำกัดการใช้งาน

อาจเกิดจากส่งคำขอถี่เกินไป ใช้โทเคนเกินอัตราที่บัญชีกำหนด หรือถึงเพดานการใช้จ่ายบางประเภท ตรวจ retry-after หากมี แล้วเว้นช่วงก่อนลองใหม่ ลดอัตราการส่งคำขอ และดู Usage หรือ Rate Limits ใน Console

หากใช้ SDK ทางการ ระบบอาจลองส่งคำขอซ้ำให้กับข้อผิดพลาดชั่วคราวบางประเภทอยู่แล้ว จึงควรหลีกเลี่ยงการเขียน Retry ซ้อนหลายชั้นจนทำให้คำขอเพิ่มขึ้นโดยไม่จำเป็น

500, 504 หรือ 529: ปัญหาฝั่งระบบหรือหมดเวลา

ข้อผิดพลาดกลุ่มนี้อาจเป็นปัญหาชั่วคราวหรือคำขอใช้เวลานานเกินไป ตรวจสถานะระบบและลองใหม่อย่างระมัดระวัง หากคำขอซ้ำ ให้เพิ่มช่วงเวลารอระหว่างครั้ง และตั้งจำนวนครั้งสูงสุดไว้

ถ้าคำขอมีเนื้อหายาวหรือใช้เวลาประมวลผลมาก อาจพิจารณาใช้การสตรีมตามความเหมาะสม พร้อมตรวจ Timeout ของแอปและเครือข่าย

เชื่อมต่อ API ไม่ได้

ตรวจอินเทอร์เน็ต DNS, Proxy, Firewall และ VPN รวมถึงตรวจว่าแอปกำลังเรียกปลายทางที่ถูกต้องหรือไม่ หากยังเชื่อมต่อไม่ได้ ให้ลองจากสภาพแวดล้อมเครือข่ายอื่นที่ได้รับอนุญาต และเก็บรายละเอียดข้อผิดพลาดไว้เพื่อวิเคราะห์ต่อ

ลำดับตรวจแก้ที่แนะนำ

① บันทึก Error ให้ครบ จดเวลา รหัสสถานะ ข้อความตอบกลับ และ Request ID

② ตรวจคำขอและการตั้งค่า เช็ก URL, headers, JSON, โมเดล และตัวแปรสภาพแวดล้อม โดยไม่เปิดเผยคีย์

③ จัดกลุ่มตามสาเหตุ แยกว่าเป็นปัญหาคำขอ สิทธิ์ โควตา การเชื่อมต่อ หรือระบบปลายทาง

④ ทดสอบคำขอที่เล็กลง ลดข้อความและพารามิเตอร์ที่ไม่จำเป็น เพื่อดูว่าปัญหาเกิดกับข้อมูลส่วนใด

⑤ ลองซ้ำอย่างมีขอบเขต ทำเฉพาะข้อผิดพลาดที่อาจชั่วคราว และกำหนดช่วงรอกับจำนวนครั้งสูงสุด

ComSiam แนะนำให้เก็บ Log เท่าที่จำเป็น โดยปกปิดคีย์ ข้อมูลลูกค้า และเนื้อหาลับก่อนจัดเก็บหรือส่งให้ทีมช่วยตรวจ

Prompt ให้ Claude ช่วยวิเคราะห์ Error

คัดลอกข้อความนี้ไปใช้ได้ โดยแทนข้อมูลในวงเล็บด้วยรายละเอียดที่ผ่านการปกปิดแล้ว:

ช่วยวิเคราะห์ Error จาก Claude API นี้
ภาษาและ SDK ที่ใช้: [ระบุ]
HTTP status code: [ระบุ]
ข้อความ Error: [วางข้อความที่ลบข้อมูลลับแล้ว]
Request ID: [ระบุ ถ้ามี]
โค้ดส่วนที่เกี่ยวข้อง: [วางเฉพาะส่วนที่ไม่มี API Key หรือข้อมูลลับ]
ช่วยจัดอันดับสาเหตุที่เป็นไปได้ เสนอวิธีตรวจทีละขั้น และระบุว่าข้อมูลใดควรตรวจในเอกสารทางการ โดยอย่าคาดเดาว่าปัญหาเกิดจากจุดใดจุดหนึ่งแน่นอน

ให้ตรวจคำแนะนำจาก Claude กับข้อความ Error และเอกสารทางการก่อนแก้ระบบจริง เพราะ Error ที่คล้ายกันอาจมีสาเหตุต่างกันได้

เมื่อใดควรติดต่อฝ่ายสนับสนุน

หากตรวจโค้ด การเชื่อมต่อ และการตั้งค่าบัญชีแล้วแต่ยังพบปัญหา ให้รวบรวมเวลาเกิดเหตุ รหัสสถานะ ข้อความ Error และ Request ID เพื่อส่งให้ฝ่ายสนับสนุน ห้ามแนบ API Key หรือข้อมูลลับไปด้วย

สรุป

การแก้ Claude API Error ให้เริ่มจากตรวจรหัสสถานะและ Request ID จากนั้นไล่ดูคำขอ สิทธิ์ ขีดจำกัด และการเชื่อมต่อให้ตรงกับประเภทปัญหา จำกัดการลองซ้ำ และปกปิดข้อมูลสำคัญทุกครั้งที่แชร์ Error วิธีไล่ตรวจอย่างเป็นระบบช่วยลดการแก้ผิดจุดและทำให้หาสาเหตุได้เร็วขึ้น ComSiam แนะนำให้ยึดข้อความตอบกลับและเอกสาร Claude API ปัจจุบันเป็นหลักก่อนเปลี่ยนโค้ด