Geodi, офіційний піксельний персонаж GEODE
Назад до зали

GEODE

Autonomous Agent Harness

Від спостереження до наступної дії.

Локальна обв’язка автономного агента, якій можна доручити дослідження, роботу з файлами та заплановані завдання.

2026.02.21 — present

Проєктування, рішення, верифікація: Author · реалізація: Claude · рев’ю: Codex

  • CLIОпубліковано · PyPI
  • MCP-серверРеалізовано

Decision Offloading w. Jev

Які з проміжних рішень, що агент ухвалює посеред завдання, можна передати Jev — моделі лише для рішень? Це дослідження перевіряє, чи зберігається незалежно перевірена якість завдань після такої передачі, враховуючи підготовку, повторні рішення, виправлення й фінальну передачу. Ранні пілоти не вдавалося пояснити самою лише заміною виклику рішення, тому контракт входу, контракт рішення, ймовірнісну політику та споживання з боку агента виконання розділили на окремі експерименти.

Карта Jev · середовище виконання за зафіксованим комітом 9e2c041, дослідження за записами September 2026
Шляхи рішень Jev: інтеграція в середовище виконання й дослідженняВерхня частина — опційний шлях рішень у нинішньому середовищі виконання GEODE. Лише коли judgment_engine має значення jev, фінальна верифікація й рефлексія один раз викликають Jev на TypeSafe SystemOne, а відповідь використовується лише після перевірки приймання за типом, діапазоном і сумою ймовірностей. Фінальну верифікацію проходить лише supported, а результат іде до політики PostVerify і Stop з розділу «Завершення». Нижня частина — дослідження Jev v3 поза середовищем виконання: на панелі фіксованих станів (U3) порівнювали рішення Astra і Jev, запуски E/I на Harbor 0.22 змінювали лише маршрут рішення й окремо перевіряли результати та передачу незалежним оракулом правил, а публічний пакет тримає хеші джерела й публічної копії окремо та пропонує перерахунок без моделі.TypeSafe SystemOnejev-1.13.0 · лише рішенняAstra: суддя · модель actorgpt-6-astra/xhigh · підпискаЗвіт про дослідження Jevпублічний технічний звітcore/config/judgment.pyjudgment_engine · llm | jevauto → typesafe · openrouterloop/_lifecycle.pyPostVerify · політика Stopcore/agent/verify.pyфінальний вердикт · одне питання Choiceпроходить лише supported · лише текстadapters/typesafe.pySystemOne · один виклик · без fallbackприймання · допуск суми 1e-5loop/_reflection.pyрефлексія · класифікація доказівmemory · observabilitytimeline · рядки рішень ledgerU3 · панель фіксованих станів120 пар · 27 джерел · без actorAstra · Jev · те саме питанняE/I · Harbor 0.22Astra як actor · інструменти · виправленнямаршрут судді · Astra · Jev · Jev-firstrule oracleправильність · передача окремоjev-v3-20260927E2E-DATA · хеші джерела й публічніREPRODUCE · model-freeСередовище виконання GEODE · 9e2c041опційне рішення · типово llmДослідження Jev v3 · September 2026поза середовищем виконання · окрема обв’язка1вибір маршруту2 запит · кандидат · спостереження · фінальний вердикт · одне питання Choice → SystemOne · один виклик · без fallback23 один виклик SystemOne · SystemOne · один виклик · без fallback → TypeSafe SystemOne34 прийнятий Choice · приймання · допуск суми 1e-5 → проходить лише supported · лише текст45passed · reflection6рядки вердиктів1той самий вибір2класифікувати докази3 один виклик SystemOne · SystemOne · один виклик · без fallback → TypeSafe SystemOne34 класифікація · приймання · допуск суми 1e-5 → рефлексія · класифікація доказів41Рішення Jev2Рішення Astra3результати панелі · звіт1генерація · інструменти · виправлення2маршрут рішення про завершення3 незалежна перевірка · E/I · Harbor 0.22 → правильність · передача окремо34збій · родовід виправлень5перерахунок без моделі

Середовище виконання · фінальний вердикт

