Geodi, nhân vật pixel chính thức của GEODE
Trở lại phòng trưng bày

GEODE

Autonomous Agent Harness

Từ quan sát đến hành động tiếp theo.

Một harness tác nhân tự hành chạy cục bộ, có thể nhận việc nghiên cứu, thao tác tệp và tác vụ theo lịch.

2026.02.21 — present

Thiết kế, phán đoán, kiểm chứng: Author · hiện thực: Claude · rà soát: Codex

  • CLIĐã phát hành · PyPI
  • Máy chủ MCPĐã hiện thực

Decision Offloading w. Jev

Trong những quyết định trung gian mà một tác nhân đưa ra giữa chừng tác vụ, quyết định nào có thể giao cho Jev, một mô hình chỉ để phán định? Nghiên cứu này kiểm tra xem chất lượng tác vụ được kiểm chứng độc lập có giữ được khi giao như vậy hay không, tính cả khâu chuẩn bị, phán định lặp lại, sửa chữa và bàn giao cuối cùng. Các thử nghiệm sơ bộ ban đầu không thể giải thích chỉ bằng việc thay lệnh gọi phán định, nên hợp đồng đầu vào, hợp đồng quyết định, chính sách xác suất và cách tác nhân thực thi tiêu thụ phán định được tách thành các thử nghiệm riêng.

Bản đồ Jev · runtime từ commit cố định 9e2c041, nghiên cứu từ bản ghi September 2026
Đường phán định của Jev: tích hợp runtime và nghiên cứuPhần trên là đường phán định tùy chọn trong runtime GEODE hiện nay. Chỉ khi judgment_engine được đặt là jev thì kiểm chứng cuối và reflection mới gọi Jev trên TypeSafe SystemOne một lần, và phản hồi chỉ được dùng sau khi qua bước tiếp nhận về kiểu, khoảng giá trị và tổng xác suất. Chỉ supported mới qua kiểm chứng cuối, và kết quả đi đến chính sách PostVerify và Stop của chương phán định hoàn tất. Phần dưới là nghiên cứu Jev v3 bên ngoài runtime: một bảng trạng thái cố định (U3) so sánh phán định của Astra và Jev, các lượt chạy E/I trên Harbor 0.22 chỉ thay đổi đường phán định và kiểm tra riêng kết quả và việc bàn giao bằng một rule oracle độc lập, và gói công khai tách hash nguồn với hash công khai, đồng thời cung cấp phép tính lại không cần mô hình.TypeSafe SystemOnejev-1.13.0 · chỉ phán địnhAstra judge · mô hình actorgpt-6-astra/xhigh · gói thuê baoBáo cáo nghiên cứu Jevbáo cáo kỹ thuật công khaicore/config/judgment.pyjudgment_engine · llm | jevauto → typesafe · openrouterloop/_lifecycle.pychính sách PostVerify · Stopcore/agent/verify.pyphán định cuối · một câu hỏi Choicechỉ supported đạt · chỉ văn bảnadapters/typesafe.pySystemOne · một lệnh gọi · không fallbacktiếp nhận · dung sai tổng 1e-5loop/_reflection.pyreflection · phân loại bằng chứngmemory · observabilitytimeline · hàng quyết định trong ledgerU3 · bảng trạng thái cố định120 cặp · 27 nguồn · không actorAstra · Jev · cùng câu hỏiE/I · Harbor 0.22Astra actor · công cụ · sửa chữađường judge · Astra · Jev · Jev-firstrule oracletính đúng · bàn giao tách riêngjev-v3-20260927E2E-DATA · hash nguồn · công khaiREPRODUCE · model-freeRuntime GEODE · 9e2c041phán định tùy chọn · mặc định llmNghiên cứu Jev v3 · Sept 2026ngoài runtime · harness riêng1chọn đường2 yêu cầu · ứng viên · quan sát · phán định cuối · một câu hỏi Choice → SystemOne · một lệnh gọi · không fallback23 một lệnh gọi SystemOne · SystemOne · một lệnh gọi · không fallback → TypeSafe SystemOne34 Choice đã tiếp nhận · tiếp nhận · dung sai tổng 1e-5 → chỉ supported đạt · chỉ văn bản45passed · reflection6hàng phán định1cùng lựa chọn2phân loại bằng chứng3 một lệnh gọi SystemOne · SystemOne · một lệnh gọi · không fallback → TypeSafe SystemOne34 phân loại · tiếp nhận · dung sai tổng 1e-5 → reflection · phân loại bằng chứng41Phán định của Jev2Phán định của Astra3kết quả bảng · báo cáo1sinh · công cụ · sửa chữa2đường phán định hoàn tất3 kiểm tra độc lập · E/I · Harbor 0.22 → tính đúng · bàn giao tách riêng34lỗi · phả hệ sửa chữa5tính lại không cần mô hình

