阅读环境卡¶
环境卡描述整个 ChemWorld Gym 环境:如何 reset、一次 step 返回什么、Agent 可以调用哪些辅助接口, 以及当前模型成熟度意味着什么。任务卡讲“这道题”,环境卡讲“这间实验室”。
创建环境¶
ChemWorld 是统一的 Gymnasium 环境入口。不同任务通过 task_id 选择,但它们共享同
一个物理化学世界律和运行时服务。
env = gym.make("ChemWorld", task_id="reaction-to-purification", seed=1)
环境卡用于说明任务能力、输入输出、成熟度和审计入口。它是 agent 作者理解 benchmark 合同的第一层机器可读/人类可读文档。
Reset 后先看哪些信息¶
reset() 返回的 info 应包含:
task_idworld_law_idtask_maturity- 可见 scenario 信息
- budget 和 step limit
- 允许操作列表
- scoring metadata
隐藏 scenario 不应在公开 info 中泄露。
一次 Step 返回什么¶
step(action) 返回:
obs, reward, terminated, truncated, info
其中 info["constraint_flags"] 是诊断 agent 行为的关键字段。无效动作应产生可解释
flag,而不是让状态静默损坏。
Agent 推荐入口¶
ChemWorldEnv 现在直接暴露 agent-facing 方法:
task_prompt():返回任务说明、目标、预算、可用工具、成功指标和隐藏信息政策。available_actions():返回当前 state 下合法操作及其 schema/preconditions。action_schema(operation):查看单个 operation 的 payload、单位和推荐范围。validate_action(action):只校验不执行,适合 LLM/tool planner 预检查。observation_view("rl" | "tool_json" | "lab_report"):面向 RL、工具 agent 和学生的三种公开观测视图。campaign_state():返回 campaign/experiment 进度、remaining budget、best score 和 final assay count。
这些接口是 public observation view,不允许泄露 hidden state、hidden species amounts、rate constants 或 private eval 参数。
渲染与界面¶
当前 rendering 合同是结构化文本、实验状态、谱图 packet 和 campaign 进度数据。可视化层 应从这些公开字段派生,不能读取 hidden ledger。
自查与诊断¶
环境自洽性检查应覆盖注册任务、reset/step、replay、spectra、constitution 和 smoke trajectory。检查结果应进入 release checklist。
环境自一致性证据¶
发布候选应说明注册任务、reset/step、replay、spectra、constitution 与 smoke trajectory 的检查状态, 并把失败项保留在发布说明中。使用者可通过验证安装与结果检查自己的轨迹和提交包。
如何理解成熟度¶
环境卡必须明确哪些模块是 proxy/lite/reference-validated。没有成熟度标注的 task 不应 进入正式 benchmark claim。