Якщо обрано Jev, фінальна верифікація один раз викликає Jev з одним питанням Choice, і проходить лише прийнятий вердикт supported.

  1. judgment_engine · llm | jevcore/config/judgment.pyзапуск · рішення: вибір маршрутуфінальний вердикт · одне питання Choicecore/agent/verify.py

    Маршрут Jev використовується лише тоді, коли judgment_engine має значення jev (типово llm). provider auto обирає TypeSafe, потім OpenRouter — той, для якого є ключ; без ключа лишається маршрут LLM judge. Це не fallback, що повторює невдалий запит деінде.

  2. фінальний вердикт · одне питання Choicecore/agent/verify.pyдані: запит · кандидат · спостереженняSystemOne · один виклик · без fallbackadapters/typesafe.py

    Оригінальний запит і кандидата очищують від чутливих даних і обмежують за довжиною, а потім надсилають разом зі спостереженнями інструментів як одне питання Choice (supported, contradicted, insufficient_evidence). Виклик рішення не отримує інструментів (allow_tools=False). Рішення, якому потрібні зображення, до Jev не надсилається й стає verification_error.

  3. SystemOne · один виклик · без fallbackadapters/typesafe.pyдані: один виклик SystemOneTypeSafe SystemOne

    Один виклик — напряму до TypeSafe або через OpenRouter, без переходу до іншого провайдера. Jev ніколи не використовується як коренева модель генерації тексту.

  4. приймання · допуск суми 1e-5adapters/typesafe.pyдані: прийнятий Choiceпроходить лише supported · лише текстcore/agent/verify.py

    Відповідь використовується лише після перевірки приймання за типом, діапазоном і сумою ймовірностей (допуск 1e-5). Проходить лише supported; contradicted та insufficient_evidence стають сигналом повтору з фіксованою наступною перевіркою. Відповідь, що не є end_turn або не проходить приймання, стає verification_error, а це не сигнал повтору (should_retry=False). Оцінка — бінарна проєкція, а не відкалібрована ймовірність.

  5. проходить лише supported · лише текстcore/agent/verify.pyдані: passed · reflectionPostVerify · політика Stoploop/_lifecycle.py

    Вердикт іде до політики PostVerify і Stop з розділу «Завершення». Вердикт — вхід для цієї політики, а не повноваження; коли він чекає на рев’ю, кандидат лишається тільки як pending_text, а фінальна відповідь порожня, тож нічого не передається.

  6. PostVerify · політика Stoploop/_lifecycle.pyзапис · спостереження: рядки вердиктівtimeline · рядки рішень ledgermemory · observability

    Рішення вердиктів записуються в timeline і evidence ledger: це записи середовища виконання, окремі від дослідницьких артефактів.

Середовище виконання · рефлексія

Той самий вибір керує класифікацією доказів у рефлексії; речення з наступною перевіркою задає код.

  1. judgment_engine · llm | jevcore/config/judgment.pyзапуск · рішення: той самий вибіррефлексія · класифікація доказівloop/_reflection.py

    Той самий вибір застосовується до рефлексії.

  2. рефлексія · класифікація доказівloop/_reflection.pyдані: класифікувати доказиSystemOne · один виклик · без fallbackadapters/typesafe.py

    Рефлексія використовує Jev, щоб класифікувати обмежені докази, і додає наступну перевірку, визначену кодом. Вона не змінює гіпотез переконань чи самовпевненості.

  3. SystemOne · один виклик · без fallbackadapters/typesafe.pyдані: один виклик SystemOneTypeSafe SystemOne

    Один виклик — напряму до TypeSafe або через OpenRouter, без переходу до іншого провайдера. Jev ніколи не використовується як коренева модель генерації тексту.

  4. приймання · допуск суми 1e-5adapters/typesafe.pyдані: класифікаціярефлексія · класифікація доказівloop/_reflection.py

    Лише прийнята класифікація оновлює стан рефлексії; у разі збою наступний раунд повторює спробу з того самого попереднього стану.

Дослідження · фіксована панель U3

Без actor рішення Jev і Astra щодо того самого стану й питання порівнювали попарно.

  1. Astra · Jev · те саме питанняU3 · панель фіксованих станівдані: Рішення JevTypeSafe SystemOne

    U3 (коміт оригінального експерименту 2f2b494): 120 фіксованих станів · 27 кластерів джерел · 240 викликів. Кожен стан і питання надходили до Jev і Astra однією парою; без actor, інструментів чи Harbor.

  2. Astra · Jev · те саме питанняU3 · панель фіксованих станівдані: Рішення AstraAstra: суддя · модель actor

    Правильно на тій самій вибірці: Astra 90/120, Jev 84/120; медіана на виклик 10.446 s проти 0.253 s. Це лише затримка виклику рішення, а не час виконання завдання чи економія коштів.

  3. U3 · панель фіксованих станівдані: результати панелі · звітЗвіт про дослідження Jev

    Результати точності й затримки U3 наведено в публічному технічному звіті. Чи входить ця панель до публічного пакета E2E, тут не стверджується.

Дослідження · запуски E/I