Runtime · phán định cuối

Khi chọn Jev, kiểm chứng cuối gọi Jev một lần với một câu hỏi Choice, và chỉ phán định supported đã qua tiếp nhận mới đạt.

  1. judgment_engine · llm | jevcore/config/judgment.pychạy · quyết định: chọn đườngphán định cuối · một câu hỏi Choicecore/agent/verify.py

    Đường Jev chỉ được dùng khi judgment_engine được đặt là jev (mặc định llm). provider auto chọn TypeSafe, rồi OpenRouter, tùy bên nào có khóa; không có khóa thì đường LLM judge được giữ. Đây không phải fallback thử lại một yêu cầu thất bại ở nơi khác.

  2. phán định cuối · một câu hỏi Choicecore/agent/verify.pydữ liệu: yêu cầu · ứng viên · quan sátSystemOne · một lệnh gọi · không fallbackadapters/typesafe.py

    Yêu cầu gốc và ứng viên được che dữ liệu và giới hạn độ dài, rồi gửi cùng các quan sát công cụ dưới dạng một câu hỏi Choice (supported, contradicted, insufficient_evidence). Lệnh gọi phán định không được cấp công cụ (allow_tools=False). Phán định cần hình ảnh không được gửi đến Jev và trở thành verification_error.

  3. SystemOne · một lệnh gọi · không fallbackadapters/typesafe.pydữ liệu: một lệnh gọi SystemOneTypeSafe SystemOne

    Một lệnh gọi, trực tiếp đến TypeSafe hoặc qua OpenRouter, không chuyển sang nhà cung cấp khác. Jev không bao giờ được dùng làm mô hình sinh văn bản gốc.

  4. tiếp nhận · dung sai tổng 1e-5adapters/typesafe.pydữ liệu: Choice đã tiếp nhậnchỉ supported đạt · chỉ văn bảncore/agent/verify.py

    Phản hồi chỉ được dùng sau khi qua bước tiếp nhận về kiểu, khoảng giá trị và tổng xác suất (dung sai 1e-5). Chỉ supported mới đạt; contradicted và insufficient_evidence trở thành tín hiệu thử lại kèm một bước kiểm tra tiếp theo cố định. Phản hồi không phải end_turn hoặc không qua bước tiếp nhận trở thành verification_error, không phải tín hiệu thử lại (should_retry=False). Điểm số là một phép chiếu nhị phân, không phải xác suất đã hiệu chuẩn.

  5. chỉ supported đạt · chỉ văn bảncore/agent/verify.pydữ liệu: passed · reflectionchính sách PostVerify · Stoploop/_lifecycle.py

    Phán định đi đến chính sách PostVerify và Stop của chương phán định hoàn tất. Phán định là đầu vào của chính sách đó, không phải thẩm quyền; khi chờ rà soát, ứng viên chỉ còn dưới dạng pending_text và phản hồi cuối rỗng, nên không có gì được bàn giao.

  6. chính sách PostVerify · Stoploop/_lifecycle.pyghi · quan sát: hàng phán địnhtimeline · hàng quyết định trong ledgermemory · observability

    Các quyết định phán định được ghi trong timeline và evidence ledger: bản ghi của runtime, tách biệt với artifact nghiên cứu.

Runtime · reflection

Cùng lựa chọn đó điều khiển việc phân loại bằng chứng của reflection; câu kiểm tra tiếp theo do mã quy định.

  1. judgment_engine · llm | jevcore/config/judgment.pychạy · quyết định: cùng lựa chọnreflection · phân loại bằng chứngloop/_reflection.py

    Cùng lựa chọn đó áp dụng cho reflection.

  2. reflection · phân loại bằng chứngloop/_reflection.pydữ liệu: phân loại bằng chứngSystemOne · một lệnh gọi · không fallbackadapters/typesafe.py

    Reflection dùng Jev để phân loại bằng chứng đã giới hạn và nối thêm một bước kiểm tra tiếp theo do mã quy định. Nó không thay đổi các giả thuyết niềm tin hay độ tự tin.

  3. SystemOne · một lệnh gọi · không fallbackadapters/typesafe.pydữ liệu: một lệnh gọi SystemOneTypeSafe SystemOne

    Một lệnh gọi, trực tiếp đến TypeSafe hoặc qua OpenRouter, không chuyển sang nhà cung cấp khác. Jev không bao giờ được dùng làm mô hình sinh văn bản gốc.

  4. tiếp nhận · dung sai tổng 1e-5adapters/typesafe.pydữ liệu: phân loạireflection · phân loại bằng chứngloop/_reflection.py

    Chỉ phân loại đã qua tiếp nhận mới cập nhật trạng thái reflection; khi thất bại, vòng tiếp theo thử lại từ cùng trạng thái trước đó.

