该 Scenario 面向反应物和目标产物均已确定、但实验条件未知的反应执行准备。Harness 获得固定 reaction SMILES,在有限 Top-K 预算内推荐离散的催化剂、溶剂和试剂组合,并说明模型覆盖范围与不确定性。
与让模型自由生成一段条件文本的基础任务相比,本场景冻结五个类别槽位、联合组合预算和 train-derived vocabulary。难点是生成内部一致的 condition tuple,并在 test-only 类别或训练域外反应上明确 OOV/abstention;不能把五个独立 Top-K 列表任意做笛卡尔积,也不能用不可评分的温度叙述掩盖类别恢复失败。
默认模型 Parrot 在 USPTO-Condition 上预测类别型条件槽位。该公开数据不可靠地支持连续温度评测,因此本场景 v1 只评价 catalyst1, solvent1, solvent2, reagent1, reagent2;温度、时间、浓度、加料顺序和气氛不在本场景 Ground Truth 中。若模型或报告生成温度,只能作为未评分假设,不能混入条件 exact-match。
专利条件并非唯一最优条件:一条记录只证明某组条件被报告过,未命中不等于建议不可行。因此主指标称“记录条件恢复”,并辅以槽位命中、组合 Top-K、多样性和覆盖率;不把模型推荐称为实验验证方案。
xiaoruiwang/ChemEnzyRetroPlanner_metadata 也明确声明 MIT,并把 USPTO_condition.mar 描述为 Parrot 条件预测器。本场景只准入固定 revision b9ef6049d341bfc62d835f09ad6ce33b6f86b047 及经过大小/SHA256 校验的 MAR 和 metadata。download_data.py 提供处理后数据归档入口,适合类别型条件 benchmark。Parrot 原官方下载器中的 Google Drive 归档仍没有与代码许可证等价的独立机器可读授权声明,因此保持阻塞;Reaxys 数据也不准入。已准入的第一作者 HF 固定快照必须继续按文件名、revision、大小与 SHA256 校验,不能静默替换。模型 artifact 可用于工程部署 canary;若其训练集与本场景 test split 的重叠无法审计,则不得据此报告正式 hidden-test 科学指标。
UNK,阈值只能由 train split 确定;test-only 类别必须报告 out-of-vocabulary。可评分的条件组合推荐场景 基础条件生成
固定 reactants >> product 输入一个反应
│ │
▼ ▼
角色、类别词表和 split 冻结 模型/LLM 给条件
│ │
▼ ▼
在 public train/validation 选择方法 返回一段文本
│
▼
对 hidden test 生成固定 Top-K 组合
│
▼
槽位合法性、OOV、重复与多样性诊断
│
▼
私有 evaluator 做多参考条件恢复评分
给定一组反应物和目标产物均已确定的匿名有机反应,以及由公开训练集冻结的条件类别词表,请在不能访问测试反应记录条件的情况下,为每条反应推荐最多 10 组催化剂、溶剂和试剂类别组合,并明确模型分歧、OOV 风险和未被该数据集评价的实验变量。
目标: 固定反应身份与五个可评分条件槽位。
输入: train/validation labels、test reactions、label vocabulary。
输出: canonical reactions、词表统计和字段质量报告。
技术: 检查反应两侧可解析、目标产物存在、槽位名称/空值一致。温度等非 v1 字段不进入标签或综合分数。
目标: 阻止重复反应和 checkpoint 训练泄漏。
输入: split manifest、canonical signatures、model manifest。
输出: overlap report 和模型准入结论。
技术: 按 reaction group 检查 exact overlap;记录 checkpoint 训练语料。无法审计的预训练条件模型不得提交正式 hidden-test 分数。
目标: 在不查看 test labels 时冻结模型、解码和 Top-K 规则。
输入: public train/validation。
输出: validation metrics、选定 checkpoint、温度缩放或解码参数。
技术: 评价 full-combination Top-K、各槽位 recall、coverage 和 rare-class 性能。超参数只在 validation 选择,所有尝试写入日志。
目标: 为 hidden test 输出联合条件方案,而非互不一致的独立槽位列表。
输入: fixed reactions、selected model、beam budget。
输出: 每 reaction 的 Top-K condition tuples 和 raw scores。
技术: Parrot 以自回归/组合方式产生槽位;保持空槽语义,输出类别必须属于冻结 vocabulary 或显式 UNK。不同组合去重但保留原 rank。
目标: 标出模型训练域外、低置信度和组合塌缩。
输入: reaction embeddings/类别频次、Top-K outputs。
输出: OOV、nearest-domain distance、score margin、unique catalysts/solvents/reagents。
技术: applicability 规则只由 train/validation 构建。不得因为 test 参考条件罕见而删除样本。
目标: 在查看 test 条件前冻结所有推荐。
输入: recommendations 与运行日志。
输出: condition_recommendations.jsonl、intermediate_results.json、诊断。
技术: evaluator 对多参考条件 tuple 计算 Top-K exact recovery,并分别评价各槽位。OOV test labels 既报告 closed-vocabulary 性能,也单独报告可评分覆盖。
input/
├── train_reactions_conditions.csv
├── validation_reactions_conditions.csv
├── test_reactions.csv
├── condition_vocabulary.json
├── split_manifest.json
├── scenario_config.json
└── environment_manifest.json
公开 test 只含 reaction_id,reactants,product。训练/验证标签只含五个 v1 槽位,不伪造温度。
private_evaluator/
├── test_condition_references.jsonl
├── test_oov_audit.csv
├── source_provenance.json
├── deduplication_audit.json
└── evaluation_config.json
intermediate_results.json 最低要求{
"scenario_id": "reaction_condition_uspto_categorical_v1",
"dataset_snapshot": "<snapshot>",
"input_hashes": {},
"label_slots": ["catalyst1", "solvent1", "solvent2", "reagent1", "reagent2"],
"model": {"id": "<model>", "checkpoint_sha256": "<sha256>"},
"validation": {"methods": [], "selected_method": "<id>"},
"test_recommendations": [],
"warnings": []
}
每条推荐保存完整 tuple、各槽位、rank、raw score、OOV/duplicate/applicability 状态和选择该模型的 public validation 依据。
reference_repository/
├── README.md
├── environment.yml
├── pipelines/
│ └── 05_condition_recommendation.py
└── test_cases/
├── install.py
├── evaluate.py
├── database_sources.json
└── 05_condition_recommendation.json
仓库中的实际参考实现位于 scenarios/pipelines/ 与
scenarios/test_cases/。公开 pipeline 只能看到冻结 vocabulary,不能看到参考
condition tuple;evaluator 在输出冻结后才读取参考 tuple。
类别型场景可离线自动化:schema 校验 ✓ → 去重/泄漏审计 ✓ → public validation ✓ → Top-K 组合生成 ✓ → OOV/域诊断 ✓ → private evaluation ✓。发布阻塞是数据与 checkpoint 的再分发许可和 checkpoint split provenance;连续温度不属于 v1 自动化范围。
仓库已提供 retrosynthesis_planning.condition_benchmark:冻结五个条件槽位及各自闭集词表,只接受模型实际发出的完整条件元组,禁止边际标签笛卡尔积;私有 evaluator 计算多参考 exact-tuple Top-K、slot recall、OOV、重复和预算利用率。
检查反应两侧固定、标签 schema、分组去重、public validation、联合 tuple 输出、OOV/applicability 诊断、test label 隔离和未评分变量声明。
检查数据/词表/checkpoint 哈希、split、训练/解码参数、随机 seed、完整 Top-K 和一键重跑入口。