OpenAI
หน้านี้แปลด้วยระบบอัตโนมัติ ดูต้นฉบับภาษาอังกฤษ.

การใช้ Daybreak ใน Codex CLI

ใช้คู่มือนี้เพื่อเปิดใช้ Daybreak ใน Codex CLI ตั้งค่าให้รองรับเวิร์กโฟลว์อัตโนมัติและการผสานการทำงานกับ SDK รวมถึงแก้ปัญหาการเข้าถึงหรือการปฏิเสธคำขอ 

อัปเดตล่าสุด: 18 hours ago

โปรดทราบว่าคุณต้องอัปเกรดเป็น Codex CLI 0.163.0 ขึ้นไปจึงจะใช้การเปลี่ยนแปลงเหล่านี้ได้ คุณเลือกได้ว่าจะอัปเกรด CLI หรือไม่ โดยเวอร์ชันที่ติดตั้งอยู่จะยังทำงานเหมือนเดิมจนกว่าคุณจะอัปเดต

  • หากระบบอัตโนมัติของคุณติดตั้ง @openai/codex@latest ระบบอาจได้รับการเปลี่ยนแปลงนี้เมื่อติดตั้งหรืออัปเดตครั้งถัดไป หากคุณติดตั้ง Codex CLI แบบส่วนกลางด้วย npm ให้รัน npm install -g @openai/codex@latest แล้วรัน codex --version เพื่อยืนยันการอัปเกรด

  • หากต้องการเลื่อนการเปลี่ยนแปลงออกไป ให้ตรึงเวอร์ชันไว้ที่ @openai/codex@0.162.0 การติดตั้งด้วย @latest เพียงครั้งเดียวจะไม่อัปเดตตัวเอง เวิร์กโฟลว์ที่ตรึงไว้กับเวอร์ชันเก่าจะยังทำงานเหมือนเดิม

  • สำหรับการเชื่อมต่อผ่าน TypeScript ให้อัปเดต @openai/codex-sdk และรันไทม์ที่มาพร้อมกัน สำหรับการเชื่อมต่อผ่าน Python ให้อัปเดต openai-codex และรันไทม์ Codex ที่ใช้ร่วมกัน การอัปเดตเฉพาะ CLI ที่ติดตั้งแบบส่วนกลางอาจไม่อัปเดตรันไทม์ของ SDK หากคุณกำหนดพาธไฟล์ปฏิบัติการเอง ให้อัปเดตไฟล์ปฏิบัติการนั้นด้วย

ID โมเดลที่กำหนดเองแต่ไม่อยู่ในแคตตาล็อกที่เข้าถึงได้ จะยังได้รับการจัดการอัตโนมัติแบบเดิมใน CLI และ Codex Desktop แม้จะเปิด Daybreak อยู่ก็ตาม การที่ ID เหล่านั้นไม่อยู่ในแคตตาล็อกเพียงอย่างเดียวไม่ได้ทำให้คำขอล้มเหลว 

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

เปิดใช้งาน Daybreak ใน CLI แบบโต้ตอบ

  1. เริ่ม Codex โดยใช้วิธียืนยันตัวตนตามปกติของคุณ

  2. หากต้องการเปิด Daybreak ให้ป้อน /daybreak

  3. Codex จะแจ้งว่า เปิด Daybreak แล้ว มีผลกับรอบการโต้ตอบใหม่

  4. การตั้งค่านี้จะมีผลกับเธรดที่ใช้งานอยู่ และบันทึกเป็นค่าเริ่มต้นสำหรับเซสชันใหม่

  5. หากต้องการปิด Daybreak ให้รันคำสั่งเดิม (/daybreak) อีกครั้ง

เปิดใช้งาน Daybreak ใน CLI แบบไร้หน้าจอ

เวิร์กโฟลว์แบบไร้หน้าจอทำงานโดยไม่มี UI แบบโต้ตอบ โดยทั่วไปจะใช้ codex exec ในสคริปต์ งานที่ตั้งเวลาไว้ หรือ CI โหมดนี้ไม่มีข้อความ “เปิดใช้งาน Daybreak” (/daybreak) ให้โต้ตอบ คุณสามารถใช้วิธีต่อไปนี้แทน:

  1. เปิด Daybreak สำหรับการรัน CLI เฉพาะครั้ง โดยเพิ่ม -c daybreak=true ในแต่ละคำสั่งที่ต้องการลดการปฏิเสธคำขอ ตัวอย่างเช่น คุณอาจป้อน:

