- 多平台支持: Hugging Face 和 ModelScope
- 智能URL解析: 自动从URL中提取数据集信息
- 断点续传: 支持下载失败后的重试机制
- 进度监控: 实时显示下载进度和状态
- 多任务管理: 支持同时下载多个数据集
- 多格式支持: JSON、JSONL、CSV等常见格式
- 分页浏览: 支持大数据集的分页预览
- 自定义目录: 支持预览任意目录中的数据集
- 实时刷新: 动态更新数据集列表
- 格式转换: 支持JSON、JSONL、CSV之间的相互转换
- 字段映射: 灵活的字段重命名和结构调整
- 数据清洗: 自动清理临时文件和无效数据
- 批量处理: 支持批量处理多个数据集
- 资源监控: 实时显示内存和磁盘使用情况
- 日志管理: 详细的操作日志记录
- 错误追踪: 完整的错误信息和调试支持
- Python: 3.8+
- 操作系统: Windows、Linux、macOS
- 内存: 建议4GB以上
- 磁盘空间: 根据数据集大小而定
# 创建conda环境
conda create -n data-distil python=3.12
conda activate data-distil
# 克隆项目
git clone <repository-url>
cd DataSetCreator/DataCreator
# 安装依赖
pip install -r requirements.txt# 创建虚拟环境
python -m venv venv
# 激活环境(Windows)
venv\Scripts\activate
# 激活环境(Linux/macOS)
source venv/bin/activate
# 安装依赖
pip install -r requirements.txtpip install -r requirements.txtpython main.py --ui界面将在 http://localhost:7860 启动。
# 下载Hugging Face数据集
python main.py --download --platform huggingface --dataset "facebook/opt-350m" --token "your_token"
# 下载ModelScope数据集
python main.py --download --platform modelscope --url "https://www.modelscope.cn/models/pai/DistilQwen_100k"
# 预览数据集
python main.py --preview --dataset "huggingface/facebook/opt-350m"- 平台选择: 选择Hugging Face或ModelScope
- 数据集名称:
- Hugging Face: 格式为
用户名/数据集名,如facebook/opt-350m - ModelScope: 可选,系统会从URL自动提取
- Hugging Face: 格式为
- 下载地址:
- Hugging Face: 可选
- ModelScope: 必填完整URL
- 下载目录: 自定义下载路径,留空使用默认目录
- API密钥: 访问私有数据集所需的令牌
- 重试设置: 下载失败时的重试次数和间隔
- 目录同步: 可同步下载配置区的目录设置
- 数据集选择: 从下拉菜单选择要预览的数据集
- 分页设置: 调整每页显示的数据条数
- 实时预览: 在表格中查看数据集内容
- 源数据集: 选择要处理的数据集
- 字段映射: JSON格式的字段重命名配置
- 输出格式: 选择转换后的文件格式
- 批量处理: 支持同时处理多个数据集
- 日志类型: 选择查看不同类型的日志
- 资源状态: 监控系统资源使用情况
- 实时更新: 自动刷新状态信息
python main.py [OPTIONS]
选项:
--ui 启动Web界面
--download 下载模式
--preview 预览模式
--process 处理模式
--platform TEXT 平台名称 (huggingface/modelscope)
--dataset TEXT 数据集名称
--url TEXT 下载URL (ModelScope必需)
--token TEXT API令牌
--dir TEXT 自定义目录
--retry INTEGER 重试次数 (默认: 3)
--interval INTEGER 重试间隔秒数 (默认: 5)
--port INTEGER Web界面端口 (默认: 7860)
--help 显示帮助信息- 获取令牌: 访问 Hugging Face Settings
- 数据集格式:
用户名/数据集名,如microsoft/DialoGPT-medium - 私有数据集: 需要提供有效的访问令牌
- 获取令牌: 访问 ModelScope个人中心
- URL格式:
- 模型:
https://www.modelscope.cn/models/用户名/模型名 - 数据集:
https://www.modelscope.cn/datasets/用户名/数据集名
- 模型:
- 自动提取: 系统会自动从URL中提取数据集信息
DataSetCreator/DataCreator/
├── main.py # 主程序入口
├── ui_launcher.py # Web界面启动器
├── dataset_downloader.py # 数据集下载模块
├── dataset_previewer.py # 数据集预览模块
├── dataset_processor.py # 数据处理模块
├── dir_browser.py # 目录浏览器
├── utils.py # 工具函数
├── requirements.txt # 依赖包列表
├── README.md # 说明文档
├── logs/ # 日志目录
├── raw/ # 原始数据目录
├── processed/ # 处理后数据目录
└── temp/ # 临时文件目录
- raw/: 存储原始下载的数据集
- processed/: 存储处理后的数据集
- temp/: 存储临时文件,可定期清理
- logs/: 存储操作日志
可通过环境变量配置默认设置:
export HF_TOKEN="your_huggingface_token"
export MS_TOKEN="your_modelscope_token"
export DEFAULT_DOWNLOAD_DIR="/path/to/download/dir"# 问题:pyarrow版本冲突
# 解决:使用指定版本
pip install pyarrow==14.0.2 numpy==1.26.4 datasets==2.14.0# 问题:MsDataset导入失败
# 解决:系统会自动使用备用下载方法- 检查网络连接
- 验证API令牌有效性
- 确认数据集名称正确
- 检查磁盘空间是否充足
- 确认端口7860未被占用
- 检查防火墙设置
- 尝试使用
--port参数指定其他端口
- 在
dataset_downloader.py中添加新的下载逻辑 - 更新
dataset_previewer.py支持新的数据格式 - 在
ui_launcher.py中添加对应的UI选项
- 在
dataset_processor.py中添加新的处理函数 - 更新Web界面添加相应的控件
- 添加相应的命令行参数支持
可以修改 ui_launcher.py 中的CSS样式自定义界面外观。
我们热烈欢迎社区贡献!请阅读我们的 贡献指南 了解详细信息。
- Fork 项目
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 创建 Pull Request
感谢所有为这个项目做出贡献的开发者!
18621098785 项目创建者 & 核心维护者 📧 联系 |
感谢每一位贡献者!您的每一个PR都让这个项目变得更好。
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
如果遇到问题:
- 查看本README的常见问题部分
- 检查日志文件获取详细错误信息
- 在项目GitHub页面提交Issue
- 联系开发团队获取技术支持
- ✨ 初始版本发布
- 🎯 支持Hugging Face和ModelScope平台
- 🎨 完整的Web界面
- 📊 实时进度监控
- 🔧 数据处理和转换功能
享受数据集管理的便利! 🎉