Trainingload.ai
计划与训练课程

力量训练 DSL

在 Trainingload.ai 的规则输入模式中,用动作、组方案、负重、RPE 或 RIR 和休息时间编写并校验完整力量训练。

力量训练 DSL

力量训练 DSL 是力量训练编辑器的文字形式。需要快速录入教练课表、批量调整训练组,或者检查系统实际保存的结构时,可以使用它。一份 DSL 表示一节静态力量训练;每个动作中包含一个或多个热身组或正式组。

开始前准备

  • 打开一节可编辑的训练,并把运动类型选为力量训练
  • 选择规则输入标签页。手动设置会用表单编辑同一份训练结构。
  • 先确认哪些负重有可靠依据;不知道重量时使用 open,不要猜测公斤数或 1RM 百分比。
  • 动作提示和注意事项写在训练备注中。DSL 只写训练安排,不写说明性段落。

从最小可用示例开始

把下面内容粘贴到规则输入

exercise "高脚杯深蹲" equipment dumbbell {
  work 3x8 open rir 3 rest 90s
}

然后点击校验输入。这段内容表示:

  • 一个名为“高脚杯深蹲”的动作;
  • 使用哑铃;
  • 3 个正式组,每组 8 次;
  • 不指定具体负重;
  • 每组保留 3 次余力;
  • 每组后休息 90 秒。

一节有效的力量训练至少需要一个动作。每个动作必须填写带双引号的非空名称,并且至少有一行 work

Trainingload.ai
规则输入中的力量训练 DSL

一节包含两个动作且已通过校验的力量训练,下方预览显示解析后的训练结构。

Plan
4 week block
Load
steady build
Activity
matched
AI review
ready
网页端 · 计划 → 手动创建训练 → 力量训练 → 规则输入

先看懂整体结构

一节完整训练分为三层:

duration 50m
session rpe 6

exercise "杠铃深蹲" equipment barbell {
  warmup 1x5 weight 40kg rest 90s
  work 3x5 weight 80kg rpe 7 rest 3m
}
  1. durationsession rpe 描述整节训练,均可省略,并且各自只能出现一次。
  2. exercise "…" { 开始一个动作,右大括号 } 结束这个动作。
  3. 动作内部的 warmupwork 分别表示热身组和正式组。

空行不会影响解析。DSL 不支持注释和普通说明文字。

填写整节训练设置

在第一个动作前可以写:

duration 50m
session rpe 6

duration 支持秒、分钟和小时,例如 45s50m1.5h。它表示整节训练的预计时长,不是某一组的时间。

session rpe 的范围是 1–10,表示整节训练的计划主观强度。它与组方案中的 rpe 不同:组方案 rpe 只描述对应几组动作的用力程度。

添加动作

基本写法如下:

exercise "罗马尼亚硬拉" {
  work 3x8 open rir 2 rest 2m
}

动作名称必须放在英文双引号中,且不能为空。名称可以直接写中文。如果名称本身包含双引号,写成 \";需要保留反斜杠时写成 \\

器械可以省略:

exercise "罗马尼亚硬拉" equipment barbell {

器械代码只支持英文字母、数字、连字符和下划线,保存后会统一为小写。建议使用稳定代码,例如 barbell(杠铃)、dumbbell(哑铃)、bodyweight(自重)、cable(绳索)或 machine(固定器械)。

编写一个组方案

为了便于阅读,建议按下面的固定顺序书写:

work 训练方式 负重 强度 rest 休息时间

只有 warmupwork 以及训练方式是必填项。省略负重时系统会按 open 处理,但显式写出 open 更容易确认意图。强度和休息时间可以省略。

部分支持的写法示例
组类型warmupworkwork
训练方式固定次数、次数范围、AMRAP 或计时3x53x8-121x5+3x45s
负重不指定、固定重量、1RM 百分比或自重openweight 80kgweight 75%1rmbodyweight
强度RPE 或 RIRrpe 7rir 2
休息rest 后接时长rest 90srest 3m

一个动作可以包含多个组方案:

exercise "杠铃深蹲" equipment barbell {
  warmup 1x8 weight 20kg rest 60s
  warmup 1x5 weight 40kg rest 90s
  work 3x5 weight 60kg rpe 7 rest 3m
}

热身组可以省略,但每个动作至少需要一个正式组。只有 warmup、没有 work 的动作无法通过校验。

选择次数或计时方式

训练目标写法含义
固定次数3x53 组,每组 5 次
次数范围3x8-123 组,每组 8–12 次
AMRAP1x5+1 组,基准次数为 5,并标记为尽可能多次
计时组3x45s3 组,每组 45 秒
分钟计时2x1.5m2 组,每组 90 秒

组数和次数必须是正整数。次数范围要把较小值写在前面。

选择负重方式

不指定负重

work 3x10 open rir 3 rest 90s

如果运动员需要当天根据状态选重量,或者没有可靠的历史负重数据,使用 open

固定重量

work 3x5 weight 80kg rpe 7 rest 3m
work 3x5 weight 175lb rpe 7 rest 3m

数值与单位之间不能有空格,单位只能写 kglb

1RM 百分比

work 4x4 weight 80%1rm rest 3m

只有该动作具备可靠且仍然有效的 1RM 时才使用。百分比必须大于 0,且不能超过 100。

自重与自重增减

work 3x8 bodyweight rir 2 rest 90s
work 3x6 bodyweight +10kg rpe 8 rest 2m
work 3x8 bodyweight -20kg rir 2 rest 2m

+10kg 表示额外负重;-20kg 表示通过辅助减少等效自重负荷。

选择 RPE 或 RIR

同一个组方案只能使用一种主观强度方式:

work 3x5 weight 80kg rpe 7 rest 3m
work 3x8 open rir 2 rest 2m
  • rpe 支持 1–10。
  • rir 支持 0–10。
  • 同一行不能同时写 rperir

RPE 和 RIR 只是训练提示,不会自动计算负重。写入 rpe 7 后,Trainingload.ai 不会自行生成或调整公斤数。

编写一节完整中文训练

动作名称属于用户内容,可以使用中文;exerciseworkweight 等关键字必须保留英文,因为它们是 DSL 语法,不是尚未翻译的界面文字。

duration 45m
session rpe 6

exercise "杠铃深蹲" equipment barbell {
  warmup 1x8 weight 20kg rest 60s
  warmup 1x5 weight 40kg rest 90s
  work 3x5 weight 60kg rpe 7 rest 3m
}

exercise "俯卧撑" equipment bodyweight {
  work 3x8-12 bodyweight rir 2 rest 90s
}

exercise "平板支撑" equipment bodyweight {
  work 3x45s bodyweight rest 60s
}

这节训练包含三个动作:固定重量与次数、自重次数范围,以及自重计时训练。

校验、对照并保存

  1. 点击校验输入
  2. 如果出现错误,先处理系统报告的第一处行号,不要同时大范围改写。
  3. 对照力量训练预览,确认动作数量和正式组数量。
  4. 切换到手动设置,可以用表单检查解析后的每个字段。
  5. 返回规则输入,确认规范化后的 DSL 含义没有变化。
  6. 点击保存草稿,重新打开该训练并再次核对。

保存时,系统可能把关键字、器械代码和单位统一为小写,也可能补出明确的 open。这些属于格式规范化。动作、组数、训练方式、负重、强度或休息发生变化,才表示训练含义改变。

DSL 不支持哪些内容

力量训练 DSL 是静态训练安排,不能写入:

  • if/else 或其他可执行逻辑;
  • 跨周进阶和减量规则;
  • 嵌套动作块;
  • 用逗号分隔的属性;
  • 可执行的进阶脚本;
  • 备注和教练说明段落。

面向运动员的说明应放在训练备注中。无法支持的外部脚本应保留在原系统,不能擅自转换成含义不同的训练安排。

验证训练结果

  • 运动类型是力量训练,不是耐力运动。
  • 每个动作都有带双引号的非空名称。
  • 每个动作至少包含一个 work 正式组。
  • 次数范围从小到大排列。
  • 每个组方案最多只有一种负重和一种主观强度方式。
  • 预览显示的动作和正式组数量符合预期。
  • 保存后重新打开,训练含义保持不变。

故障排查

报错或现象处理方法
动作名称不能为空在双引号中填写名称,例如 exercise "杠铃深蹲" {
力量训练至少需要一个动作添加一个完整的 exercise 动作块。
每个动作至少需要一个正式组增加一行 work;只有热身组的动作无效。
组方案格式无效使用 3x53x8-121x5+3x45s 这样的计时写法。
最大次数不能小于最小次数3x12-8 改成 3x8-12
RPE 和 RIR 不能同时使用从该组方案中删除一种主观强度目标。
重量格式无效使用 weight 80kgweight 175lbweight 80%1rm,数值与单位之间不要加空格。
不支持的组属性删除说明文字、逗号、未知关键字或动态逻辑。
动作缺少右大括号在该动作最后一个组方案后补一行 }
切换运动类型后编辑器内容被替换耐力训练和力量训练使用不同结构;切换前先复制或保存 DSL。

下一步