Nghiên cứu · bảng cố định U3

Không có actor, phán định của Jev và Astra trên cùng trạng thái và câu hỏi được so sánh theo cặp.

  1. Astra · Jev · cùng câu hỏiU3 · bảng trạng thái cố địnhdữ liệu: Phán định của JevTypeSafe SystemOne

    U3 (commit thử nghiệm gốc 2f2b494): 120 trạng thái cố định · 27 cụm nguồn · 240 lệnh gọi. Mỗi trạng thái và câu hỏi được gửi đến Jev và Astra như một cặp; không có actor, công cụ hay Harbor.

  2. Astra · Jev · cùng câu hỏiU3 · bảng trạng thái cố địnhdữ liệu: Phán định của AstraAstra judge · mô hình actor

    Đúng trên cùng mẫu: Astra 90/120, Jev 84/120; trung vị mỗi lệnh gọi 10.446 s so với 0.253 s. Đây chỉ là độ trễ của lệnh gọi phán định, không phải thời gian tác vụ hay mức tiết kiệm chi phí.

  3. U3 · bảng trạng thái cố địnhdữ liệu: kết quả bảng · báo cáoBáo cáo nghiên cứu Jev

    Kết quả độ chính xác và độ trễ của U3 xuất hiện trong báo cáo kỹ thuật công khai. Ở đây không khẳng định bảng này có thuộc gói công khai E2E hay không.

Nghiên cứu · lượt chạy E/I

Với Astra làm actor, chỉ đường phán định thay đổi, và một rule oracle độc lập kiểm tra riêng kết quả và việc bàn giao.

  1. Astra actor · công cụ · sửa chữaE/I · Harbor 0.22dữ liệu: sinh · công cụ · sửa chữaAstra judge · mô hình actor

    Trong E/I trên Harbor 0.22, actor Astra đảm nhận việc sinh, gọi công cụ và sửa chữa; chỉ đường phán định thay đổi.

  2. đường judge · Astra · Jev · Jev-firstE/I · Harbor 0.22dữ liệu: đường phán định hoàn tấtTypeSafe SystemOne

    E7 (commit thử nghiệm gốc 1f65534): 12 tác vụ tổng hợp tự soạn × 3 cấu hình × 2 lượt = 72 lượt chạy, 24/24 cho mỗi cấu hình. Cấu hình Jev-first có 0/24 fallback thực tế, nên tác động của nó chưa được đo.

  3. E/I · Harbor 0.22ghi · quan sát: kiểm tra độc lậptính đúng · bàn giao tách riêngrule oracle

    Một rule oracle độc lập kiểm tra kết quả cuối, và việc bàn giao cuối thực tế được đếm riêng. Trong 11 cặp hậu kiểm của U8n bị gián đoạn, mọi ứng viên đều qua oracle, nhưng bàn giao là Astra 11/11 và Jev Noul 0/11.

  4. E/I · Harbor 0.22dữ liệu: lỗi · phả hệ sửa chữaE2E-DATA · hash nguồn · công khaijev-v3-20260927

    Gói công khai E2E giữ phả hệ chuẩn bị, lỗi và sửa chữa, với hash nguồn và hash bản công khai được tách riêng. Một bản công khai đã che dữ liệu không thay thế cho việc xác thực nguồn chưa bị thay đổi.

  5. REPRODUCE · model-freejev-v3-20260927dữ liệu: tính lại không cần mô hìnhBáo cáo nghiên cứu Jev

    Tính lại số liệu từ các phản hồi đã lưu và chạy mới là hai thao tác khác nhau. Báo cáo là báo cáo kỹ thuật công khai, không phải bài báo được bình duyệt.

