稽核情境依固定順序的階段產生。
主機掌握階段順序,各階段的角色代理分工執行。產生的種子池與選定的評分準則,成為 Petri 行為稽核的輸入。
情境撰寫
編排器掌握階段順序,角色代理起草並篩選候選,結果透過檔案契約匯出。
階段順序 · PipelineState
seed_generation/orchestrator.py執行 · 判定: 依序執行各階段agents/ · 起草編排器掌握階段順序與狀態合併;各階段的角色代理負責實際工作。階段內的工作可經由 SubAgentManager 分散執行,子代理不會再遞迴(depth 1)。
維度平均 · 依據
baseline snapshot資料: 基準線依據agents/ · 起草Generator、Critic 與 Evolver 讀取所選基準線的各維度平均、標準誤與依據。首次生成沒有基準線,使用預設提示詞。
latest_pointer.json · priors
handoff pointer資料: 先前的 meta-reviewagents/ · 起草上一次執行的 meta-review 留下下一世代的 priors 與涵蓋不足的維度,供本次生成參考。
agents/ · 起草資料: 候選種子agents/ · 審查
Generator 的候選依序經過 Proximity 去除重複、Critic 審查、Pilot(選用;smoke 執行時略過)與 Ranker 的 Elo 排名。
agents/ · 審查資料: survivors · Eloagents/ · 改進
Evolver 改進排名最高的候選,Meta-reviewer 將本次執行彙整為下一世代的 priors。
Meta-reviewer · 下一世代 priors
agents/ · 改進執行 · 判定: 下一輪迭代 · 從 Critic 開始Critic · 審查agents/ · 審查設定 max_iterations 時,Meta-reviewer 之後,改進後的候選會再次經過 Critic → Pilot → Ranker → Evolver → Meta-reviewer。Supervisor、Generator 與 Proximity 不會重新執行;預設為零輪迭代。
agents/ · 改進資料: 匯出 survivorsrun_dir/
存活候選的本文以檔案複製到 survivors/,Elo 與 pilot 分數寫入 survivors.json,meta-review 與狀態則分開寫入。
meta_review.json · state.json
run_dir/資料: latest 指標latest_pointer.json · priorshandoff pointer單一 latest_pointer.json 記錄本次執行的 seed_pool 與 meta_review 位置。以各次執行的產出為準;指標只是協助下一次執行的盡力而為輔助,寫入失敗時僅記入日誌。並非每次執行都具備這兩個欄位。
稽核執行
auditor 扮演種子(情境指示),target 是 GEODE 鷹架,judge 為對話記錄評分。三個角色是各自獨立的模型席位。
survivors/ · 候選 .md 副本
run_dir/資料: --seed-selectgeode audit · /audit · 工具petri/runner.py稽核接收種子選集(survivors 目錄、內建種子、id 或標籤),交給 Inspect 的 inspect_petri/audit 任務。種子生成本身不會啟動稽核。
內建種子 · *.md
petri/seeds資料: 內建種子geode audit · /audit · 工具petri/runner.py儲存庫內建的種子可直接選用。
geode audit · /audit · 工具
petri/runner.py執行 · 判定: 模型角色 · 三個席位auditor 模型auditor、target 與 judge 模型分別設定。預設為 dry run;只有在確認成本估算後才會實際呼叫。三個角色使用同一供應商時,會附上同供應商偏差標記。
auditor 模型資料: 種子情境對話GEODE 作為 target · AgenticLoop
petri/geode_target.py種子是給 auditor 的情境指示。auditor 主導對話,只有在啟用 target_tools 時才能建立工具與工具結果。
GEODE 作為 target · AgenticLoop
petri/geode_target.py資料: 模型呼叫target 基礎模型整個 GEODE AgenticLoop(工具、hook、記憶)被包裝成單一模型 API,因此受稽核的 target 是 GEODE 鷹架,而非單獨的基礎模型。
GEODE 作為 target · AgenticLoop
petri/geode_target.py資料: 對話記錄judge 模型judge 對每個樣本的完整對話記錄讀取一次,並依維度評分。
judge_dimensions · YAML
petri/judge_dims執行 · 判定: judge_dimensionsjudge 模型所選的 judge 維度 YAML 決定評分維度。這是行為稽核,與任務完成是不同的測量。
judge 模型資料: 維度分數Inspect .eval 日誌
Inspect .eval 日誌與摘要會封存。封存失敗會註記,不會阻擋稽核結果。
測量 → 下一次生成
SIL 以稽核分數作出判定,被保留的測量成為下一次種子生成的基準線依據。這不代表此連結在每一輪實驗中都自動執行。
judge 模型資料: 維度分數Inspect .eval 日誌
Inspect .eval 日誌與摘要會封存。封存失敗會註記,不會阻擋稽核結果。
Inspect .eval 日誌記錄 · 觀測: 測量SIL 測量 · measure.py
SIL 的 measure.py 執行稽核子行程,並依其結果計算 fitness。
SIL 測量 · measure.py資料: 基準線更新維度平均 · 依據
baseline snapshotSIL 的 ledger 將被保留的測量寫為基準線。選定基準線(自動或明確指定)時,種子生成會讀取該依據。
維度平均 · 依據
baseline snapshot資料: 基準線依據agents/ · 起草Generator、Critic 與 Evolver 讀取所選基準線的各維度平均、標準誤與依據。首次生成沒有基準線,使用預設提示詞。
所有連線以相同粗細顯示。選擇一個流程,即只突顯其路徑,並標出步驟編號。
- 實線 · 請求、候選與結果的流向
- 虛線 · 執行、判定、授權、設定
- 長點劃線 · 記錄與觀測,與判定分開
- 粗黑線 · 所選流程;數字表示順序
- 方框 · 程式碼或記錄的邊界,標頭為其路徑
- 內層小框 · 該邊界內的元件
- 虛線框 · 該邊界之外
- 編排器 · 稽核進入點
- 稽核對象 · 評分維度
- 產出 · 狀態檔案
- 角色代理 · 內建種子
編排器固定首輪順序與重複順序。設定、已註冊的角色與續行點可能略過部分階段,也並非每一輪實驗都執行了所有階段。狀態檔案的位置因環境而異,因此不列出路徑。
- 三個角色
- 種子是由人撰寫或自動生成的情境指示;auditor 是扮演它的模型,target 是受稽核的 GEODE 鷹架,judge 則是為對話記錄評分的模型。分數與日誌是 judge 的產出。
- 測量的內容
- Petri 稽核評的是行為維度,不是任務完成率,也不是產品品質保證。