คีย์ API Claude: ข้อผิดพลาดทั่วไปในการผสานรวม
การผสานรวมคีย์ API ของ Claude มักล้มเหลวเนื่องจากนักพัฒนากำหนดค่า URL พื้นฐานผิดพลาดหรือละเลยข้อจำกัดของหน้าต่างบริบทที่เข้มงวด คู่มือนี้แก้ไขจุดบกพร่องทั่วไปเพื่อให้โค้ดของคุณทำงานได้อย่างราบรื่นโดยไม่มีการบล็อกอัตราส่วนที่คาดไม่ถึง
อัปเดตล่าสุด
สรุป
- ตรวจสอบให้แน่ใจว่า URL พื้นฐานของคุณตรงกับผู้ให้บริการเฉพาะเจาะจง เนื่องจากเอนด์พอยต์ทั่วไปมักปฏิเสธคีย์ที่กำหนดเอง
- ID โมเดลเช่น 'claude-3-opus'แตกต่างจากชื่อที่แสดงและต้องตรงกับข้อกำหนด API อย่างแม่นยำ
- การตอบสนองแบบสตรีมต้องการการกำหนดค่าส่วนหัวเฉพาะเพื่อประมวลผลข้อมูลทีละโทเค็นได้อย่างถูกต้อง
- อัตราจำกัดการใช้งานเข้มงวดต่อคีย์; การเกินขีดจำกัดจะกระตุ้นข้อผิดพลาด 429 ที่หยุดการทำงานของแอปพลิเคชันของคุณทันที
เหตุผลที่ URL พื้นฐานของคุณอาจไม่ถูกต้อง
URL พื้นฐานของคุณกำหนดเส้นทางของการร้องขอของคุณ หากคุณชี้ไคลเอนต์ OpenAI-compatible มาตรฐานไปยัง endpoint ที่ผิด เซิร์ฟเวอร์จะปฏิเสธคีย์ของคุณทันที นักพัฒนาหลายคนสับสนระหว่างพร็อกซีทั่วไปกับโครงสร้างพื้นฐานของผู้ให้บริการจริง ความไม่ตรงกันนี้ทำให้เกิดความล้มเหลวในการตรวจสอบสิทธิ์ก่อนที่ตรรกะของคุณจะทำงาน
ตรวจสอบการกำหนดค่าไคลเอนต์ของคุณอย่างระมัดระวัง ตรวจสอบให้แน่ใจว่า URL รวมโดเมนและเส้นทางเวอร์ชันที่ถูกต้อง การสะกดผิดเพียงตัวอักษรเดียวในชื่อโดเมนจะเปลี่ยนเส้นทางไปยังจุดจบที่ไร้ประโยชน์ เสมอตรวจสอบ URL กับเอกสารทางการของผู้ให้บริการ อย่าคาดเดาจากโครงสร้างบริการที่คล้ายกัน
- ตรวจสอบว่าโดเมนตรงกับผู้ให้บริการอย่างถูกต้อง
- รวมเวอร์ชัน API ที่ถูกต้องในพาธ
- ทดสอบการเชื่อมต่อก่อนรันพรอมต์ที่ซับซ้อน
ความสับสนระหว่างชื่อระบุโมเดลกับชื่อโมเดล
ID โมเดลคือสตริงที่ไม่ซ้ำกันที่ API ใช้เพื่อจัดเส้นทางคำขอของคุณ มักแตกต่างจากชื่อทางการตลาดที่คุณเห็นบนเว็บไซต์ การใช้ตัวระบุที่ผิดจะส่งคืนข้อผิดพลาด 400 Bad Request ความผิดพลาดนี้ทำให้เสียโทเค็นและทำให้บันทึกการดีบักสับสน
ใช้สตริงที่ระบุไว้ในเอกสารอ้างอิง API อย่างถูกต้อง ตัวอย่างเช่น โมเดลชื่อ 'Claude Opus' อาจมี ID เป็น 'claude-3-opus-20240229' ช่องว่างและหมายเลขเวอร์ชันมีความสำคัญ ตรวจสอบโค้ดไคลเอนต์ของคุณสำหรับสตริงที่บันทึกไว้ถาวร อัปเดตหากผู้ให้บริการปล่อยเวอร์ชันโมเดลใหม่
API แบบ uncensored ของเราใช้ ID แบบง่าย ๆ เช่น 'uncensored' เพื่อความเรียบง่าย หลีกเลี่ยงความซับซ้อนของการจัดการเวอร์ชันหลายเวอร์ชัน คุณส่ง ID เพียงตัวเดียว และได้รับพฤติกรรมที่สอดคล้องกันเพียงรูปแบบเดียว ไม่ต้องกังวลเรื่องการเปลี่ยนแปลงเวอร์ชัน
การจัดการขีดจำกัดโทเค็นและหน้าต่างบริบท
ขีดจำกัดของโทเค็นกำหนดปริมาณข้อมูลที่พอดีในคำขอเดียว การเกินขีดจำกัดเหล่านี้จะทำให้การป้อนข้อมูลของคุณถูกตัดออกหรือบล็อกการตอบกลับ หน้าต่างบริบทรวมถึงทั้งพรอมต์ของคุณและการตอบกลับที่สร้าง คุณต้องคำนึงถึงทั้งสองด้านของการแลกเปลี่ยน
ตรวจสอบการใช้งานโทเค็นของคุณอย่างใกล้ชิด หากคุณมีอินพุตขนาดใหญ่ ให้ลดจำนวนโทเค็นเอาต์พุตสูงสุด สิ่งนี้รับประกันว่าคำขอจะอยู่ในขอบเขต API บางแห่งคิดราคาแตกต่างกันสำหรับโทเค็นอินพุตเทียบกับเอาต์พุต เข้าใจโมเดลการกำหนดราคา قبلขยายขนาด
| ส่วนประกอบ | 限制 | หมายเหตุ |
|---|---|---|
| หน้าต่างบริบท | 100k tokens | Prompt + ผลลัพธ์ รวมกัน |
| เอาต์พุตสูงสุด | 16k โทเคน | ค่าเริ่มต้นคือ 2k หากไม่ได้กำหนด |
บริการของเรารองรับหน้าต่างบริบท 100,000 โทเคิน ซึ่งอนุญาตให้จัดการเอกสารขนาดใหญ่โดยไม่ต้องแบ่งส่วน คุณจ่ายเฉพาะสิ่งที่ใช้จริง และข้อผิดพลาดจะไม่ใช้เครดิตที่เติมไว้ของคุณ
รูปแบบการตอบสนองแบบสตรีมเทียบกับไม่สตรีม
การสตรีมส่งข้อมูลทีละส่วนเมื่อสร้างเสร็จ การไม่สตรีมจะรอคำตอบทั้งหมดก่อนส่ง การสตรีมช่วยลดความล่าช้าที่ผู้ใช้รู้สึก ต้องจัดการ Server-Sent Events (SSE) ในโค้ดของคุณ
ตั้งค่าพารามิเตอร์ 'stream' เป็น true ในคำขอของคุณ เซิร์ฟเวอร์จะส่งคืนวัตถุ JSON แบบย่อย คุณต้องแยกวิเคราะห์แต่ละชิ้นส่วนและต่อโทเค็นเข้าด้วยกัน วิธีนี้รู้สึกเร็วกว่าแต่เพิ่มความซับซ้อนให้ไคลเอนต์ของคุณ การไม่ใช้สตรีมจะง่ายกว่าสำหรับการประมวลผลแบบแบทช์
เรารองรับการสตรีมผ่าน SSE รายละเอียดการใช้งานโทเค็นจะปรากฏในชิ้นข้อมูลสุดท้าย ซึ่งช่วยให้คุณติดตามต้นทุนแบบเรียลไทม์ได้ ใช้ฟีเจอร์นี้สำหรับอินเทอร์เฟซแชทที่ความเร็วเป็นเรื่องสำคัญ
ปัญหาความเข้ากันได้ของการเรียกฟังก์ชัน
การเรียกใช้ฟังก์ชันช่วยให้โมเดลส่งข้อมูลที่มีโครงสร้างให้โค้ดของคุณดำเนินการ โมเดลทั้งหมดไม่รองรับฟีเจอร์นี้เท่ากัน ความเข้ากันได้ขึ้นอยู่กับวิธีการฝึกของโมเดลและเวอร์ชัน API สคีมาที่ไม่ตรงกันทำให้เกิดข้อผิดพลาดในการแยกวิเคราะห์
กำหนดสคีมาฟังก์ชันของคุณให้ชัดเจน ใช้รูปแบบ JSON มาตรฐานสำหรับคำจำกัดความ ทดสอบด้วยฟังก์ชันง่ายๆ ก่อน เพิ่มความซับซ้อนทีละน้อยเมื่อคุณยืนยันพฤติกรรม ตรวจสอบให้แน่ใจว่าไลบรารีไคลเอนต์ของคุณรองรับไวยากรณ์การเรียกใช้ฟังก์ชันล่าสุด
โมเดลของเรารองรับ function calling คุณสามารถส่งพารามิเตอร์ tools และ tool_choice สิ่งนี้ทำให้สามารถผสานรวมกับบริการภายนอกได้อย่างเชื่อถือได้ โหมด JSON รับประกันว่า output จะเป็น JSON ที่ถูกต้องเสมอ ไม่ต้องใช้การ parse เพิ่มเติมสำหรับการดึงข้อมูลพื้นฐาน
ทำความเข้าใจข้อจำกัดอัตราการใช้งานต่อคีย์
อัตราจำกัดการใช้งานควบคุมจำนวนคำขอที่คุณสามารถส่งได้ในเวลาที่กำหนด การเกินขีดจำกัดเหล่านี้จะกระตุ้นข้อผิดพลาด 429 แอปพลิเคชันของคุณจะหยุดทำงานจนกว่าหน้าต่างเวลาจะรีเซ็ต คีย์ที่แตกต่างกันอาจมีขีดจำกัดที่แตกต่างกัน
ตรวจสอบเอกสารของผู้ให้บริการของคุณสำหรับตัวเลขเฉพาะ บริการบางรายการจำกัดคำขอต่อนาที บริการอื่นจำกัดโทเค็นต่อวัน วางแผนความพร้อมใช้งานของคุณอย่างระมัดระวัง คำขอพร้อมกันมากเกินไปสามารถทำให้คีย์ของคุณล้นได้
เราอนุญาตให้ส่งคำขอได้ 300 คำขอต่อนาทีต่อคีย์ คุณสามารถรันคำขอได้ 8 คำขอพร้อมกัน ซึ่งเพียงพอสำหรับเครื่องมืออัตโนมัติส่วนใหญ่ การใช้คีย์เดียวต่อบัญชีช่วยให้การติดตามชัดเจน อัปเกรดแผนของคุณหากคุณต้องการปริมาณงานที่สูงขึ้น
การแก้ไขข้อผิดพลาด 401 และ 429
รหัสข้อผิดพลาด 401 หมายถึงคีย์ API ของคุณไม่ถูกต้องหรือหมดอายุ รหัสข้อผิดพลาด 429 หมายถึงคุณได้เกินขีดจำกัดอัตราการใช้งาน นี่คือปัญหาการผสานรวมที่พบบ่อยที่สุด การแก้ไขปัญหานี้ต้องตรวจสอบข้อมูลประจำตัวและรูปแบบการใช้งานของคุณ
สำหรับข้อผิดพลาด 401 ให้สร้างคีย์ของคุณใหม่ ตรวจสอบว่าคัดลอกอย่างถูกต้องโดยไม่มีช่องว่างเพิ่มเติม ตรวจสอบวันที่หมดอายุ สำหรับข้อผิดพลาด 429 ให้ใช้ exponential backoff ในโค้ดของคุณ ลองเรียกใช้คำขออีกครั้งหลังจากหยุดพักสั้นๆ
บริการของเราให้ข้อความแสดงข้อผิดพลาดที่ชัดเจน ตรวจสอบ body ของ response เพื่อรายละเอียด คุณสามารถติดต่อฝ่ายสนับสนุนสำหรับปัญหาเฉพาะเกี่ยวกับคีย์ได้ เครดิตของคุณไม่หมดอายุ ดังนั้นยอดเงินของคุณจึงปลอดภัยแม้ว่าคุณจะถึงขีดจำกัด
เมื่อใช้ proxy เทียบกับ API โดยตรง
พร็อกซีส่งเส้นทางคำขอผ่านเซิร์ฟเวอร์กลาง ซึ่งอาจให้การแคชหรือการกระจายโหลด คำขอ API แบบตรงจะส่งตรงไปยังผู้ให้บริการ พร็อกซีเพิ่ม latency แต่สามารถทำให้การเปลี่ยนเส้นทางหลายโมเดลง่ายขึ้น
ใช้พร็อกซีหากคุณต้องการรวมโมเดลหลายตัว การเรียกโดยตรงจะเร็วและถูกกว่าสำหรับการใช้โมเดลเดียว พร็อกซีมักเพิ่มส่วนต่างราคาในราคาขายเอง ควรประเมินจุดแลกเปลี่ยนอย่างรอบคอบ
API ของเราเป็นบริการโดยตรง คุณเชื่อมต่อโดยตรงกับเอนด์พอยต์ของเรา ไม่มีตัวกลางมาเพิ่มความซับซ้อนหรือต้นทุน คุณได้รับราคาและประสิทธิภาพที่คาดการณ์ได้ ซึ่งเหมาะสำหรับนักพัฒนาที่ต้องการความเรียบง่าย
คำถามที่พบบ่อย
ราคาคีย์ API ของ Claude เป็นแบบคงที่หรือตามการใช้งาน?
API ของ LLM ส่วนใหญ่ในปัจจุบัน รวมถึง Claude ใช้การคิดค่าบริการตามการใช้งาน คุณจ่ายตามจำนวนโทเค็นที่ประมวลผล ผู้ให้บริการบางรายเสนอระดับการสมัครสมาชิก แต่รูปแบบนี้ไม่ค่อยพบในการเข้าถึงผ่าน API ตรวจสอบเอกสารทางการเสมอเพื่อดูอัตราค่าบริการปัจจุบัน
ฉันสามารถใช้คีย์ API เดียวกันสำหรับหลายโครงการได้หรือไม่?
ใช่ คุณสามารถแบ่งปันคีย์ API เดียวกันข้ามโครงการหลายโครงการได้ อย่างไรก็ตาม สิ่งนี้ทำให้การติดตามการใช้งานต่อโครงการทำได้ยากขึ้น นักพัฒนาจำนวนมากสร้างคีย์แยกต่างหากสำหรับแอปพลิเคชันต่างๆ เพื่อรักษาการเรียกเก็บเงินที่ชัดเจนและจำกัดการเปิดเผยข้อมูล
ฉันจัดการกับการตอบกลับแบบสตรีมมิ่งใน Python ได้อย่างไร?
ใช้ไลบรารีเช่น 'openai' หรือ 'requests' เพื่อจัดการ Server-Sent Events ทำซ้ำผ่านวัตถุสตรีมเพื่อเข้าถึงแต่ละชิ้นส่วน รวมโทเค็นเนื้อหาเพื่อสร้างการตอบกลับเต็มรูปแบบ ซึ่งช่วยลดความหน่วงได้อย่างมีนัยสำคัญสำหรับการแสดงผลขนาดใหญ่
ความแตกต่างระหว่างคีย์ API และ OAuth คืออะไร?
คีย์ API คือโทเค็นแบบง่ายที่ส่งผ่านเฮดเดอร์ ส่วน OAuth ให้กระบวนการยืนยันตัวตนแบบมอบอำนาจที่ปลอดภัยกว่า คีย์ API ใช้งานง่ายกว่าสำหรับการสื่อสารระหว่างเซิร์ฟเวอร์กับเซิร์ฟเวอร์ ในขณะที่ OAuth เหมาะสมกว่าสำหรับแอปพลิเคชันที่เน้นผู้ใช้เป็นศูนย์กลาง ซึ่งคุณดำเนินการในนามของผู้ใช้
สร้างคีย์ API ของคุณ
สมัครรับบริการ รับโทเค็นของคุณ อัปเดต URL พื้นฐาน นั่นคือการตั้งค่าทั้งหมด