# openduckx_train **Repository Path**: ncnynl/openduckx_train ## Basic Information - **Project Name**: openduckx_train - **Description**: 记录每一轮的训练 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-10-28 - **Last Updated**: 2026-11-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # openduckx 训练记录 大鸭 v3(openduckx)每一次训练的参数与结果评估。**每轮两个文件。** ## 目录 ``` runs//<标准名>_params.md 参数快照 runs//<标准名>_eval.md 结果评估 RUN_INDEX.md 全部轮次总表 ``` ## 命名规范 `-<当日序号>` —— 每天从 01 开始递增。 ``` runs/2026-10-28/20261028-01_params.md runs/2026-10-28/20261028-01_eval.md runs/2026-10-28/20261028-02_params.md ... ``` 序号按当天开跑时间排序,一经分配不再变动(重跑记录脚本也不会变号)。 **配方差异不写在文件名里**,看 `_params.md` 的「配方 ID」和 「环境变量开关」节:改了什么参数、seed 多少、env 数多少,那里都有。 ## 两个文件各是什么 **_params.md** — 训练前定下的东西 - 全部 `OPENDUCKX_AB_*` 开关原值 - 代码 commit hash + 分支 + 是否有未提交改动 - 质量常量、奖励权重与阈值、指令范围、action_scale - 产物清单 **_eval.md** — 训练后得到的东西 - 从 tensorboard events 提取(不是解析 stdout 日志) - 每个指标:末值 / 末20轮均值 / 峰值 / 首值 - 判读注意事项 ## 口径铁律 1. **`params/env.yaml` 是训练当时的第一手证据**。当前代码构建的 cfg 反映的是今天的代码, 两者冲突时以 env.yaml 为准。 2. **训练曲线不等于步态质量**。奖励高可能是高频碎步刷指标。 步态必须用 `gait_quality.py` 量化(外撇/触地频率/双脚腾空/拖脚)+ 看重播视频。 3. **单一 seed 不可当结论**。≥2 seed 同向才算方向。 ## 生成方式 由 `openduckx_rl/scripts/record_run_params.py`(参数) 与 `scripts/extract_train_eval.py`(评估)自动产出,不手写。