codex exec -c daybreak=true "Review the changes in this repository."

  1. คงพรอมต์และตัวเลือกคำสั่งอื่นๆ ที่มีอยู่ไว้ เพิ่มการตั้งค่านี้ในการเรียกใช้แต่ละครั้งที่ต้องการใช้ Daybreak รวมถึงคำสั่งในสคริปต์ งานที่ตั้งเวลาไว้ และการกำหนดค่า CI

  2. ตั้งให้เปิด Daybreak เป็นค่าเริ่มต้นสำหรับเซสชันและการรัน CLI ใหม่ โดยเพิ่ม daybreak=true ในไฟล์การกำหนดค่าที่ Codex โหลด

  3. ไฟล์การกำหนดค่าผู้ใช้เริ่มต้นคือ ~/.codex/config.toml หากระบบอัตโนมัติของคุณตั้งค่า CODEX_HOME ไว้ ให้ใช้ $CODEX_HOME/config.toml แทน วางการตั้งค่าไว้ที่ระดับบนสุด นอกส่วนต่างๆ เช่น [features]

  4. เปลี่ยนการตั้งค่าในสภาพแวดล้อมที่ระบบอัตโนมัติทำงานจริง การอัปเดตการกำหนดค่าบนแล็ปท็อปของคุณไม่ได้อัปเดตการกำหนดค่าบน CI runner หรือเครื่องระยะไกล

  5. การตั้งค่านี้ยังมีผลกับเซสชันแบบโต้ตอบใหม่ที่ใช้การกำหนดค่าเดียวกันด้วย เซสชันที่กลับมาทำต่อหรือแยกออกมาจะยังใช้ตัวเลือก Daybreak ที่บันทึกไว้ ค่าเริ่มต้นใหม่ในการกำหนดค่าจะไม่แทนที่ตัวเลือกนั้น

  6. โปรดทราบว่าการตั้งค่าในบรรทัดคำสั่งจะแทนที่การกำหนดค่าที่บันทึกไว้สำหรับการเรียกใช้ครั้งนั้น คุณจึงสามารถเก็บ daybreak = true ไว้ในการกำหนดค่า และใช้ -c daybreak=false สำหรับการรันเฉพาะครั้งได้

เปิดใช้งาน Daybreak ผ่าน TypeScript SDK

ส่งการตั้งค่า Daybreak ผ่านการกำหนดค่าไคลเอนต์:

import { Codex } from "@openai/codex-sdk";

const codex = new Codex({

  config: { daybreak: true },

});

const thread = codex.startThread();

const result = await thread.run("Review the changes in this repository.");

console.log(result.finalResponse);

ใช้ daybreak: false เพื่อปิด Daybreak และใช้การปฏิเสธคำขอแบบปกติ คงการกำหนดค่าการยืนยันตัวตนเดิมของคุณไว้

เปิดใช้งาน Daybreak ผ่านเซิร์ฟเวอร์แอปหรือ Python SDK

1. อ่านค่า availableAccessPrograms.cyber ของโมเดลที่เลือกจาก model/list แล้วตั้งค่า cyberAccessProgram ในพารามิเตอร์ของ turn/start

ก. สำหรับโมเดลหลักและบัญชีที่มีสิทธิ์เข้าถึง Daybreak Blue:

{ "cyberAccessProgram": "daybreakBlue" }

ข. สำหรับโมเดลไซเบอร์และบัญชีที่มีสิทธิ์เข้าถึง Daybreak Red:

{ "cyberAccessProgram": "daybreakRed" }

ค. สำหรับการปฏิเสธคำขอแบบปกติ:

{ "cyberAccessProgram": "standard" }

2. ระบุค่าที่เลือกในทุกรอบการโต้ตอบที่ต้องการใช้ อย่าคิดว่าการละพารามิเตอร์นี้จะเป็นการปิด Daybreak ไคลเอนต์ที่เชื่อมต่อกับเซิร์ฟเวอร์แอปโดยตรงต้องเปิดใช้ความสามารถ experimentalApi ระหว่างการเริ่มต้นระบบเพื่อใช้พารามิเตอร์นี้

3. CodexClient ระดับล่างของ Python SDK สามารถส่งพารามิเตอร์เดียวกันได้:

from openai_codex.client import CodexClient

with CodexClient() as client:

client.initialize()

thread = client.thread_start()

turn = client.turn_start(

thread.thread.id,

"Review the changes in this repository.",

params={"cyberAccessProgram": "daybreakBlue"},

)

client.wait_for_turn_completed(turn.turn.id)

4. ตัวอย่างนี้ตั้งอยู่บนสมมติฐานว่าโมเดลที่เลือกใช้ Daybreak Blue ได้ ไคลเอนต์ Python เปิดใช้ความสามารถ API รุ่นทดลองไว้โดยค่าเริ่มต้น การตั้งค่าเธรดที่บันทึกไว้เพียงอย่างเดียวไม่ได้เป็นการเลือกโปรแกรมสำหรับรอบการโต้ตอบบนเซิร์ฟเวอร์แอป

