easy-dataset README

The project's README from github.com/ConardLi/easy-dataset. As one markdown file: README.md.

GitHub Repo stars GitHub Downloads (all assets, all releases) GitHub Release AGPL 3.0 License GitHub contributors GitHub last commit arXiv:2507.04009

ConardLi%2Feasy-dataset | Trendshift

A powerful tool for creating fine-tuning datasets for Large Language Models

简体中文 | English | Türkçe

Features • Quick Start • Documentation • Contributing • License

If you like this project, please give it a Star⭐️, or buy the author a coffee => Donate ❤️!

Overview

Easy Dataset is an application specifically designed for building large language model (LLM) datasets. It features an intuitive interface, along with built-in powerful document parsing tools, intelligent segmentation algorithms, data cleaning and augmentation capabilities. The application can convert domain-specific documents in various formats into high-quality structured datasets, which are applicable to scenarios such as model fine-tuning, retrieval-augmented generation (RAG), and model performance evaluation.

News

🎉🎉 Easy Dataset Version 1.7.0 launches brand-new evaluation capabilities! You can effortlessly convert domain-specific documents into evaluation datasets (test sets) and automatically run multi-dimensional evaluation tasks. Additionally, it comes with a human blind test system, enabling you to easily meet needs such as vertical domain model evaluation, post-fine-tuning model performance assessment, and RAG recall rate evaluation. Tutorial: https://www.bilibili.com/video/BV1CRrVB7Eb4/

Features

📄 Document Processing & Data Generation

🔄 Multiple Dataset Types

📊 Model Evaluation System

🛠️ Advanced Features

📤 Export & Integration

🤖 Model Support

🌐 User Experience

Quick Demo

https://github.com/user-attachments/assets/6ddb1225-3d1b-4695-90cd-aa4cb01376a8

Local Run

Download Client

Windows MacOS Linux

Setup.exe

Intel

M

AppImage

Install with NPM

  1. Clone the repository:
   git clone https://github.com/ConardLi/easy-dataset.git
   cd easy-dataset
  1. Install dependencies:
   npm install
  1. Start the development server:
   npm run build

   npm run start
  1. Open your browser and visit http://localhost:1717

Using the Official Docker Image

  1. Clone the repository:
git clone https://github.com/ConardLi/easy-dataset.git
cd easy-dataset
  1. Modify the docker-compose.yml file:
services:
  easy-dataset:
    image: ghcr.io/conardli/easy-dataset
    container_name: easy-dataset
    ports:
      - '1717:1717'
    volumes:
      - ./local-db:/app/local-db
      - ./prisma:/app/prisma
    restart: unless-stopped

Note: It is recommended to use the local-db and prisma folders in the current code repository directory as mount paths to maintain consistency with the database paths when starting via NPM.

Note: The database file will be automatically initialized on first startup, no need to manually run npm run db:push.

  1. Start with docker-compose:
docker-compose up -d
  1. Open a browser and visit http://localhost:1717

Building with a Local Dockerfile

If you want to build the image yourself, use the Dockerfile in the project root directory:

  1. Clone the repository:
git clone https://github.com/ConardLi/easy-dataset.git
cd easy-dataset
  1. Build the Docker image:
docker build -t easy-dataset .
  1. Run the container:
docker run -d \
  -p 1717:1717 \
  -v ./local-db:/app/local-db \
  -v ./prisma:/app/prisma \
  --name easy-dataset \
  easy-dataset

Note: It is recommended to use the local-db and prisma folders in the current code repository directory as mount paths to maintain consistency with the database paths when starting via NPM.

Note: The database file will be automatically initialized on first startup, no need to manually run npm run db:push.

  1. Open a browser and visit http://localhost:1717

Documentation

Community Practice

Contributing

We welcome contributions from the community! If you'd like to contribute to Easy Dataset, please follow these steps:

  1. Fork the repository
  2. Create a new branch (git checkout -b feature/amazing-feature)
  3. Make your changes
  4. Commit your changes (git commit -m 'Add some amazing feature')
  5. Push to the branch (git push origin feature/amazing-feature)
  6. Open a Pull Request (submit to the DEV branch)

Please ensure that tests are appropriately updated and adhere to the existing coding style.

Join Discussion Group & Contact the Author

https://docs.easy-dataset.com/geng-duo/lian-xi-wo-men

License

This project is licensed under the AGPL 3.0 License - see the LICENSE file for details.

Citation

If this work is helpful, please kindly cite as:

@misc{miao2025easydataset,
  title={Easy Dataset: A Unified and Extensible Framework for Synthesizing LLM Fine-Tuning Data from Unstructured Documents},
  author={Ziyang Miao and Qiyu Sun and Jingyuan Wang and Yuchen Gong and Yaowei Zheng and Shiqi Li and Richong Zhang},
  year={2025},
  eprint={2507.04009},
  archivePrefix={arXiv},
  primaryClass={cs.CL},
  url={https://arxiv.org/abs/2507.04009}
}

Star History

Star History Chart

Built with ❤️ by ConardLi • Follow me: WeChat Official Account|Bilibili|Juejin|Zhihu|Youtube

easy-dataset (ConardLi/easy-dataset)

Searching Database…

What is this?Easy Dataset is an app that turns domain documents (PDF, Markdown, DOCX, TXT, EPUB) into structured datasets for LLM fine-tuning, RAG, and model evaluation. It extracts questions from your text, generates answers with an LLM, and exports ready-to-use training data.
Is this a desktop app or something I run on a server?Both — you can run it as a local web app via npm or the official Docker image, or just download a prebuilt desktop client for Windows, macOS, or Linux.
How do I get it running?Clone the repo, run npm install, then npm run dev to start it on port 1717, or use docker-compose up with the official Docker image. You can also build your own image from the included Dockerfile.
Do I need an LLM API key to generate data?Yes, you need access to an LLM API that follows the OpenAI format; it supports OpenAI, MiniMax, Ollama (local models), Zhipu AI, Alibaba Bailian, OpenRouter and more providers.
What dataset export formats does it support?It exports to Alpaca, ShareGPT, and Multilingual-Thinking formats in JSON or JSONL, and can push datasets straight to Hugging Face Hub.
Can it do more than generate training data?Yes, it also builds evaluation datasets (true/false, choice, open-ended questions) with automated Judge Model scoring and a human blind-test arena to compare two models' answers.
Does it integrate with other fine-tuning tools?It has one-click LLaMA Factory configuration generation and direct upload to Hugging Face Hub, so you can go straight from dataset to training.
Can I build a dataset without uploading any documents?Yes, its 'Data Distillation' mode generates label trees and questions directly from a domain topic you specify, no source documents required.
Creator
ConardLi
Size
19.2 MB
Stars
15K
Age
1y
Commits · 90 Days