发布第五天,我的开源项目突破 1.7 K Star!

大家好,我是 ConardLi。

今天跟大家来正式介绍一下我的开源项目:Easy Dataset

github.com/ConardLi/ea...

3.13 号,我对外发布了第一个版本,到 3.16 Star 数破千,截止目前,已经 1.7K Star

为啥这个工具一发布就受到广泛的关注和喜爱呢,下面我来具体介绍一下。

目前各行各业都在积极探索微调自己行业的大模型,其实微调的过程不是难事,最难的是数据集准备的环节,高质量领域数据集的构建始终面临多重挑战,所以我之前大模型微调的教程一发出,大家问的最多的就是数据集的问题:

我总结了常见问题就是这些:

  • 完全不知道怎么做,目前就在纯人工去做,想提高效率
  • 直接将文档丢给 AI ,但是 AI 对于大文件生成的 QA 对效果比较差
  • AI 本身有上下文的限制,一次不能生成太多的问题,分批生成后面又会生成重复的问题
  • 已经有整理出来的数据集了,想有一个批量管理数据集的地方,可以进行标注和验证
  • 对于数据集有细分领域的需求,不知道如何去构建领域标签
  • 想要微调推理模型,但是不知道推理微调数据集中的 COT 怎么构造
  • 想从一个格式的数据集转换成另一个格式的数据集,不知道怎么转换

目前市面上确实没有一款工具可以满足这样的需求,因此,借助 AI,我大概花了 3 个晚上的时间构建出了 Easy DataSetgithub.com/ConardLi/ea...

架构设计

Easy DataSet 以 项目制 为核心单元,贯穿「文献处理-问题生成-答案构建-标签管理-格式导出」全链路:

核心模块:

  • 模型配置中心 :支持 OpenAI 格式 API(如 DeepSeek、各种三方模型提供商)及本地模型(Ollama),内置模型测试 Playground,支持多模型对比。
  • 智能文献处理 :采用「章节感知递归分块」算法,基于 Markdown 结构(#/##标题)实现语义级分割,确保单块内容完整(最小/最大长度可配),附带大纲提取与摘要生成。
  • 领域标签体系:AI 自动生成二级领域树(如「Web安全-XSS攻击」),支持手动修正,为每个 QA对绑定精准标签,降低重复率。

数据生成引擎:

  • 问题批量生成:基于文本块语义,按字符密度动态生成问题(可配置),支持批量创建与中断恢复。
  • 答案智能构建:关联原始文本块生成答案,支持推理模型(如DeepSeek-R1)生成带思维链(COT)的复杂答案。
  • 质量校验机制:提供问题/答案的批量删除、手动编辑及AI优化(输入指令自动润色),确保数据可用。

格式生态适配:

  • 多格式导出:支持Alpaca、ShareGPT标准格式,自定义字段映射,包含领域标签与 COT 信息。
  • 数据集广场:聚合 HuggingFace、Kaggle 等多平台数据源,支持关键字一键检索,解决「数据从哪来」的初始难题。

工具使用

目前 Easy Dataset 支持客户端、NPM、Docker 三种启动方式,完全在本地处理数据,无需担心数据隐私问题。

客户端启动(适合新手)

为了解决各种本地部署的环境问题,可以直接用客户端启动,支持以下平台:

可以直接到 github.com/ConardLi/ea... 下载适合自己系统的安装包:

NPM 启动(适合开发者)

本项目基于 Next 构建,所以本地只要有 Node 环境就可以通过 NPM 直接启动,适合开发者,需要调试项目的同学:

  1. 克隆仓库:
bash 复制代码
   git clone https://github.com/ConardLi/easy-dataset.git
   cd easy-dataset
  1. 安装依赖:
bash 复制代码
   npm install
  1. 启动服务器:
bash 复制代码
   npm run build
   npm run start

Docker启动(适合私有部署):

如果你想自行构建镜像,在云服务或者内网环境私有部署,可以使用项目根目录中的 Dockerfile

  1. 克隆仓库:
bash 复制代码
   git clone https://github.com/ConardLi/easy-dataset.git
   cd easy-dataset
  1. 构建 Docker 镜像:
bash 复制代码
   docker build -t easy-dataset .
  1. 运行容器:
bash 复制代码
   docker run -d -p 1717:1717 -v {YOUR_LOCAL_DB_PATH}:/app/local-db --name easy-dataset easy-dataset

注意: 请将 {YOUR_LOCAL_DB_PATH} 替换为你希望存储本地数据库的实际路径。

功能介绍

项目设置

多模型统一管理:支持 OpenAI 标准协议 的模型接入,兼容 Ollama,用户仅需配置 模型名称、API地址、密钥 即可完成适配。内置模型库预填主流厂商端点,支持删除/新增自定义模型,所有配置 本地加密存储,保障数据安全。

任务参数精细化配置:

  • 文本分块:设置最小/最大字符数(默认150-300字),支持递归分块时的章节感知(优先保留 Markdown 标题结构);
  • 问题生成:自定义每N字符生成1个问题(默认240字/问题),控制生成密度;
  • 并发数量:支持配置批量任务并发数量(批量问题、数据集生成),加快任务速度;

文献处理

智能分块引擎:

  • 输入:当前仅支持 Markdown(可以通过 MinerU 等工具自行转换 PDF/Word 等格式),后续会支持更多格式。
  • 处理流程
    1. 章节感知分割 :优先按#/##/###标题切分,保留完整章节
    2. 递归字符截断:超长段落按句号→逗号递归切分,确保块长在配置区间
    3. 块元数据:自动生成每块摘要(基于模型抽取)、字数统计、关联原始目录

领域标签树构建:

  • 自动分析:基于文档内容生成领域树(如"2.3 提示词设计→2.3.1 结构化模板")
  • 手动校准:支持增删改标签,形成项目专属的领域分类体系,用于后续问题标注

问题生成

  1. 单块生成:点击文本块「+问题」,基于块内容生成多个问题(密度可调)
  2. 批量生成:勾选多块→一键生成,支持中断/恢复任务
  3. 质量过滤:自动过滤低相关问题(如作者信息、格式说明),人工可批量删除

问题管理

列表视图,可查看和管理已经生成好的所有问题:

领域树视图(基于领域树视图查看和管理问题,可以更方便的掌握全貌,便捷管理问题:):

  • 自动匹配:通过提示词模板,将问题映射到领域树(如"XSS攻击原理"→"2.2 XSS攻击")
  • 手动修正:支持拖拽问题到目标标签,或批量修改标签层级

答案生成:

  • 基础答案:基于问题+块内容生成(支持多模型对比)
  • 推理答案(COT):切换推理模型(如 DeepSeek-R1 )生成带思维链的答案

数据集管理

数据集列表:

可以查看已经生成好的所有数据集,包括创建时间、使用模型、领域标签、是否有思维链等,可对不满意的数据集进行调整和删除。

数据集质检与标注:

  • 状态标记:「待确认/已保留」,支持批量标注
  • 手动编辑:支持直接修改答案/思维链,保留修改记录
  • 详情视图:展示问题、答案、标签、模型、生成时间全链路信息
  • AI优化:输入优化指令(如"更口语化"),一键润色答案
  • 快速翻页:支持「上一条/下一条」快捷键,提升质检效率

多格式导出:

  • 标准格式:Alpaca(instruction/output)、ShareGPT(messages结构)
  • 自定义模板:配置字段映射(如{question}→instruction,{answer}→output)
  • 过滤选项:可选仅导出已确认数据、是否包含标签/COT

导出示例:

数据集广场

多平台搜索:

聚合 HuggingFace、Kaggle、Opendatalab 等多个平台,输入关键词即可一站式检索,支持跳转原平台下载。

未来规划

当前 Easy Dataset 还处于比较早期的阶段,刚实现了最基本的构想,后续还会陆续支持以下功能,致力于打造成最完善和专业的大模型数据集构造平台:

  • 文献格式:单项目支持上传多个文件、支持多种类型(PDF、Word、Excel)的文献解析;
  • 多模态支持:支持图片、视频、音频等多模态数据集生成;
  • 质量评估:引入 BLEU、ROUGE 等指标,自动标注数据置信度,降低人工校验成本;
  • 数据标注:支持强化学习偏好数据集的质量标注,完善数据集评估能力;
  • 蒸馏数据集:支持不基于领域文献,直接基于大模型生成用于模型蒸馏的数据集;
  • 平台联动:支持 HuggingFace 数据集一键上传,支持从 HuggingFace 等平台一键拉取数据集,进行二次评估。

本项目完全开源( Apache 2.0 协议),欢迎广大开发者提交 PR 共建,也欢迎大家提出宝贵意见(可直接提交 Issues 或者加作者微信 ConardLi 反馈),作者会根据反馈数量确定后续迭代优先级。

相关推荐
Kagol1 小时前
TinyVue 支持 Skills 啦!现在你可以让 AI 使用 TinyVue 组件搭建项目
前端·agent·ai编程
柳杉1 小时前
从零打造 AI 全球趋势监测大屏
前端·javascript·aigc
simple_lau1 小时前
Cursor配置MasterGo MCP:一键读取设计稿生成高还原度前端代码
前端·javascript·vue.js
睡不着先生1 小时前
如何设计一个真正可扩展的表单生成器?
前端·javascript·vue.js
天蓝色的鱼鱼1 小时前
模块化与组件化:90%的前端开发者都没搞懂的本质区别
前端·架构·代码规范
明君879971 小时前
Flutter 如何给图片添加多行文字水印
前端·flutter
进击的尘埃1 小时前
AI 代码审查工具链搭建:用 AST 解析 + LLM 实现自动化 Code Review 的前端工程方案
javascript
舒一笑1 小时前
如何获取最新的技术趋势和热门技术
人工智能·程序员
juejin_cn1 小时前
[转][译] 从零开始构建 OpenClaw — 第五部分(对话压缩)
javascript
聚客AI2 小时前
🎉OpenClaw深度解析:多智能体协同的三种模式、四大必装技能与自动化运维秘籍
人工智能·开源·agent