หากคุณเพิ่มแคตตาล็อกโมเดลในเครื่องไว้ก่อนการเปลี่ยนแปลงเหล่านี้

หากก่อนหน้านี้การลงชื่อเข้าใช้ด้วยคีย์ API ไม่แสดงโมเดลที่คุณคาดไว้ คุณอาจเคยเพิ่มแคตตาล็อกในเครื่องโดยใช้ model_catalog_json ใน config.toml Codex ใช้ไฟล์ในเครื่องนั้นแทนแคตตาล็อกอัตโนมัติ รายการโมเดลของคุณจึงอาจไม่เป็นปัจจุบัน เมื่อสภาพแวดล้อมของคุณรองรับแคตตาล็อกอัตโนมัติแล้ว ให้ทำตามขั้นตอนเหล่านี้เพื่อเปลี่ยนกลับไปใช้:

  1. เปิด config.toml สำหรับ Codex CLI ให้เปิด ~/.codex/config.toml (หรือ $CODEX_HOME/config.toml หากคุณตั้งค่า CODEX_HOME ไว้) ใน Codex Desktop ให้ไปที่ การตั้งค่า > การกำหนดค่า แล้วเลือก เปิด config.toml

  2. ปิดใช้งานแคตตาล็อกในเครื่องชั่วคราว เพิ่ม # ที่ต้นบรรทัด model_catalog_json บันทึกไฟล์ แล้วรีสตาร์ท Codex โดยใช้บัญชีหรือคีย์ API เดิม คง URL แคตตาล็อกที่องค์กรของคุณกำหนดให้ใช้ไว้ตามเดิม

  3. ตรวจสอบสิทธิ์การเข้าถึงของคุณ ใน CLI ให้เริ่ม codex แล้วป้อน /daybreak ภายในเซสชัน ใน Desktop ให้เปิดตัวเลือกโมเดลขั้นสูง แล้วเปิด Daybreak หากคุณมีสิทธิ์เข้าถึง Daybreak Red ให้ตรวจสอบว่าโมเดลไซเบอร์ที่คาดไว้ปรากฏขึ้น และคุณสามารถใช้โมเดลนั้นส่งคำขอได้

  4. เก็บการกำหนดค่าที่ใช้งานได้ไว้ หากตรวจสอบแล้วใช้งานได้ ให้ลบบรรทัดที่คุณปิดใช้งานออก แล้วบันทึกไฟล์ หากใช้งานไม่ได้ ให้ลบ # ออก บันทึก แล้วรีสตาร์ท Codex เพื่อกลับไปใช้การตั้งค่าเดิม

แก้ปัญหาการปฏิเสธคำขอใน CLI

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

  • หากใช้ Daybreak ไม่ได้ ให้ตรวจสอบว่า:

    • บัญชีหรือโปรเจกต์ API ของคุณมีสิทธิ์เข้าถึง Daybreak

    • โมเดลที่เลือกรองรับ Daybreak

  • ใน CLI แบบโต้ตอบ ให้ตรวจสอบว่าเปิด Daybreak อยู่ CLI แบบโต้ตอบอาจแสดงข้อความปฏิเสธเมื่อใช้ Daybreak ได้แต่ยังปิดอยู่: ขณะนี้ Daybreak ปิดอยู่ หากคุณกำลังทำงานด้านความปลอดภัยที่ได้รับอนุญาต ให้เปิดใช้งานแล้วลองส่งคำขออีกครั้ง

    • ระบบจะแสดงคำถามว่า เปิด Daybreak สำหรับคำขอถัดไปของคุณไหม? พร้อมตัวเลือก เปิดใช้งาน Daybreak หรือ ยังไม่ใช่ตอนนี้

    • เลือก เปิดใช้งาน Daybreak เพื่อเปิดสำหรับคำขอถัดไป แล้วลองส่งคำขออีกครั้ง โปรดทราบว่าระบบจะไม่ลองส่งคำขอที่ถูกปฏิเสธซ้ำโดยอัตโนมัติ คุณต้องส่งคำขออีกครั้งเอง คำขอบางรายการอาจยังถูกปฏิเสธแม้จะเปิด Daybreak อยู่

    • เลือก ยังไม่ใช่ตอนนี้ เพื่อให้ Daybreak ปิดอยู่ต่อไป

  • สำหรับระบบอัตโนมัติ ให้ตรวจสอบว่า daybreak=true ถูกส่งไปถึงโปรเซส Codex ที่ทำงานจริง และไม่ถูกแทนที่ด้วยการตั้งค่าบรรทัดคำสั่งอื่น

บทความนี้มีประโยชน์หรือไม่