Mọi kết nối có cùng độ đậm. Chọn một luồng để chỉ làm nổi bật đường đi của nó, kèm các bước được đánh số.

  • Nét liền · hướng đi của yêu cầu, ứng viên và kết quả
  • Nét đứt · chạy, quyết định, cấp quyền, cấu hình
  • Nét gạch chấm dài · bản ghi và quan sát, tách khỏi phán định
  • Nét đen đậm · luồng được chọn; số chỉ thứ tự
  • Hộp · một ranh giới mã hoặc bản ghi, đường dẫn ở phần đầu
  • Chip bên trong · một thành phần trong ranh giới đó
  • Hộp nét đứt · bên ngoài ranh giới đó
  • vòng lặp · harness thực thi
  • chọn đường · phán định · oracle
  • bản ghi · gói công khai
  • truyền tải · bảng phán định

Phần trên và phần dưới là hai hệ thống khác nhau. Cấu hình và kết quả nghiên cứu không phải tất cả đều được bật trong đường runtime hiện nay; mối liên hệ chung duy nhất là cả hai cùng gọi một mô hình Jev (jev-1.13.0).

Tiếp nhận của runtime
Runtime giữ dung sai tổng xác suất nghiêm ngặt ở 1e-5. Bên gọi đánh giá truyền dung sai đã ghi của riêng mình thay vì nới lỏng bộ phân tích của runtime.
Phạm vi nghiên cứu
U3 chỉ đo các lệnh gọi phán định; E/I bao gồm actor và sửa chữa. Mẫu số của chúng không bao giờ bị trộn lẫn, và 11 cặp của U8n là phân tích hậu kiểm của một nghiên cứu bị gián đoạn.

Ba hợp đồng quyết định

Choice

Trả về
Xác suất cho từng hạng mục hoặc lựa chọn
Quyết định
Hoàn tất; ý định và đối tượng của yêu cầu

Noul

Trả về
P(true) cho mỗi điều kiện
Quyết định
Mâu thuẫn; thiếu bằng chứng

Score

Trả về
Giá trị kỳ vọng và phân phối trên một thang thứ tự cố định
Quyết định
Xếp hạng các ứng viên được sinh ra

Giá trị kỳ vọng đặt ứng viên trên thang; nó không được dùng làm độ tin cậy.

Đánh giá và kết nối

Mỗi hợp đồng được đánh giá trên bảng đầu vào cố định của riêng nó, và một số được nối vào đường thực thi của harness thử nghiệm để xem tác nhân thực thi tiêu thụ phán định như thế nào. Trong bản đồ phía trên, phần nghiên cứu thể hiện các lượt chạy đó; phần runtime là đường tùy chọn trong GEODE hiện nay.

Những quan sát đã thay đổi thiết kế

  1. I5 → I6 · hợp đồng đầu vào
    1. Truy vết một lỗi bàn giao chung cho thấy đầu vào phán định thiếu hợp đồng tác vụ và mô tả các quan sát công cụ của cùng yêu cầu như ngữ cảnh trong quá khứ
    2. I6 bàn giao 6/6 trong một lượt chạy riêng với mã đã sửa và một tài khoản mới
  2. U3 · cùng 120 cặp trạng thái
    1. Trung vị mỗi lệnh gọi Astra 10.446 s · Jev 0.253 s; đúng trên cùng mẫu 90/120 · 84/120
    2. Tốc độ và độ chính xác được cân nhắc cùng nhau cho từng quyết định để định phạm vi ủy quyền
  3. U2 · xác suất
    1. Xác suất của Jev được hiệu chuẩn tốt hơn về độ lớn, nhưng Astra xếp các phán định sai của mình lên trước đáng tin cậy hơn
    2. Hiệu chuẩn và chọn lọc lỗi được đo riêng, và ngưỡng được cố định trên phần chia selection
  4. U6a · ý định và đối tượng
    1. Trên 40 nhóm do người thiết kế soạn, Jev 216/220 · Astra 220/220, đạt biên −5 pp đã đăng ký trước
    2. Phân loại ý định và đối tượng cố định được thu hẹp thành ứng viên ứng dụng tiếp theo
  5. U8n · bàn giao
    1. 11 cặp hậu kiểm từ một lượt chạy bị gián đoạn: các ứng viên đã sửa đều qua oracle ở cả hai arm; bàn giao Astra 11/11 · Jev Noul 0/11
    2. Các phán định thiếu bằng chứng đã chặn việc bàn giao đúng; cấu hình Noul hiện tại chưa đủ căn cứ để làm bộ phán định bàn giao duy nhất