ConardLi/easy-datasetPlease refer to the latest official releases for information GitHub Homepage
專為大語言模型微調數據集創建而設計的強大工具,支援智慧文檔處理、問題生成和多格式導出
NOASSERTIONJavaScript 9.1kConardLieasy-dataset Last Updated: 2025-07-02
Easy Dataset - 大語言模型微調數據集創建工具
項目概述
Easy Dataset 是一款專為大語言模型(LLM)微調數據集創建而設計的專業工具。它提供了直觀的介面,用於上傳特定領域的文件、智能分割內容、生成問題,並產生高品質的訓練數據,使模型微調過程變得簡單高效。
通過 Easy Dataset,你可以將你的領域知識轉換為結構化數據集,兼容所有 OpenAI 格式的 LLM API,讓微調過程變得更加便捷和高效。
核心特性
🧠 智能文檔處理
- 支持上傳 Markdown 文件並自動分割成有意義的片段
- 智能識別文檔結構和內容層次
❓ 智能問題生成
- 從每個文本片段中自動提取相關問題
- 支持批量問題生成,提高處理效率
💬 答案生成
- 使用 LLM API 為每個問題生成全面的答案
- 支持自定義系統提示詞來指導模型響應
✏️ 靈活編輯
- 在處理過程的任何階段都可以編輯問題、答案和數據集
- 提供直觀的用戶介面進行內容管理
📤 多格式導出
- 支持多種數據集格式(Alpaca、ShareGPT)
- 支持多種文件類型(JSON、JSONL)
🔧 廣泛模型支持
- 兼容所有遵循 OpenAI 格式的 LLM API
- 支持 Ollama 本地模型部署
👥 用戶友好介面
- 為技術和非技術用戶設計的直觀 UI
- 完整的中英文國際化支持
技術架構
技術棧
- 前端框架: Next.js 14.1.0
- UI 庫: React 18.2.0
- 組件庫: Material UI 5.15.7
- 數據庫: 本地文件數據庫
- 許可證: Apache License 2.0
項目結構
easy-dataset/
├── app/ # Next.js 應用目錄
│ ├── api/ # API 路由
│ │ ├── llm/ # LLM API 集成
│ │ │ ├── ollama/ # Ollama API 集成
│ │ │ └── openai/ # OpenAI API 集成
│ │ └── projects/ # 項目管理 API
│ │ └── [projectId]/
│ │ ├── chunks/ # 文本塊操作
│ │ ├── datasets/ # 數據集生成和管理
│ │ ├── questions/ # 問題管理
│ │ └── split/ # 文本分割操作
│ └── projects/ # 前端項目頁面
│ └── [projectId]/
│ ├── datasets/ # 數據集管理介面
│ ├── questions/ # 問題管理介面
│ ├── settings/ # 項目設置介面
│ └── text-split/ # 文本處理介面
├── components/ # React 組件
│ ├── datasets/ # 數據集相關組件
│ ├── home/ # 首頁組件
│ ├── projects/ # 項目管理組件
│ ├── questions/ # 問題管理組件
│ └── text-split/ # 文本處理組件
├── lib/ # 核心庫和工具
│ ├── db/ # 數據庫操作
│ ├── i18n/ # 國際化
│ ├── llm/ # LLM 集成
│ │ ├── common/ # LLM 通用工具
│ │ ├── core/ # 核心 LLM 客戶端
│ │ └── prompts/ # 提示詞模板
│ └── text-splitter/ # 文本分割工具
├── locales/ # 國際化資源
│ ├── en/ # 英文翻譯
│ └── zh-CN/ # 中文翻譯
└── local-db/ # 本地文件數據庫
└── projects/ # 項目數據存儲
安裝與部署
系統要求
- Node.js 18.x 或更高版本
- pnpm(推薦)或 npm
本地開發
- 克隆倉庫:
git clone https://github.com/ConardLi/easy-dataset.git
cd easy-dataset
- 安裝依賴:
npm install
- 啟動開發伺服器:
npm run build
npm run start
Docker 部署
- 克隆倉庫:
git clone https://github.com/ConardLi/easy-dataset.git
cd easy-dataset
- 構建 Docker 鏡像:
docker build -t easy-dataset .
- 運行容器:
docker run -d -p 1717:1717 -v {YOUR_LOCAL_DB_PATH}:/app/local-db --name easy-dataset easy-dataset
注意:將
{YOUR_LOCAL_DB_PATH}
替換為你想要存儲本地數據庫的實際路徑。
- 訪問應用:
打開瀏覽器並導航到
http://localhost:1717
桌面應用下載
Windows | MacOS | Linux |
---|---|---|
Setup.exe | Intel / M | AppImage |
使用流程
1. 創建項目
- 在首頁點擊"創建項目"按鈕
- 輸入項目名稱和描述
- 配置你偏好的 LLM API 設置
2. 上傳和分割文本
- 在"文本分割"部分上傳你的 Markdown 文件
- 查看自動分割的文本片段
- 根據需要調整分割結果
3. 生成問題
- 導航到"問題"部分
- 選擇要生成問題的文本片段
- 查看和編輯生成的問題
- 使用標籤樹組織問題
4. 生成數據集
- 轉到"數據集"部分
- 選擇要包含在數據集中的問題
- 使用配置的 LLM 生成答案
- 查看和編輯生成的答案
5. 導出數據集
- 在數據集部分點擊"導出"按鈕
- 選擇你偏好的格式(Alpaca 或 ShareGPT)
- 選擇文件格式(JSON 或 JSONL)
- 如需要可添加自定義系統提示詞
- 導出你的數據集
特色功能
智能提示詞系統
項目內置了針對不同語言的專業提示詞模板:
- 中文問題生成提示詞
- 英文問題生成提示詞
- 中文答案生成提示詞
- 英文答案生成提示詞
多 LLM 支持
- 支持 OpenAI API
- 支持 Ollama 本地部署
- 兼容所有 OpenAI 格式的 API
靈活的數據格式
- Alpaca 格式:適用於指令微調
- ShareGPT 格式:適用於對話訓練
- JSON/JSONL 輸出格式選擇