five

oni-devops-traces

收藏
github2026-05-04 更新2026-05-13 收录
下载链接:
https://github.com/makarsuperstar/oni-devops-traces
下载链接
链接失效反馈
官方服务:
资源简介:
开放的多轮DevOps代理跟踪数据集,以JSONL格式提供,采用思考→代码→观察格式。该数据集通过本地31B教师LLM从现有指令数据集(如Magicoder、CommitPack)中蒸馏得到,包含手工艺的少量示例。数据分为多个子集,涵盖Linux CLI、CI/CD、设计模式、Django、Docker、ESLint、Express.js、前端全栈、JavaScript、Kubernetes、微服务、PostgreSQL、SOLID原则、SSH和TypeScript等领域,总计约3042个接受的跟踪。适用于在24GB GPU上进行监督微调(SFT),并可在16GB GPU上部署。

An open multi-turn DevOps agent trace dataset provided in JSONL format, following the thought→code→observation structure. This dataset is distilled from existing instruction datasets such as Magicoder and CommitPack using a local 31B-parameter teacher large language model, and includes handcrafted few-shot examples. The dataset is split into multiple subsets covering domains including Linux CLI, CI/CD, design patterns, Django, Docker, ESLint, Express.js, full-stack frontend development, JavaScript, Kubernetes, microservices, PostgreSQL, SOLID principles, SSH, and TypeScript, with a total of approximately 3042 accepted traces. It is suitable for supervised fine-tuning (SFT) on 24GB GPUs and can be deployed on 16GB GPUs.
创建时间:
2026-04-28
原始信息汇总

数据集概述:oni-devops-traces

数据集简介

oni-devops-traces 是一个开源的多轮 DevOps Agent 追踪数据集,采用 Thought → Code → Observation 格式,通过本地 31B 教师大语言模型从现有指令数据集中提取蒸馏而成。支持在 24GB 显存上训练,在任意 16GB GPU(如 RTX 4080、4070 Ti、5060 Ti、Apple Silicon)上部署。

数据规模与构成

  • 总子集数量:15 个
  • 原始条目数:4,110 条
  • 接受条目数:3,042 条(接受率约 74%)
  • 教师模型:gemma4:31b
  • 最低格式合规分数:84.8/100

子集详情

子集名称 来源 原始→接受条目数 领域
bash_pipes Magicoder-Evol 过滤 grep/awk/sed/find/xargs/jq 300 → 243 Linux CLI 管道链
ci_cd_specific Magicoder-Evol 过滤 GitLab CI / GitHub Actions / Jenkins 250 → 215 CI/CD 流水线
design_patterns Magicoder-Evol 过滤 GoF 设计模式 250 → 182 架构设计推理
django Magicoder-Evol 过滤 Django 生态 300 → 199 Django 脚手架
docker_advanced Magicoder-Evol 过滤 Docker 高级用法 300 → 248 多阶段构建、健康检查、网络、Compose 模式
eslint Magicoder-Evol 过滤 ESLint 10 → 8 ESLint 配置与规则
express Magicoder-Evol 过滤 Express.js 250 → 199 Node.js 后端路由与中间件
frontend_fullstack Magicoder-Evol 过滤 JS/TS/Node/HTML/CSS 400 → 310 前端全栈工具链
js_only Magicoder-Evol 过滤纯 JavaScript 400 → 351 纯 JavaScript
kubernetes Magicoder-Evol 过滤 Kubernetes 200 → 79 K8s 清单与 kubectl 工作流
microservices Magicoder-Evol 过滤分布式/消息队列 250 → 133 消息队列、服务发现
postgres_advanced Magicoder-Evol 过滤 PostgreSQL 高级特性 250 → 150 窗口函数、索引、EXPLAIN、vacuum
solid Magicoder-Evol 过滤 SOLID/重构 250 → 192 代码改进而非编写
ssh Magicoder-Evol 过滤 SSH 工作流 300 → 225 SSH 密钥、scp/rsync、端口转发
ts_only Magicoder-Evol 过滤 TypeScript 400 → 308 接口/类型/泛型/tsconfig