З Astra як actor змінювався лише маршрут рішення, а незалежний оракул правил окремо перевіряв результати й передачу.

  1. Astra як actor · інструменти · виправленняE/I · Harbor 0.22дані: генерація · інструменти · виправленняAstra: суддя · модель actor

    В E/I на Harbor 0.22 actor Astra відповідає за генерацію, виклики інструментів і виправлення; змінюється лише маршрут рішення.

  2. маршрут судді · Astra · Jev · Jev-firstE/I · Harbor 0.22дані: маршрут рішення про завершенняTypeSafe SystemOne

    E7 (коміт оригінального експерименту 1f65534): 12 авторських синтетичних завдань × 3 конфігурації × 2 запуски = 72 запуски, 24/24 на конфігурацію. Конфігурація Jev-first мала 0/24 фактичних fallback, тож її ефект не виміряно.

  3. E/I · Harbor 0.22запис · спостереження: незалежна перевіркаправильність · передача окремоrule oracle

    Незалежний оракул правил перевіряє фінальний результат, а фактичну фінальну передачу рахують окремо. В 11 постфактум-парах перерваного U8n кожен кандидат пройшов оракул, але передача становила Astra 11/11 і Jev Noul 0/11.

  4. E/I · Harbor 0.22дані: збій · родовід виправленьE2E-DATA · хеші джерела й публічніjev-v3-20260927

    Публічний пакет E2E зберігає родоводи підготовки, збоїв і виправлень, а хеші джерела й публічної копії тримає окремо. Очищена публічна копія не замінює валідації незмінного джерела.

  5. REPRODUCE · model-freejev-v3-20260927дані: перерахунок без моделіЗвіт про дослідження Jev

    Перерахунок показників зі збережених відповідей і новий запуск — різні операції. Звіт — публічний технічний звіт, а не рецензована стаття.

Усі зв’язки однакової товщини. Оберіть потік, щоб підсвітити лише його шлях із пронумерованими кроками.

  • Суцільна · напрямок, яким рухаються запити, кандидати й результати
  • Штрихова · запуск, рішення, авторизація, налаштування
  • Довга штрихпунктирна · записи й спостереження, окремо від вердикту
  • Товста чорна лінія · обраний потік; номери показують порядок
  • Рамка · межа коду чи записів, шлях у заголовку
  • Внутрішня плашка · компонент у цій межі
  • Штрихова рамка · поза цією межею
  • цикл · обв’язка виконання
  • вибір маршруту · вердикт · оракул
  • записи · публічний пакет
  • транспорт · панель рішень

Верхня й нижня частини — різні системи. Дослідницькі конфігурації й результати не всі ввімкнені в нинішньому шляху середовища виконання; єдиний спільний зв’язок — обидві викликають ту саму модель Jev (jev-1.13.0).

Приймання в середовищі виконання
Середовище виконання тримає суворий допуск суми ймовірностей 1e-5. Викликачі оцінювання передають власний записаний допуск замість того, щоб послаблювати парсер середовища виконання.
Межі дослідження
U3 вимірює лише виклики рішень; E/I охоплює actor і виправлення. Їхні знаменники ніколи не змішуються, а 11 пар U8n — постфактум-аналіз перерваного дослідження.

Три контракти рішень

Choice

Повертає
Імовірність для кожної категорії чи варіанта
Вирішує
Завершення; намір і ціль запиту

Noul

Повертає
P(true) для кожної умови
Вирішує
Суперечність; брак доказів

Score

Повертає
Очікуване значення й розподіл на фіксованій порядковій шкалі
Вирішує
Рейтинг згенерованих кандидатів

Очікуване значення розміщує кандидата на шкалі; як упевненість воно не використовується.

Оцінювання й підключення

Кожен контракт оцінювали на власній фіксованій панелі входів, а деякі підключили до шляху виконання експериментальної обв’язки, щоб побачити, як агент виконання споживає рішення. На карті вище дослідницька частина показує ці запуски; частина середовища виконання — це опційний шлях у нинішньому GEODE.

Спостереження, що змінили дизайн

  1. I5 → I6 · контракт входу
    1. Трасування спільного збою передачі показало, що вхід рішення не містив контракту завдання й описував спостереження інструментів того самого запиту як минулий контекст
    2. I6 передав 6/6 в окремому запуску з переглянутим кодом і новим обліковим записом
  2. U3 · ті самі 120 пар станів
    1. Медіана на виклик Astra 10.446 s · Jev 0.253 s; правильно на тій самій вибірці 90/120 · 84/120
    2. Швидкість і точність зважують разом для кожного рішення, щоб визначити обсяг делегування
  3. U2 · імовірності
    1. Імовірності Jev були краще відкалібровані за величиною, але Astra надійніше ставила свої хибні рішення попереду
    2. Калібрування й відбір помилок вимірюються окремо, а поріг заморожено на розбитті selection
  4. U6a · намір і ціль
    1. На 40 сімействах, написаних дизайнером, Jev 216/220 · Astra 220/220, що відповідає попередньо зареєстрованому запасу −5 pp
    2. Фіксовану класифікацію наміру й цілі звужено як наступного кандидата на застосування
  5. U8n · передача
    1. 11 постфактум-пар із перерваного запуску: виправлені кандидати пройшли оракул в обох гілках; передача Astra 11/11 · Jev Noul 0/11
    2. Рішення про брак доказів блокували правильну передачу; нинішня конфігурація Noul не має підстав бути єдиним суддею передачі