ML工程师总结构建Agent训练数据集的最佳实践:保留完整决策链、工具调用、纠错过程,使用版本化schema,避免将多轮对话扁平化丢失结构信息。
一个 Agent 轨迹数据集的价值,不止在于最终答案
一个 Agent 轨迹数据集应该保留产生该结果的行为过程,包括最终响应之前的各个步骤。
这意味着要保留:任务、观测结果、工具调用、工具返回结果、决策、修正,以及权威性结论。没有来源追溯、隐私管控和固定的评估边界,大规模轨迹数据集合仍然可能成为一个糟糕的训练数据集。
一种做法是使用完整 episode、单个决策点,或一组修正对。我会保留原始任务以及足够的状态信息来解释每一步行为。
运行时永远不会收到的隐藏评估者反馈,不应泄露到训练输入中。
观测结果、允许的推理过程、工具名称、参数、返回结果、错误信息以及最终输出,都应当采用版本化的 schema。
原始来源引用需要保持可用,以便追溯数据转换过程。将所有事件平铺成一条毫无区分的聊天记录,会丢掉有用的结构信息。
我去除重复数据、泄露的测试用例、私有值、格式错误的工具调用,以及缺少权威结论的轨迹。
成功的示例、修正数据和高难负例应当保持可区分。每一个接受或拒绝的决定都应保留其理由。
随机行划分可能将几乎相同的 episode 散列到训练集和测试集中。我会先按仓库、任务模板、会话或来源制品进行分组,再做划分,并在调优配方之前冻结保留集。
轨迹数据可以支持监督微调、偏好对、知识蒸馏、路由策略,或评估器。训练目标应当跟随观察到的失败模式来设定。
如果模型本身已经存在过度修改的问题,那么增加编辑力度的目标就是错误的应对方向。
重要的衡量指标包括:专家是否选择了正确的工具、是否产生了有效的论证、是否对返回结果做出了正确的响应、是否在恰当的节点停止,以及是否完成了任务。
不受支持的操作和广度回退需要有独立的检验关卡。
PostTrainLLM 包含轨迹转换、修正转数据、合成、过滤、去重、工具调用评估,以及工厂运行证据。完整工作流见 https://posttrainllm.com/agent-trajectory-dataset。