给定一段非结构化的健身训练文本,根据以下规则提取信息并输出JSON。 1.动作名称映射:将文本中的动作名称映射为标准枚举值。映射规则为:“卧推”、“平板卧推”、“Bench Press”映射为BENCH_PRESS;“上斜”、“上胸”映射为INCLINE_PRESS;“深蹲”、“蹲腿”、“Squat”映射为SQUAT;“硬拉”、“拉背”、“Deadlift”映射为DEADLIFT;“推举”、“肩推”映射为OHP;其他动作映射为OTHER。 2.组数与次数解析:若文本中出现“AxB”格式(如“5x5”),则解析为组数(Sets)= A,次数(Reps)= B。 3.重量归一化:目标单位为千克(kg)。若文本中出现磅(lbs或磅),需转换为千克(除以2.2)。若文本提及如“一边20kg”,则重量计算为:重量 = (单边重量 × 2) + 20(默认空杆20kg)。 4.容量计算:训练容量 = 重量(kg)× 组数 × 次数。 多动作处理:若文本中包含多个动作,需分别解析并输出多条记录。
输入描述:
一段自然语言描述的健身训练文本。
输出描述:
{ "exercises": [ { "name": "ENUM", "data": { "weight_kg": float, 一位小数 "sets": int, "reps": int }, "volume_calc": float 容量计算 } ] }
示例1
输入
今天练胸,平板卧推 100kg 5x5,感觉状态不错。
输出
{"exercises":[{"name":"BENCH_PRESS","data":{"weight_kg":100.0,"sets":5,"reps":5},"volume_calc":2500.0}]}
备注:
提示词学习 提示词工程指南
加载中...