h2o-wizardlm  by h2oai

Open-source tool for LLM fine-tuning dataset creation

Created 2 years ago
312 stars

Top 86.3% on SourcePulse

GitHubView on GitHub
Project Summary

This project provides an open-source implementation of the WizardLM method for generating complex instruction-following datasets, specifically tailored for fine-tuning Large Language Models (LLMs). It aims to enable the creation of ChatGPT-like models using entirely Apache 2.0 licensed components, avoiding TOS violations associated with datasets like ShareGPT. The primary audience is researchers and developers looking to build and fine-tune LLMs with high-quality, diverse instruction sets.

How It Works

The core approach involves taking an existing instruction-tuned LLM and using it to automatically rewrite simple "seed" prompts into more complex, multi-faceted instructions. This process leverages the "Evol-Instruct" methodology described in the linked paper, effectively increasing the complexity and richness of the training data. The advantage is creating sophisticated prompts that can lead to more capable and nuanced LLM responses, facilitating the development of more advanced AI assistants.

Quick Start & Requirements

  • Install: pip install -r requirements.txt
  • Prerequisites: Python 3.10.
  • Usage: Edit wizardlm.py to specify the base model and desired dataset size, then run python wizardlm.py.
  • Output: Generates a JSON file named wizard_lm.<uuid>.json.

Highlighted Details

  • Enables building ChatGPT-like models using Apache 2.0 licensed components.
  • Automates the creation of high-complexity instruction prompts from simpler seeds.
  • Aims for a complete Apache 2.0 fine-tuning loop (e.g., Open LLaMa + oasst1 -> WizardLM).

Maintenance & Community

The project is hosted by h2oai. Further community engagement details (Discord/Slack, roadmap) are not explicitly provided in the README.

Licensing & Compatibility

The project is licensed under Apache 2.0, allowing for commercial use and integration with closed-source systems.

Limitations & Caveats

The current implementation is noted as slow, even with optimizations. It requires a reasonably good instruct-tuned LLM for effective prompt generation, and generated responses can sometimes be empty. The project is actively under development with plans for speed improvements and enhanced response generation.

Health Check
Last Commit

10 months ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
0 stars in the last 30 days

Explore Similar Projects

Starred by Casper Hansen Casper Hansen(Author of AutoAWQ), Yineng Zhang Yineng Zhang(Inference Lead at SGLang; Research Scientist at Together AI), and
5 more.

xtuner by InternLM

0.5%
5k
LLM fine-tuning toolkit for research
Created 2 years ago
Updated 1 day ago
Starred by Vincent Weisser Vincent Weisser(Cofounder of Prime Intellect), Ross Taylor Ross Taylor(Cofounder of General Reasoning; Cocreator of Papers with Code), and
11 more.

open-instruct by allenai

0.7%
3k
Training codebase for instruction-following language models
Created 2 years ago
Updated 17 hours ago
Starred by Vincent Weisser Vincent Weisser(Cofounder of Prime Intellect), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
18 more.

WizardLM by nlpxucan

0.0%
9k
LLMs built using Evol-Instruct for complex instruction following
Created 2 years ago
Updated 3 months ago
Starred by Andrej Karpathy Andrej Karpathy(Founder of Eureka Labs; Formerly at Tesla, OpenAI; Author of CS 231n), Stefan van der Walt Stefan van der Walt(Core Contributor to scientific Python ecosystem), and
12 more.

litgpt by Lightning-AI

0.1%
13k
LLM SDK for pretraining, finetuning, and deploying 20+ high-performance LLMs
Created 2 years ago
Updated 5 days ago
Feedback? Help us improve.