Geodi ตัวละครพิกเซลอย่างเป็นทางการของ GEODE
กลับไปที่ห้องจัดแสดง

GEODE

Autonomous Agent Harness

จากการสังเกตสู่การกระทำถัดไป

ฮาร์เนสเอเจนต์อัตโนมัติที่รันบนเครื่อง ซึ่งรับงานวิจัย งานไฟล์ และงานตามกำหนดเวลาได้ โมเดลเลือกการกระทำถัดไป ส่วนรันไทม์ตรวจสิทธิ์การใช้เครื่องมือและตัดสินว่างานเสร็จเมื่อใด

2026.02.21 — present

การออกแบบ การตัดสินใจ การตรวจยืนยัน: Author · การพัฒนา: Claude · รีวิว: Codex

  • CLIเผยแพร่แล้ว · PyPI
  • เซิร์ฟเวอร์ MCPพัฒนาแล้ว

การรับแคนดิเดตและอำนาจการรีลีสเป็นการตัดสินที่แยกจากกัน

Crucible เป็นเคอร์เนลการทดลองที่แยกจากการค้นหานโยบาย คอมมิตแคนดิเดตถูกตรวจกับพื้นผิวที่อนุญาตและสัญญาที่ตรึงไว้ งานแบบจับคู่ถูกรวมผลใน checkout สำหรับการวัดที่แยกต่างหาก และผลคือ KEEP, REJECT หรือ INVALID