数据格式

  • 格式类型:JSONL(每行一个 JSON 对象)
  • 每条数据结构{"messages": [...], "meta": {...}}
  • 对话轮次:最少 4 轮(system + user + assistant + user),通常 6-15 轮
  • 助手回复规范:每个助手回合 = Thought + <code>tool_call(...)</code>
  • 用户回复规范:助手回合后的用户回合 = Observation: ...
  • 结尾规范:最后一个助手回合 = <code>final_answer("...")</code>

示例片段

json {"messages": [ {"role": "system", "content": "You are a DevOps agent..."}, {"role": "user", "content": "Set up nginx reverse proxy..."}, {"role": "assistant", "content": "Thought: First write the config. <code>write_file(...)</code>"}, {"role": "user", "content": "Observation: wrote 245 chars to /etc/nginx/sites-available/app"}, {"role": "assistant", "content": "Thought: Now test it. <code>bash(command=nginx -t)</code>"}, {"role": "user", "content": "Observation: $ nginx -t [exit 0] syntax is ok"}, {"role": "assistant", "content": "<code>final_answer(nginx config OK, reloaded)</code>"} ]}

构建方法

教师模型选择

经过 20 次测试集评估,gemma4:31b 胜出,平均分 92.0/100,零灾难性失败。

蒸馏参数

  • 量化方式:Q4(默认)
  • 上下文窗口:16,384
  • 最大预测长度:4,000
  • 温度:0.7
  • 重复惩罚:1.15
  • 最低格式合规分数:84.8

复合评分指标(8 项)

指标 权重 检查内容
json_parses 1.0 有效 JSON 格式
has_messages 1.0 ≥4 条消息
system_present 0.5 包含 system 角色
assistant_has_thought_and_code 1.0 每个助手回合含 Thought + <code>
tool_call_present 0.8 至少调用 5 种工具之一
final_answer_present 1.0 最后调用 final_answer
verification_before_final 0.7 最终答案前有验证步骤
step_count_in_range 0.3 3-15 个助手回合

许可证

  • 代码(scripts/):Apache 2.0
  • data/own_anchors/:Apache 2.0
  • data/distilled_*/:MIT(继承自 Magicoder 家族)
  • 教师模型贡献:Apache 2.0(gemma4 输出免费)

使用方式

python from datasets import load_dataset

ds = load_dataset("path/to/this/repo", data_dir="data/distilled_bash_pipes")

Each item: {"messages": [...], "meta": {...}}

局限性

  • 来自 Magicoder-OSS-Instruct-75K 的完整源桶未发布(gemma4:31b 在最低分 84.8 下拒绝了所有 200 个采样项目,噪音过高)
