# 工具调用/数学计算场景
此场景广泛应用于数据分析、财务计算、以及Agent调用外部工具前的参数提取与组装阶段。模型需要根据用户的复杂指令，通过严密的逻辑推导，最终得出一个精确的数值或结构化参数。
典型应用示例：物流运费计算Agent
- 用户输入：发一批设备，总重量8.5吨，运输距离400公里。基础运费是每吨每公里1.2元，另外还需要加上300元的固定装卸费。请问总费用是多少？
- 期望输出：4380
- 下游任务：将该数值作为参数，传递给计费确认组件或生成订单账单。
该类场景在进行数学计算或者参数提取时，往往隐藏着多步逻辑嵌套。大模型本质是概率预测模型，直接让其一次性算术结果，极易出现低级运算错误。必须经过多个步骤拆解计算才能得出正确结果。并且对于存在小数点误差的计算场景，标准答案和模型实际计算结果存在误差，直接按照字符串比对，会导致模型在训练过程中明明给出了数学上正确的答案，却持续遭受负分惩罚，产生错误的奖励信号。
#### 数据集构造示例
构造数据集时，不需要刻意设计复杂的拒识案例或意图模糊的干扰项，只需提供指令清晰的正向用例即可。
表1数据集构造示例 
| 用户输入                                                  | 期望输出     |
|:---|:---|
| 发一批设备，总重量8.5吨，运输距离400公里。基础运费1.2元/吨每公里，固定装卸费300元。总费用？    | 4380      |
| 圆柱底面半径3米，高400厘米，体积是多少（π取3.14）                         | 113.04 |
| 货物重15吨，距离200公里。5吨以下单价 2元，5-10吨单价1.8元，10吨以上单价1.5 元。总运费？ | 4500   |
| 仓库A到B距离150公里，货物重4吨，运费单价2元/吨每公里，无附加费。总运费？              | 1200    |
   
#### 奖罚机制配置示例
采用"数学准确性奖励 + 思维链格式奖励"组合，确保计算准确性和格式规范性。
表2奖罚机制配置示例 
| 奖励规则             | 权重  | 正则表达式                                                                      | 说明                                                                                                                                                      |
|:---|:---|:---|:---|
| 规则奖励 \> 数学准确性奖励 | 0.7 | (\\d+\\.?\\d\*)\\D\*$ 或不填写，对整个输出结果进行校验 | 使用通用正则(\\d+\\.?\\d\*)提取文本中的数值，\\D\*$表示只抓取全文的最后一个数值。                                                                                                 |
| 思维链格式奖励          | 0.3 | \^前置引导词\[\\s\\S\]+?结论引导词\\s\*\[\\s\\S\]+$                                  | 思维链格式奖励会依据正则表达式判断模型的输出格式是否合格。用于强制模型必须按照提示词（Prompt）中约定的格式先推导、后回答。输出【分析步骤】，最后输出【最终结果】，则可以使用类似\^前置引导词\[\\s\\S\]+?结论引导词\\s\*\[\\s\\S\]+$的正则表达式对模型结果进行筛选。 |
   
