AI 快讯 编译自 aws_ml_blog #模型微调#工具调用#Amazon SageMaker

用 SFT + DPO 在 Amazon SageMaker AI 上提升 Agent 工具调用准确率

本文介绍如何结合监督微调(SFT)和直接偏好优化(DPO)来提升小语言模型的工具调用准确率,使用 Amazon SageMaker AI 训练作业简化基础设施管理。包含数据集准备、训练流程、评估方法及结果对比,适合希望将 Agent 应用从试点推向生产的团队。

编译发布 2026/06/03 原文发布 2026/06/03

一句话看懂

AWS 发布教程,演示如何用 SFT + DPO 在 SageMaker AI 上微调 Qwen3 1.7B,提升 Agent 工具调用准确率,并开源完整代码。

详细发生了什么

AI Agent 的可靠性很大程度上取决于工具调用的准确性——选错工具、参数格式错误或打断工作流都会导致任务失败率上升。AWS 这篇博客提供了一个端到端的解决方案:使用监督微调(SFT)和直接偏好优化(DPO)两种方法,在 Amazon SageMaker AI 上微调 Qwen3 1.7B 小语言模型,以提升其工具调用能力。

SFT 通过高质量标注数据教会模型识别工具特定的语言和约束;DPO 则通过“喜欢这个、不喜欢那个”的偏好数据,在不使用奖励模型的情况下对齐模型输出。两者结合形成鲁棒的微调框架。

教程使用 NVIDIA 的 When2Call 数据集,包含 15,000 条 SFT 样本和 9,000 条 DPO 偏好样本,以及 3,652 条 MCQ 测试集和 300 条 LLM-as-a-judge 评估集。训练在单个 ml.p4d.24xlarge 实例上完成,所有代码和脚本已开源在 GitHub。

中文圈视角

对国内开发者来说,这篇教程有几点值得关注:

  1. 国产模型也能用类似方法:虽然示例用的是 Qwen3 1.7B(阿里通义千问系列),但方法完全通用。国内开发者可以用类似流程微调 DeepSeek、Baichuan 等模型,提升它们在工具调用场景的表现。

  2. 基础设施对比:AWS SageMaker AI 是托管服务,国内对应产品如阿里云 PAI、华为云 ModelArts 也提供类似功能。如果你已经在用国内云,可以寻找对应教程迁移。

  3. 数据集可用性:NVIDIA When2Call 数据集是英文的,但工具调用场景本身对语言依赖较小。中文场景下,可以基于此数据集翻译或自行构建中文工具调用数据集。

  4. 合规提醒:使用 SageMaker AI 训练涉及数据出境问题。如果数据敏感,建议使用国内云服务或本地部署方案。

几条值得记住的细节

  • 使用 Qwen3 1.7B 模型,训练在单张 ml.p4d.24xlarge(含 8 张 A100 GPU)上完成
  • SFT 数据集 15,000 条,DPO 偏好数据集 9,000 条,测试集 3,652 条
  • DPO 不需要奖励模型,直接使用“chosen/rejected”成对数据优化
  • 训练指标通过 MLflow 记录,方便对比不同变体
  • 完整代码在 GitHub 仓库 amazon-sagemaker-generativeaifunction-calling-sft-dpo 目录

一句话总结

如果你想提升 Agent 的工具调用准确率,这篇教程提供了可复现的 SFT + DPO 方案,且代码开源,值得一试。