# Easy Dataset [English](./README.md) | [中文](./README.zh.md) 这个服务部署 Easy Dataset,一个用于创建大语言模型(LLM)微调数据集的强大工具。它提供了直观的界面,可以上传特定领域的文件、智能分割内容、生成问题,并产生高质量的模型微调训练数据。 ## 服务 - `easy-dataset`:主应用服务器,内置 SQLite 数据库。 ## 环境变量 | 变量名 | 描述 | 默认值 | | -------------------------- | ---------------------- | ------- | | EASY_DATASET_VERSION | Easy Dataset 镜像版本 | `1.5.1` | | EASY_DATASET_PORT_OVERRIDE | Web 界面的主机端口映射 | `1717` | | TZ | 系统时区 | `UTC` | 请创建 `.env` 文件并根据您的使用场景进行修改。 ## 数据卷 - `easy_dataset_db`:用于存储 SQLite 数据库和上传文件的命名卷。 - `easy_dataset_prisma`:(可选)如需要可用于 Prisma 数据库文件的命名卷。 ## 快速开始 ### 快速启动(推荐) 1. (可选)创建 `.env` 文件以自定义设置: ```env EASY_DATASET_VERSION=1.5.1 EASY_DATASET_PORT_OVERRIDE=1717 TZ=Asia/Shanghai ``` 2. 启动服务: ```bash docker compose up -d ``` 3. 访问 Easy Dataset:`http://localhost:1717` ### 使用 Prisma 数据库挂载(高级) 如果需要挂载 Prisma 数据库文件: 1. 首先初始化数据库: ```bash # 克隆仓库并初始化数据库 git clone https://github.com/ConardLi/easy-dataset.git cd easy-dataset npm install npm run db:push ``` 2. 在 `docker-compose.yaml` 中取消注释 Prisma 卷挂载: ```yaml volumes: - easy_dataset_db:/app/local-db - easy_dataset_prisma:/app/prisma # 取消此行注释 ``` 3. 启动服务: ```bash docker compose up -d ``` ## 功能特性 - **智能文档处理**:支持 PDF、Markdown、DOCX 等多种格式 - **智能文本分割**:多种算法,可自定义分段 - **问题生成**:从文本中自动提取相关问题 - **领域标签**:构建全局领域标签,具有理解能力 - **答案生成**:使用 LLM API 生成全面的答案和思维链(COT) - **灵活编辑**:在任何阶段编辑问题、答案和数据集 - **多种导出格式**:Alpaca、ShareGPT、multilingual-thinking(JSON/JSONL) - **广泛的模型支持**:兼容所有遵循 OpenAI 格式的 LLM API ## 使用流程 1. **创建项目**:设置新项目并配置 LLM API 2. **上传文档**:添加您的特定领域文件(PDF、Markdown 等) 3. **文本分割**:查看并调整自动分割的文本段 4. **生成问题**:从文本块批量构造问题 5. **创建数据集**:使用配置的 LLM 生成答案 6. **导出**:以您喜欢的格式导出数据集 ## 默认凭据 Easy Dataset 默认不需要身份验证。应在基础设施层面实现访问控制(例如反向代理、防火墙规则)。 ## 资源限制 该服务配置了以下资源限制: - **CPU**:0.5-2.0 核心 - **内存**:1-4 GB 可以根据您的工作负载需求在 `docker-compose.yaml` 中调整这些限制。 ## 安全注意事项 - **数据隐私**:所有数据处理都在本地进行 - **API 密钥**:在应用程序内安全存储 LLM API 密钥 - **访问控制**:根据需要实施网络级访问限制 - **更新**:定期更新到最新版本以获取安全补丁 ## 文档 - 官方文档:[https://docs.easy-dataset.com/](https://docs.easy-dataset.com/) - GitHub 仓库:[https://github.com/ConardLi/easy-dataset](https://github.com/ConardLi/easy-dataset) - 视频教程:[Bilibili](https://www.bilibili.com/video/BV1y8QpYGE57/) - 研究论文:[arXiv:2507.04009](https://arxiv.org/abs/2507.04009v1) ## 故障排除 ### 容器无法启动 - 查看日志:`docker compose logs easy-dataset` - 验证端口 1717 未被占用 - 确保系统资源充足 ### 数据库问题 - 如遇到 SQLite 问题,删除并重新创建卷: ```bash docker compose down -v docker compose up -d ``` ### 权限错误 - 确保容器对挂载卷有写入权限 - 检查 Docker 卷权限 ## 许可证 Easy Dataset 采用 AGPL 3.0 许可证。详见 [LICENSE](https://github.com/ConardLi/easy-dataset/blob/main/LICENSE) 文件。