搜集汇总
数据集介绍
main_image_url
构建方式
该数据集通过蒸馏流水线构建,以现有单轮指令数据集(如Magicoder-Evol-Instruct-110K)为原始材料,利用本地部署的gemma4:31b大语言模型作为教师模型,结合5条锚定示例(anchor few-shot examples)将每条指令重写为包含“思考→代码执行→观察结果”的完整多轮智能体对话轨迹。蒸馏后使用复合格式合规性评分(8项指标加权,阈值84.8/100)进行筛选,保留格式严格的优质轨迹。最终从4110条原始数据中筛选出3042条高质量轨迹,涵盖15个DevOps相关子领域,包括Bash管道、CI/CD、Docker、Kubernetes、PostgreSQL等。
特点
该数据集的核心优势在于其多轮交互格式——每条轨迹包含系统提示、用户指令、助手工具的完整对话链,特征在于所有助手回复均强制包含思考过程与工具调用代码(如<code>bash</code>、<code>read_file</code>、<code>write_file</code>等5种工具),且用户回复为仿真执行后的观察结果。数据集中所有轨迹经过严格的结构化审查,确保至少包含4轮对话、最终以<code>final_answer</code>收尾,并包含验证步骤。此外,数据集兼容低硬件部署(16GB GPU),易于研究者直接用于监督微调(SFT),无需额外格式转换。
使用方法
数据集以JSONL格式存储,可通过HuggingFace Datasets库直接加载特定子集(如`load_dataset`指定`data/distilled_bash_pipes`目录),每个条目包含`messages`(多轮对话列表)和`meta`(元数据)字段。使用者可直接将多个子集的JSONL文件合并,输入至任何标准SFT训练框架(如Unsloth、TRL、axolotl)进行微调。用户也可通过运行`python scripts/distill.py`脚本,指定教师模型、原始数据源及过滤阈值,复现整个蒸馏流程或适配至自定义领域。
背景与挑战
背景概述
该数据集由研究者MakarSuperstar于2026年创建,旨在解决本地化DevOps智能代理训练中多轮交互轨迹数据匮乏的困境。现有开源代码数据集如Magicoder等虽规模庞大,却局限于单轮指令-响应范式,导致模型在工具调用、观察验证与失败诚实汇报等迭代循环任务中出现能力退化。研究团队发现直接混合单轮数据会引发格式冲突,使得模型在'一次回答'与'多轮对话'间产生混淆。为此,他们利用gemma4:31b教师模型对Magicoder等来源的4,110条原始指令进行精馏,最终筛选出3,042条符合Thought→Code→Observation格式的高质量多轮代理轨迹,涵盖Bash管道、CI/CD、Django、Kubernetes等15个DevOps核心子领域。该数据集以24GB显存训练、16GB显存部署的极低硬件门槛,为社区提供了首个面向本地化DevOps代理的开源多轮轨迹训练资源,尤其在消费级GPU生态中具有里程碑意义。
当前挑战
首要挑战在于领域问题的复杂性:DevOps场景要求代理不仅理解工具链的语义语法,更需掌握多步骤操作的逻辑链条(如grep|awk|sort的管道组合),并在失败时准确汇报而非虚构成功。现有单轮数据无法模拟这种迭代验证行为,导致模型在工具调用、状态反馈与响应终止等环节出现格式混乱。构建过程中面临三大核心困难:其一,教师模型选择需在显存限制与输出稳定性间权衡,gemma4:31b虽胜出但仍需16K上下文窗口与0.7温度等精细参数调优;其二,精馏管道需设计8维复合评分机制(含JSON合规性、工具调用存在性、最终答案验证等指标),并设定84.8的严格阈值以剔除噪声;其三,针对Kubernetes等低接受率子集(原始200条仅保留79条),需识别Magicoder本身知识薄弱导致的精馏失败,最终放弃OSS-Instruct-75K等大面积不合格来源。
常用场景
经典使用场景
在DevOps与智能运维领域,多轮对话式智能体因需要同时理解基础设施指令、执行工具调用并验证结果而面临复杂挑战。oni-devops-traces数据集专为训练具备完整“思考→代码→观察→思考”闭环能力的本地化DevOps智能体而设计,其经典使用场景在于将单轮指令-响应格式的代码数据集,通过大规模教师模型蒸馏为结构化的多轮智能体轨迹,从而使得在24GB显存环境下训练的模型能够在任意16GB消费级GPU上部署运行。
解决学术问题
该数据集深刻解决了现有代码指令数据集(如Magicoder-Evol-Instruct、commitpackft)普遍存在的格式不匹配问题——这些数据集仅提供单轮问答范例,导致模型在多轮工具调用环境中产生性能倒退。通过提出一套基于8项复合格式合规性指标的评分系统及蒸馏流水线,研究团队证明了单轮数据可通过教师模型有效转化为高质量多轮轨迹,为智能体训练中的格式对齐研究提供了可复制的方法论与开源基准,推动了本地化、轻量化DevOps智能体的学术探索。
衍生相关工作
该数据集衍生了一系列富有启发性的相关工作方向。Distilabel框架提供了通用化LLM合成数据流水线,可将本蒸馏思路扩展至更广泛的来源;Microsoft的AgentInstruct工作采用多智能体模拟生成训练数据,与数据集所采用的重格式化方法形成互补;NousResearch的hermes-function-calling-v1以更小规模但高质量的手工智能体轨迹提供另类视角;Self-Instruct论文中种子示例驱动格式的思想在此被应用于格式转换而非数据扩充,共同构成了单轮到多轮智能体数据生成的技术光谱。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作