|
--- |
|
license: other |
|
datasets: |
|
- ehartford/WizardLM_alpaca_evol_instruct_70k_unfiltered |
|
inference: false |
|
--- |
|
|
|
# WizardLM - uncensored: An Instruction-following LLM Using Evol-Instruct |
|
|
|
These files are GGML format model files for [Eric Hartford's 'uncensored' version of WizardLM](ehartford/WizardLM-7B-Uncensored). |
|
|
|
GGML files are for CPU inference using [llama.cpp](https://github.com/ggerganov/llama.cpp). |
|
|
|
Eric did a fresh 7B training using the WizardLM method, on [a dataset edited to remove all the "I'm sorry.." type ChatGPT responses](https://huggingface.co/datasets/ehartford/WizardLM_alpaca_evol_instruct_70k_unfiltered). |
|
|
|
## Other repositories available |
|
|
|
* [4bit GPTQ models for GPU inference](https://huggingface.co/TheBloke/WizardLM-7B-uncensored-GPTQ) |
|
* [4bit and 5bit GGML models for CPU inference](https://huggingface.co/TheBloke/WizardLM-7B-uncensored-GGML) |
|
* [Eric's unquantised model in HF format](https://huggingface.co/ehartford/WizardLM-7B-Uncensored) |
|
|
|
## Provided files |
|
| Name | Quant method | Bits | Size | RAM required | Use case | |
|
| ---- | ---- | ---- | ---- | ---- | ----- | |
|
`WizardLM-7B-uncensored.q4_0.bin` | q4_0 | 4bit | 4.2GB | 6GB | Maximum compatibility | |
|
`WizardLM-7B-uncensored.q4_2.bin` | q4_2 | 4bit | 4.2GB | 6GB | Best compromise between resources, speed and quality | |
|
`WizardLM-7B-uncensored.q5_0.bin` | q5_0 | 5bit | 4.63GB | 7GB | Brand new 5bit method. Potentially higher quality than 4bit, at cost of slightly higher resources. | |
|
`WizardLM-7B-uncensored.q5_1.bin` | q5_1 | 5bit | 5.0GB | 7GB | Brand new 5bit method. Slightly higher resource usage than q5_0.| |
|
|
|
* The q4_0 file provides lower quality, but maximal compatibility. It will work with past and future versions of llama.cpp |
|
* The q4_2 file offers the best combination of performance and quality. This format is still subject to change and there may be compatibility issues, see below. |
|
* The q5_0 file is using brand new 5bit method released 26th April. This is the 5bit equivalent of q4_0. |
|
* The q5_1 file is using brand new 5bit method released 26th April. This is the 5bit equivalent of q4_1. |
|
|
|
## q4_2 compatibility |
|
|
|
q4_2 is a relatively new 4bit quantisation method offering improved quality. However they are still under development and their formats are subject to change. |
|
|
|
In order to use these files you will need to use recent llama.cpp code. And it's possible that future updates to llama.cpp could require that these files are re-generated. |
|
|
|
If and when the q4_2 file no longer works with recent versions of llama.cpp I will endeavour to update it. |
|
|
|
If you want to ensure guaranteed compatibility with a wide range of llama.cpp versions, use the q4_0 file. |
|
|
|
## q5_0 and q5_1 compatibility |
|
|
|
These new methods were released to llama.cpp on 26th April. You will need to pull the latest llama.cpp code and rebuild to be able to use them. |
|
|
|
Don't expect any third-party UIs/tools to support them yet. |
|
|
|
## How to run in `llama.cpp` |
|
|
|
I use the following command line; adjust for your tastes and needs: |
|
|
|
``` |
|
./main -t 12 -m WizardLM-7B-uncensored.ggml.q4_2.bin --color -c 2048 --temp 0.7 --repeat_penalty 1.1 -n -1 -p "Below is an instruction that describes a task. Write a response that appropriately completes the request. |
|
### Instruction: |
|
Write a story about llamas |
|
### Response:" |
|
``` |
|
Change `-t 12` to the number of physical CPU cores you have. For example if your system has 8 cores/16 threads, use `-t 8`. |
|
|
|
If you want to have a chat-style conversation, replace the `-p <PROMPT>` argument with `-i -ins` |
|
|
|
## How to run in `text-generation-webui` |
|
|
|
Further instructions here: [text-generation-webui/docs/llama.cpp-models.md](https://github.com/oobabooga/text-generation-webui/blob/main/docs/llama.cpp-models.md). |
|
|
|
Note: at this time text-generation-webui will not support the new q5 quantisation methods. |
|
|
|
**Thireus** has written a [great guide on how to update it to the latest llama.cpp code](https://huggingface.co/TheBloke/wizardLM-7B-GGML/discussions/5) so that these files can be used in the UI. |
|
|
|
# Eric's original model card |
|
|
|
This is WizardLM trained with a subset of the dataset - responses that contained alignment / moralizing were removed. The intent is to train a WizardLM that doesn't have alignment built-in, so that alignment (of any sort) can be added separately with for example with a RLHF LoRA. |
|
|
|
Shout out to the open source AI/ML community, and everyone who helped me out, including Rohan, TheBloke, and Caseus |
|
|
|
# WizardLM's original model card |
|
|
|
Overview of Evol-Instruct |
|
Evol-Instruct is a novel method using LLMs instead of humans to automatically mass-produce open-domain instructions of various difficulty levels and skills range, to improve the performance of LLMs. |
|
|
|
![info](https://github.com/nlpxucan/WizardLM/raw/main/imgs/git_overall.png) |
|
![info](https://github.com/nlpxucan/WizardLM/raw/main/imgs/git_running.png) |