ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

Qwen3.8-27B-multi-turn-agent-sft实战教程:从零训练你的第一个终端Agent模型

Qwen3.8-27B-multi-turn-agent-sft实战教程:从零训练你的第一个终端Agent模型

【免费下载链接】Qwen3.8-27B-multi-turn-agent-sft

项目地址:https://ai.gitcode.com/hf_mirrors/ukisai/Qwen3.8-27B-multi-turn-agent-sft
点击查看免费下载

一、这个数据集是做什么的?🎯

Qwen3.8-27B-multi-turn-agent-sft是欧洲研究团队 UkisAI 开源的一份Agent 监督微调(SFT)数据集,专门用于训练大模型完成终端操作、编码与软件工程任务。它基于 OpenThoughts-Agent-v1-SFT 数据集的思路构建,全部轨迹由Qwen3.8-27B(FP16)在 Terminus-2 agentic harness 中真实运行生成,共包含约15,200 条多轮 Agent 轨迹,覆盖终端、编码和软件工程三大类任务,其中包括nl2bash和InferredBugs等经典基准任务。

简单说:你用它做 SFT,就能让模型学会"像人一样操作终端、调用工具、修 bug"。项目信息详见 README.md,核心数据文件为 qwen38-agent-sft-combined-100pct.parquet。

二、数据集核心特性一览

维度说明
轨迹数量约 15,200 条 Agent traces
生成模型Qwen3.8-27B(FP16)
运行框架Terminus-2 agentic harness
任务类型终端操作、编码、软件工程(nl2bash、InferredBugs 等)
文件格式Parquet(100pct表示全量 100% 数据)
许可证Apache-2.0,可自由使用与改进

💡 这份数据的设计定位是训练的第一阶段(SFT 冷启动):先用强教师 Agent 的轨迹让模型掌握"如何与环境交互",之后再进入强化学习阶段。这正是 OpenThoughts-Agent 项目验证过的两阶段训练路线。

三、开始前的准备工作 ✅

1. 硬件建议

  • 显存:完整微调 27B 级别模型需要多卡环境;新手推荐使用LoRA / QLoRA 微调,单卡 24GB(如 RTX 3090/4090)即可起步。
  • 存储:预留至少 20GB 磁盘空间存放模型权重与数据。

2. 获取数据集

git clone https://gitcode.com/hf_mirrors/ukisai/Qwen3.8-27B-multi-turn-agent-sft.git

克隆后你会得到两个文件:

  • README.md:数据集说明与用途
  • qwen38-agent-sft-combined-100pct.parquet:全量轨迹数据(约 145MB,通过 Git LFS 存储)

3. 环境依赖

pip install pandas pyarrow

四、实战步骤:训练你的第一个终端 Agent 模型 🚀

第 1 步:检查数据结构

先用几行代码确认数据能正常读取(注意该文件为 Parquet 格式,需用pandas或pyarrow加载,不能当普通文本打开):

import pandas as pd df = pd.read_parquet("qwen38-agent-sft-combined-100pct.parquet") print(df.shape) print(df.columns.tolist()) print(df.iloc[0]) # 查看第一条轨迹

每条轨迹记录了 Agent 在终端中多轮交互的完整过程:任务指令 → 模型思考与命令生成 → 终端输出 → 下一步动作……这种"指令-动作-反馈"的结构就是 SFT 训练的核心素材。

第 2 步:整理成微调格式

把轨迹转换为你的训练框架需要的格式(通常是instruction / input / output或messages多轮对话结构)。以 messages 格式为例,思路如下:

# 伪代码:把一条轨迹拆成多轮 messages for turn in trace: if turn.role == "assistant": messages.append({"role": "assistant", "content": turn.content}) # 只训练 assistant 部分 else: messages.append({"role": "user", "content": turn.content})

⚠️ 关键原则:loss 只计算 assistant(模型输出)的 token,用户消息和终端输出部分应 mask 掉,否则会教模型"背诵环境"。

第 3 步:配置训练参数(LoRA 快速起步)

以 LLaMA-Factory、ms-swift 等主流框架为例,推荐的新手超参:

参数推荐值说明
微调方式LoRA / QLoRA省显存,新手首选
LoRA rank8 ~ 32太大易过拟合小数据
学习率1e-4 ~ 5e-5(LoRA)全量微调则用 1e-5 量级
训练轮数2 ~ 3 epochs多轮轨迹长,1 epoch 即可看到效果
上下文长度8192 ~ 32768终端轨迹较长,务必开够
精度bf16 / fp16数据即由 FP16 模型生成,精度对齐

💡上下文长度是最容易被忽视的坑:Agent 轨迹包含多轮终端输出,截断过短会让模型学不到完整的任务闭环。

第 4 步:验证训练效果

训练完成后,用终端任务做人工评测:

  1. 让模型在干净的终端环境中执行简单指令,如"列出当前目录大于 1MB 的文件并排序";
  2. 观察它是否输出可直接执行的 bash 命令,而非解释性文字;
  3. 检查多轮场景:当命令报错时,模型能否根据报错信息自我修正。

五、常见问题解答 ❓

Q1:为什么用 Qwen3.8-27B 生成的轨迹来训练?强模型生成的轨迹质量更高,属于"教师-学生"蒸馏式冷启动。数据由 FP16 精度模型生成,与主流训练精度匹配,无量化噪声。

Q2:15,200 条数据够训练吗?对于 SFT 冷启动足够——阶段目标是学会"交互格式与工具使用习惯",而非刷高基准分数。后续可叠加更多数据或进入 RL 阶段。

Q3:可以直接拿来做强化学习(RL)吗?可以。README.md 中明确说明:该数据集可作为进一步后训练或强化学习的起点,与 OpenThoughts-Agent 的两阶段路线一致。

Q4:Parquet 文件为什么打不开?qwen38-agent-sft-combined-100pct.parquet 通过 Git LFS 存储,clone 时必须安装 Git LFS 并执行git lfs pull,否则只会下载到 134 字节的指针文件。

六、总结 📌

  • Qwen3.8-27B-multi-turn-agent-sft提供约 15,200 条真实终端 Agent 轨迹,Apache-2.0 协议免费使用;
  • 新手路线:LoRA 微调 + mask 非模型 token + 足够的上下文长度,三步即可让模型具备终端操作能力;
  • 进阶路线:SFT 冷启动之后,可接入强化学习进一步提升任务成功率;
  • 遇到问题或有好点子,欢迎到项目 Issue 区反馈交流。

动手试试吧,你的第一个会敲命令的 Agent 模型离你只隔一次训练的距离!🔥

【免费下载链接】Qwen3.8-27B-multi-turn-agent-sft

项目地址:https://ai.gitcode.com/hf_mirrors/ukisai/Qwen3.8-27B-multi-turn-agent-sft
点击查看免费下载
上一篇:终极网盘下载加速指南:9大平台直链下载助手完整教程
下一篇:SQLyog社区版:免费开源的MySQL数据库管理终极指南

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进