สิ่งที่คุณกำลังตั้งค่า
ผู้ช่วยเขียนโค้ดใน VS Code จะสื่อสารกับโมเดลผ่าน HTTP ส่วนใหญ่ใช้รูปแบบ API ของ OpenAI ซึ่งหมายความว่ารองรับ URL ฐานและคีย์แบบกำหนดเองแทนค่าเริ่มต้นของผู้ขาย บริการนี้เข้ากันได้กับ OpenAI จึงสามารถเชื่อมต่อเข้ากับเครื่องมือใดๆ ที่เปิดตัวเลือกนี้ได้
ให้ชัดเจนเกี่ยวกับสิ่งที่อยู่ปลายทาง เป็นโมเดลแบบเปิดน้ำหนักเพียงโมเดลเดียวที่ให้บริการโดยผู้ให้บริการอิสระ ซึ่งปรับแต่งมาเพื่อตอบคำถามโดยไม่มีการปฏิเสธเนื้อหาสำหรับการใช้งานของผู้ใหญ่ที่ถูกต้องตามกฎหมาย ไม่ใช่โมเดล Codex ของ OpenAI และไม่ใช่ API ทางการของผู้ขายรายอื่น รองรับเฉพาะข้อความ มีหน้าต่างบริบท 100,000 โทเคน การเรียกใช้ฟังก์ชัน และโหมด JSON หากต้องการรายละเอียดของเส้นทางสไตล์ OpenAI โปรดอ่านเอกสาร; หากต้องการเพียงที่อยู่ โปรดดูหน้าCodex API URL ฐาน
นี่คือค่าสามค่าที่ต้องใช้ในทุกที่:
| การตั้งค่า | ค่า |
|---|---|
| URL พื้นฐาน | https://api.getcodexapi.com/v1 |
| โมเดล | uncensored |
| เฮดเดอร์ | Authorization: Bearer YOUR_KEY |
รับคีย์และทดสอบก่อน
สร้างบัญชีบนหน้าคีย์ APIด้วย Google หรืออีเมลและรหัสผ่าน ผู้ใช้ใหม่สามารถรับเครดิตทดลองใช้ $0.50 ได้ด้วยการคลิกเดียว มีอายุ 7 วัน ไม่ต้องใช้บัตรเครดิต จากนั้นทดสอบคีย์ในเทอร์มินัลก่อนแก้ไข VS Code การเรียก curl ที่ทำงานได้จะพิสูจน์คีย์และ URL ดังนั้นข้อผิดพลาดในภายหลังจึงเกี่ยวข้องกับส่วนขยาย
# macOS or Linux, add to ~/.zshrc or ~/.bashrc
export CODEX_API_KEY="YOUR_KEY"
# then verify the endpoint answers
curl https://api.getcodexapi.com/v1/chat/completions \
-H "Authorization: Bearer $CODEX_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"uncensored","messages":[{"role":"user","content":"Write a Python one-liner that reverses a string."}]}'การตอบกลับคือ JSON ของการเติมเต็มการสนทนา และการตอบกลับมีส่วนหัว X-Balance-USD ที่แสดงเครดิตคงเหลือของคุณ เก็บคีย์ไว้ในตัวแปรสภาพแวดล้อมหรือที่เก็บความลับของส่วนขยาย อย่าเก็บไว้ในที่เก็บโค้ด
ส่วนขยาย Codex และ CLI: ไฟล์กำหนดค่า
เครื่องมือ Codex ของ OpenAI รองรับผู้ให้บริการโมเดลแบบกำหนดเองผ่านไฟล์กำหนดค่า TOML ในไดเรกทอรี home ของคุณ และส่วนขยาย VS Code ได้รับการบันทึกไว้ว่าแบ่งปันการกำหนดค่านี้กับ CLI ตรวจสอบสิ่งนี้กับเอกสาร Codex เวอร์ชันปัจจุบันของคุณ เนื่องจากรูปแบบได้พัฒนาไปแล้ว
# ~/.codex/config.toml
model = "uncensored"
model_provider = "custom"
[model_providers.custom]
name = "Custom endpoint"
base_url = "https://api.getcodexapi.com/v1"
env_key = "CODEX_API_KEY"
wire_api = "chat"จุดที่ต้องตรวจสอบ:
base_urlลงท้ายด้วย/v1โดยไม่มี/chat/completionsenv_keyคือชื่อของตัวแปรสภาพแวดล้อม ไม่ใช่คีย์เองwire_apiเลือกรูปแบบคำขอ บริการนี้รองรับทั้งPOST /v1/chat/completionsและPOST /v1/responsesลองใช้ "chat" ก่อน; ใช้ "responses" หากเวอร์ชัน Codex ของคุณต้องการ- เริ่ม VS Code จาก shell ที่มีตัวแปรนี้กำหนดไว้ หรือรีสตาร์ทหลังจากเพิ่มตัวแปรลงในโปรไฟล์ของคุณ การเริ่มใช้งานผ่าน GUI บน macOS มักจะไม่เห็นการกำหนดค่า shell
เครื่องมือรูปแบบ Agent อาศัยการเรียกใช้ฟังก์ชัน รองรับที่นี่ รวมถึงการเรียกใช้ฟังก์ชันแบบสตรีมมิง แต่คุณภาพแตกต่างกันไปตามโมเดล ดังนั้นควรทดสอบด้วยงานขนาดเล็กก่อน หน้าที่เกี่ยวข้องเกี่ยวกับการ ใช้ API ใน Cursor ครอบคลุมการตั้งค่าที่คล้ายกันในโปรแกรมแก้ไขข้อความอื่น
Continue, Cline และส่วนขยายอื่นๆ
ส่วนขยายของบุคคลที่สามแต่ละรายมีหน้าจอของตัวเอง แต่รูปแบบจะคงที่: เลือกผู้ให้บริการแบบ OpenAI หรือ "OpenAI-compatible" จากนั้นกรอก base URL คีย์ และโมเดล Continue ใช้ไฟล์กำหนดค่า YAML:
# Continue (config.yaml), model entry
models:
- name: Hosted uncensored
provider: openai
model: uncensored
apiBase: https://api.getcodexapi.com/v1
apiKey: YOUR_KEYCline และ Roo Code มีผู้ให้บริการ "OpenAI Compatible" ในแผงตั้งค่าพร้อมฟิลด์สามฟิลด์เดียวกัน ชื่อและเมนูเปลี่ยนแปลงบ่อย ดังนั้นให้ค้นหาเอกสารของส่วนขยายเองสำหรับคำว่า "OpenAI compatible" หรือ "custom base URL" หากส่วนขยายไม่มีฟิลด์สำหรับ base URL จะไม่สามารถใช้เอนด์พอยต์นี้ได้
เคล็ดลับที่ช่วยประหยัดเวลา:
- ปิดการเติมข้อความด้วยแท็บเมื่อใช้โมเดลที่โฮสต์ไว้ หากคุณไม่ต้องการให้เกิดคำขอในทุกครั้งที่หยุดพัก การกระทำสนทนาและแก้ไขมีค่าใช้จ่ายต่ำกว่า
- ตั้งค่าหน้าต่างบริบทให้เล็กลงในส่วนขยายสำหรับการแก้ไขทั่วไป การส่งทั้งที่เก็บโค้ดไปยังโมเดลจะเสียโทเคนอินพุตทุกครั้ง
- ใช้คีย์แยกสำหรับแต่ละเครื่องมือ เพื่อให้ทราบว่าเครื่องมือใดใช้เครดิตของคุณ
งานโปรแกรมแก้ไขใดที่เหมาะกับโมเดลนี้
โมเดลข้อความทั่วไปที่มีหน้าต่างขนาดใหญ่เป็นตัวเลือกที่เหมาะสมสำหรับงานประจำวันหลายอย่าง: อธิบายโค้ดที่ไม่คุ้นเคย เขียนยูนิทเทสต์สำหรับฟังก์ชัน แปลงสคริปต์ระหว่างภาษา เขียน docstrings และ regex และเขียนใหม่โมดูลเมื่อคุณวางไฟล์ทั้งหมด หน้าต่างขนาด 100,000 โทเคนหมายความว่าไฟล์ขนาดกลางไม่กี่ไฟล์รวมกับคำชี้แจงของคุณสามารถอยู่ในคำขอเดียวได้ และการเติมเต็มสามารถใช้สิ่งที่เหลืออยู่ได้
ประเมินสถานการณ์ให้สมจริง โมเดลนี้ไม่ใช่โมเดลเฉพาะทางสำหรับการเขียนโค้ดที่ผ่านการฝึกฝนแบบรู้บริบทของ editor ดังนั้นการรัน agent ที่จัดการหลายไฟล์อาจต้องการคำแนะนำและการตรวจสอบมากกว่าที่คุณจะให้กับเครื่องมือที่สร้างมาเพื่อจุดประสงค์นั้น ขอ diff แทนที่จะขอไฟล์ทั้งไฟล์ ตรวจสอบทุกการเปลี่ยนแปลงก่อนยอมรับ และรันการทดสอบของคุณ หากงานต้องการเนื้อหาที่ผู้ช่วยแบบมีตัวกรองจะปฏิเสธ เช่น การเขียนโครงเรื่องนิยายสำหรับผู้ใหญ่ หรือข้อความสำหรับการวิจัยความปลอดภัยเพื่อการใช้งานที่ถูกต้องตามกฎหมาย การใช้เอนด์พอยต์ที่ไม่มีการปฏิเสธเนื้อหาคือเหตุผลที่คุณควรใช้โมเดลนี้
ต้นทุนการใช้งานในโปรแกรมแก้ไข
ราคาคือ $0.15 ต่อ 1M โทเคนอินพุตและ $0.50 ต่อ 1M โทเคนเอาต์พุต เครื่องมือเขียนโค้ดส่งบริบทจำนวนมาก ดังนั้นให้ดูอินพุตก่อน
ตัวอย่าง: คำขอแก้ไขที่มีบริบทไฟล์ 8,000 โทเคนและคำตอบ 600 โทเคนมีค่าใช้จ่าย 8,000 x $0.15 / 1M + 600 x $0.50 / 1M = $0.0012 + $0.0003 = $0.0015 วันหนึ่งที่มีคำขอ 150 แบบนี้มีค่าใช้จ่าย 150 x $0.0015 = $0.225 ยี่สิบวันทำงาน: $4.50
เอเจนต์ที่อ่านไฟล์จำนวนมากสามารถส่งโทเคน 40,000 โทเคนต่อขั้นตอน ในขนาดนั้นหนึ่งขั้นตอนมีค่าใช้จ่าย $0.006 บวกเอาต์พุต ดังนั้น 100 ขั้นตอนมีค่าใช้จ่ายประมาณ $0.60 บวกเอาต์พุต โปรดติดตามวงลูปของเอเจนต์ คำขอที่ล้มเหลวหรือถูกปฏิเสธจะไม่ถูกเรียกเก็บเงิน และเครดิตจะไม่หมดอายุ การเติมเงินตั้งแต่ $20 ถึง $500 สามารถจ่ายด้วยบัตรเครดิต (Visa, Mastercard, Apple Pay, Google Pay) หรือคริปโต แผนปัจจุบันมีอยู่ในหน้าราคา
การแก้ไขปัญหา
401 ไม่ได้รับอนุญาต
คีย์หายไป มีช่องว่างแปลกๆ หรือตัวแปรสภาพแวดล้อมไม่ปรากฏใน VS Code ให้รีสตาร์ทตัวแก้ไขจากเทอร์มินัลที่มีตัวแปรนั้น
404 หรือ "ไม่พบโมเดล"
ใช้โมเดล uncensored และ base URL ที่มี /v1 ต่อท้าย
ข้อผิดพลาด 429
คีย์เต็มจำนวนอนุญาตให้ทำคำขอพร้อมกัน 8 คำขอและ 300 คำขอต่อนาที; คีย์ทดลองอนุญาตให้ทำ 2 และ 60 ส่วนขยายที่ส่งคำขอพร้อมกันหลายรายการ เช่น การเติมข้อความอัตโนมัติและการแชท สามารถถึงขีดจำกัดความพร้อมกันได้ รหัสข้อผิดพลาดคือconcurrency สำหรับจำนวนที่มากเกินไปและrate_limited สำหรับขีดจำกัดต่อนาที หัวข้อRetry-After: 5 หมายถึงการโอเวอร์โหลดชั่วคราว
สตรีมมิงค้าง
พร็อกซีของบริษัทบางแห่งอาจบัฟเฟอร์เหตุการณ์ที่ส่งจากเซิร์ฟเวอร์ (SSE) ได้ ทดสอบจากเครือข่ายอื่นหรือปิดการสตรีมมิงในส่วนขยาย
คำตอบแตกต่างจากที่คุณเห็นกับผู้ช่วยอื่น
นั่นเป็นเรื่องปกติ นี่คือโมเดลอื่นที่มีจุดแข็งเป็นของตัวเอง ให้คำแนะนำที่ชัดเจนและเฉพาะเจาะจง และทดสอบกับโค้ดจากโปรเจกต์ของคุณเอง