แผนที่ Crucible · วาดจากคอมมิตที่ตรึงไว้ 9e2c041 และอาร์ติแฟกต์สาธารณะ 23e3428
แผนที่ Crucible ของ GEODEเคอร์เนลการทดลองที่แยกการรับแคนดิเดต การมีสิทธิ์แบบ sealed และการรีลีสผลิตภัณฑ์ เป็นอำนาจที่แยกจากกัน supervisor รับคอมมิตแคนดิเดตหนึ่งรายการจาก producer ตรวจกับพื้นผิวที่อนุญาตและ evaluator ที่ตรึงไว้ แล้วรันงาน tau2 ใน checkout สำหรับการวัดที่แยกออกมา promotion.py รวมผลแบบจับคู่ตาม task และ family ที่ลงทะเบียนล่วงหน้าเป็น KEEP, REJECT หรือ INVALID โดย KEEP เพียงย้าย head ของการค้นหา การประเมินแบบ sealed ตัดสิน train bundle ด้วย test pack ที่ไม่ทับซ้อนและใช้ครั้งเดียว แม้ได้ ELIGIBLE ก็ไปถึงเพียง eligible ref โดยไม่มีอำนาจการรีลีสโมเดล actor · userr14 · r35: gpt-5.4/highสภาพแวดล้อม tau2งาน · ผู้ใช้จำลองการรีลีสผลิตภัณฑ์ GEODEไม่มีการเชื่อมต่อ · อำนาจแยกต่างหากsearch/producersคำสั่ง producer · ตั้งค่าไว้replay producersearch/supervisor.pypropose → preflightevaluate → decide → recordcontract.pyพื้นผิวที่อนุญาต · diff ของแคนดิเดตfrozen evaluator · ลงทะเบียนล่วงหน้าattempt/feedback.jsonรหัสความล้มเหลว · ID งาน trainmeasurement checkoutแยกจาก producerassays/การรัน tau2 · receiptverifier ของงานpromotion.pypaired · การรวมผลตาม task · familyKEEP · REJECT · INVALIDattestation/bundle.pytrain bundle · KEEP ที่คำนวณใหม่attestation/sealed.pydisjoint test pack · ใช้ครั้งเดียวELIGIBLE · release_authority nonerefs/cruciblesearch/* headeligible/*geode-eval-artifactsr14 · train KEEP → sealed REJECTr35 · INVALID · 0 คู่ · nullevolve/crucibleเคอร์เนลการทดลองภายนอก · แยกจาก SILsearch · คำตัดสิน trainattestation · sealed1 ขอแคนดิเดต · propose → preflight → search/producers12 คอมมิตแคนดิเดตหนึ่งรายการ · search/producers → propose → preflight23 พื้นผิวที่อนุญาต · ตรวจ diff · propose → preflight → พื้นผิวที่อนุญาต · diff ของแคนดิเดต34checkout ที่แยกออกมา5รันภายใต้สัญญาที่ตรึงไว้6บทสนทนา actor · user7การเรียกโมเดล8paired evidence9การรวมผลที่ลงทะเบียนล่วงหน้า10KEEP · ย้าย head1paired evidence2การรวมผลที่ลงทะเบียนล่วงหน้า3REJECT · INVALID4รหัสความล้มเหลว · ID งาน1record · ref receipt2 train bundle เท่านั้น · ครั้งเดียว · train bundle · KEEP ที่คำนวณใหม่ → disjoint test pack · ใช้ครั้งเดียว23 eligible ref เท่านั้น · ELIGIBLE · release_authority none → eligible/*31verdict.json สาธารณะ2sealed decision.json

คำตัดสิน train

แคนดิเดตหนึ่งรายการภายในพื้นผิวที่อนุญาตถูกวัดภายใต้สัญญาที่ตรึงไว้ใน checkout ที่แยกออกมา และกฎที่ลงทะเบียนล่วงหน้าตัดสิน KEEP, REJECT หรือ INVALID

  1. propose → preflightsearch/supervisor.pyรัน · ตัดสิน: ขอแคนดิเดตsearch/producers

    supervisor ของการค้นหาขอแคนดิเดตจาก producer แคนดิเดตของ r14 คือแคนดิเดตก่อนหน้า (r13) ที่ replay producer นำมาใช้ซ้ำ ไม่ใช่แคนดิเดตใหม่ที่ LLM สร้าง

  2. search/producersข้อมูล: คอมมิตแคนดิเดตหนึ่งรายการpropose → preflightsearch/supervisor.py

    producer คืนคอมมิตแคนดิเดตเดียวภายในพาธที่อนุญาต

  3. propose → preflightsearch/supervisor.pyรัน · ตัดสิน: พื้นผิวที่อนุญาต · ตรวจ diffพื้นผิวที่อนุญาต · diff ของแคนดิเดตcontract.py

    diff ของแคนดิเดตต้องอยู่ในพื้นผิวที่สัญญาอนุญาต และ frozen evaluator ถูกตรวจยืนยัน ใน r14 และ r35 เป้าหมายที่อนุญาตคือไฟล์เดียว tau2_agent_policy.md ส่วน core และการพัฒนา Crucible ถูกตรึงเป็นพาธของ evaluator

  4. evaluate → decide → recordsearch/supervisor.pyรัน · ตัดสิน: checkout ที่แยกออกมาแยกจาก producermeasurement checkout

    แคนดิเดตถูกตรวจใน checkout สำหรับการวัดที่แยกจาก producer

  5. แยกจาก producermeasurement checkoutรัน · ตัดสิน: รันภายใต้สัญญาที่ตรึงไว้การรัน tau2 · receiptassays/

    baseline และแคนดิเดตรันด้วยสัญญา ซีด และงานชุดเดียวกัน

  6. การรัน tau2 · receiptassays/ข้อมูล: บทสนทนา actor · userสภาพแวดล้อม tau2

    เอเจนต์ GEODE (actor) สนทนากับผู้ใช้จำลองที่ evaluator เป็นเจ้าของ ในสภาพแวดล้อมงาน tau2

  7. การรัน tau2 · receiptassays/ข้อมูล: การเรียกโมเดลโมเดล actor · user

    ใน r14 และ r35 ทั้ง actor และผู้ใช้จำลองคือ gpt-5.4/high (สมาชิก)

  8. verifier ของงานassays/ข้อมูล: paired evidencepaired · การรวมผลตาม task · familypromotion.py

    ผลของ verifier ของงานถูกเก็บเป็นคู่ baseline–แคนดิเดต

  9. frozen evaluator · ลงทะเบียนล่วงหน้าcontract.pyรัน · ตัดสิน: การรวมผลที่ลงทะเบียนล่วงหน้าpaired · การรวมผลตาม task · familypromotion.py

    ผลแบบจับคู่ถูกรวมตาม task และ family ที่ลงทะเบียนล่วงหน้า โดยตรวจเงื่อนไขงบ ความครอบคลุม โครงสร้างพื้นฐาน และความปลอดภัยแยกกัน

  10. KEEP · REJECT · INVALIDpromotion.pyรัน · ตัดสิน: KEEP · ย้าย headsearch/* headrefs/crucible

    เมื่อ KEEP head ถัดไปของ refs/crucible/search/* จะเป็นแคนดิเดต promotion_authority ของคำตัดสิน train คือ none

ปฏิเสธ · ไม่ถูกต้อง · ข้อมูลป้อนกลับ

REJECT และ INVALID คง head ไว้ และแคนดิเดตถัดไปได้รับเพียงรหัสความล้มเหลวและ ID งาน train ที่ตรึงไว้ INVALID ไม่ใช่คะแนนศูนย์

  1. verifier ของงานassays/ข้อมูล: paired evidencepaired · การรวมผลตาม task · familypromotion.py

    ผลของ verifier ของงานถูกเก็บเป็นคู่ baseline–แคนดิเดต

  2. frozen evaluator · ลงทะเบียนล่วงหน้าcontract.pyรัน · ตัดสิน: การรวมผลที่ลงทะเบียนล่วงหน้าpaired · การรวมผลตาม task · familypromotion.py

    ผลแบบจับคู่ถูกรวมตาม task และ family ที่ลงทะเบียนล่วงหน้า โดยตรวจเงื่อนไขงบ ความครอบคลุม โครงสร้างพื้นฐาน และความปลอดภัยแยกกัน

  3. KEEP · REJECT · INVALIDpromotion.pyข้อมูล: REJECT · INVALIDรหัสความล้มเหลว · ID งาน trainattempt/feedback.json

    เมื่อถูกปฏิเสธหรือไม่ถูกต้อง head เดิมยังคงอยู่ และแคนดิเดตกับบันทึกถูกเก็บไว้ ค่าเฉลี่ยของ INVALID คือ null ไม่ใช่ศูนย์

  4. รหัสความล้มเหลว · ID งาน trainattempt/feedback.jsonข้อมูล: รหัสความล้มเหลว · ID งานsearch/producers

    ข้อมูลป้อนกลับสู่แคนดิเดตถัดไปจำกัดเพียงรหัสความล้มเหลวและ ID งาน train ที่ตรึงไว้ ไม่มีการส่ง trajectory หรือคำตอบของ evaluator ต่อ

การมีสิทธิ์แบบ sealed · อำนาจแยกต่างหาก

train KEEP เพียงย้าย head ของการค้นหา การมีสิทธิ์แบบ sealed ไปถึงเพียง eligible ref การรีลีสและการดีพลอยผลิตภัณฑ์เป็นอำนาจแยกต่างหากนอก Crucible

  1. evaluate → decide → recordsearch/supervisor.pyข้อมูล: record · ref receipttrain bundle · KEEP ที่คำนวณใหม่attestation/bundle.py

    train bundle จะใช้ได้ก็ต่อเมื่อสัญญา หลักฐานของ baseline และแคนดิเดต KEEP ที่คำนวณใหม่ สายที่มาของข้อเสนอ บันทึกของ supervisor และ receipt ของ ref ที่นำไปใช้ เชื่อมโยงกันทั้งหมด ไม่ใช่อีกชื่อหนึ่งของการปรับปรุง

  2. train bundle · KEEP ที่คำนวณใหม่attestation/bundle.pyรัน · ตัดสิน: train bundle เท่านั้น · ครั้งเดียวdisjoint test pack · ใช้ครั้งเดียวattestation/sealed.py

    การประเมินแบบ sealed ใช้ test pack ที่ไม่ทับซ้อนกับ train เพียงครั้งเดียว โดยไม่มีการลองใหม่ด้านโครงสร้างพื้นฐาน

  3. ELIGIBLE · release_authority noneattestation/sealed.pyรัน · ตัดสิน: eligible ref เท่านั้นeligible/*refs/crucible

    แม้ได้ ELIGIBLE ก็เขียนเพียง refs/crucible/eligible/* และ release_authority ถูกตรึงเป็น none

บันทึกสาธารณะ · r14 · r35

r14 ได้ train KEEP แล้ว sealed REJECT ส่วน r35 (July 13, 2026) เป็น INVALID เพราะความครอบคลุมไม่ครบและโครงสร้างพื้นฐานปนเปื้อน (0 แถวคู่ ค่าเฉลี่ย null) โดย head ไม่เปลี่ยน

  1. KEEP · REJECT · INVALIDpromotion.pyข้อมูล: verdict.json สาธารณะgeode-eval-artifacts

    อาร์ติแฟกต์สาธารณะคือบันทึกที่ปรับให้เป็นมาตรฐานซึ่งตรึงไว้ที่ 23e3428 แฮชการตั้งค่า train ที่ลงทะเบียนล่วงหน้าของ r14 ต่างจากไบต์ของการตั้งค่าสาธารณะ ห่วงโซ่ต้นฉบับทั้งหมดจึงไม่ได้รับการรับรองซ้ำ

  2. attestation/sealed.pyข้อมูล: sealed decision.jsonr14 · train KEEP → sealed REJECTgeode-eval-artifacts

    r14: KEEP บน telecom train 6 งาน × 1 ครั้ง (6 แถวคู่ ไม่มีอำนาจการเลื่อนขั้น) แล้วคำตัดสิน sealed ที่แยกต่างหากเป็น REJECT (ไม่มีอำนาจการรีลีส)

ทุกการเชื่อมต่อมีน้ำหนักเท่ากัน เลือกโฟลว์เพื่อไฮไลต์เฉพาะเส้นทางของโฟลว์นั้นพร้อมขั้นตอนที่มีหมายเลข

  • เส้นทึบ · ทิศทางที่คำขอ แคนดิเดต และผลลัพธ์ไหลไป
  • เส้นประ · รัน ตัดสิน อนุญาต ตั้งค่า
  • เส้นดำหนา · โฟลว์ที่เลือก ตัวเลขบอกลำดับ
  • กล่อง · ขอบเขตของโค้ดหรือบันทึก พร้อมพาธในส่วนหัว
  • ชิปด้านใน · องค์ประกอบภายในขอบเขตนั้น
  • กล่องเส้นประ · อยู่นอกขอบเขตนั้น
  • supervisor ของการค้นหา
  • สัญญา · คำตัดสิน · การรับรอง
  • ref · บันทึก
  • producer · การรัน

Crucible เป็นเคอร์เนลที่แยกจาก SIL การค้นหาทั้งสองไม่ใช่ไปป์ไลน์เดียวที่เลื่อนขั้นแคนดิเดตของกันและกัน กล่องการรีลีสผลิตภัณฑ์ไม่มีการเชื่อมต่อขาเข้า

อำนาจสามประการ
train KEEP ย้าย head ของการค้นหา sealed ELIGIBLE บันทึก eligible ref และการรีลีสผลิตภัณฑ์เป็นการตัดสินใจแยกต่างหากนอก Crucible คำตัดสินก่อนหน้าไม่เคยมอบอำนาจในขั้นถัดไป
null ไม่ใช่ศูนย์
r35 วางแผนไว้ 9 งาน × 3 ครั้ง (27 แถวต่อ arm) แต่มีคู่ที่เปรียบเทียบได้ 0 คู่ ค่าเฉลี่ยและการปรับปรุงจึงเป็น null ไม่ใช่งานที่ล้มเหลว 27 งาน หรืออัตราความสำเร็จ 0%