TheBloke commited on
Commit
adc1c8c
1 Parent(s): b7b10e4

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +122 -0
README.md CHANGED
@@ -1,3 +1,125 @@
1
  ---
2
  license: other
 
3
  ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
  license: other
3
+ inference: false
4
  ---
5
+
6
+ # OpenAssistant LLaMA 30B SFT 7 GGML
7
+
8
+ This in HF format repo of [OpenAssistant's LLaMA 30B SFT 7](https://huggingface.co/OpenAssistant/oasst-sft-7-llama-30b-xor).
9
+
10
+ It is the result of merging the XORs from the above repo with the original Llama 30B weights, and then quantising to 4bit and 5bit GGML for CPU inference using [llama.cpp](https://github.com/ggerganov/llama.cpp).
11
+
12
+ This is epoch 7 of OpenAssistant's training of their Llama 30B model.
13
+
14
+ ## Repositories available
15
+
16
+ * [4bit GPTQ models for GPU inference](https://huggingface.co/TheBloke/OpenAssistant-SFT-7-Llama-30B-GPTQ).
17
+ * [4bit and 5bit GGML models for CPU inference](https://huggingface.co/TheBloke/OpenAssistant-SFT-7-Llama-30B-GGML).
18
+ * [Unquantised 16bit model in HF format](https://huggingface.co/TheBloke/OpenAssistant-SFT-7-Llama-30B-HF).
19
+
20
+ ## PROMPT TEMPLATE
21
+
22
+ This model requires the following prompt template:
23
+
24
+ ```
25
+ <|prompter|> prompt goes here
26
+ <|assistant|>:
27
+ ```
28
+
29
+ ## Provided files
30
+ | Name | Quant method | Bits | Size | RAM required | Use case |
31
+ | ---- | ---- | ---- | ---- | ---- | ----- |
32
+ `OpenAssistant-Llama30B-epoch7.ggml.q4_0.bin` | q4_0 | 4bit | 19GB | 21GB | Maximum compatibility |
33
+ `OpenAssistant-Llama30B-epoch7.ggml.q4_2.bin` | q4_2 | 4bit | 19GB | 21GB | Best compromise between resources, speed and quality |
34
+ `OpenAssistant-Llama30B-epoch7.ggml.q5_0.bin` | q5_0 | 5bit | 21GB | 23GB | Brand new 5bit method. Potentially higher quality than 4bit, at cost of slightly higher resources. |
35
+ `OpenAssistant-Llama30B-epoch7.ggml.q5_1.bin` | q5_1 | 5bit | 23GB | 25GB | Brand new 5bit method. Slightly higher resource usage than q5_0.|
36
+
37
+ * The q4_0 file provides lower quality, but maximal compatibility. It will work with past and future versions of llama.cpp
38
+ * 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.
39
+ * The q5_0 file is using brand new 5bit method released 26th April. This is the 5bit equivalent of q4_0.
40
+ * The q5_1 file is using brand new 5bit method released 26th April. This is the 5bit equivalent of q4_1.
41
+
42
+ ## q4_2 compatibility
43
+
44
+ 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.
45
+
46
+ 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.
47
+
48
+ If and when the q4_2 file no longer works with recent versions of llama.cpp I will endeavour to update it.
49
+
50
+ If you want to ensure guaranteed compatibility with a wide range of llama.cpp versions, use the q4_0 file.
51
+
52
+ ## q5_0 and q5_1 compatibility
53
+
54
+ 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.
55
+
56
+ Don't expect any third-party UIs/tools to support them yet.
57
+
58
+ ## How to run in `llama.cpp`
59
+
60
+ I use the following command line; adjust for your tastes and needs:
61
+
62
+ ```
63
+ ./main -t 18 -m OpenAssistant-Llama30B-epoch7.ggml.q4_2.bin --color -c 2048 --temp 0.7 --repeat_penalty 1.1 -n -1 -p "<|prompter|>Write a very story about llamas <|assistant|>:"
64
+ ```
65
+
66
+ Change `-t 18` to the number of physical CPU cores you have. For example if your system has 8 cores/16 threads, use `-t 8`.
67
+
68
+ ## How to run in `text-generation-webui`
69
+
70
+ GGML models can be loaded into text-generation-webui by installing the llama.cpp module, then placing the ggml model file in a model folder as usual.
71
+
72
+ 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).
73
+
74
+ Note: at this time text-generation-webui will not support the new q5 quantisation methods.
75
+
76
+ **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.
77
+
78
+ # Original model card
79
+
80
+ ```
81
+ llama-30b-sft-7:
82
+ dtype: fp16
83
+ log_dir: "llama_log_30b"
84
+ learning_rate: 1e-5
85
+ model_name: /home/ubuntu/Open-Assistant/model/model_training/.saved/llama-30b-super-pretrain/checkpoint-3500
86
+ #model_name: OpenAssistant/llama-30b-super-pretrain
87
+ output_dir: llama_model_30b
88
+ deepspeed_config: configs/zero3_config_sft.json
89
+ weight_decay: 0.0
90
+ residual_dropout: 0.0
91
+ max_length: 2048
92
+ use_flash_attention: true
93
+ warmup_steps: 20
94
+ gradient_checkpointing: true
95
+ gradient_accumulation_steps: 12
96
+ per_device_train_batch_size: 2
97
+ per_device_eval_batch_size: 3
98
+ eval_steps: 101
99
+ save_steps: 485
100
+ num_train_epochs: 4
101
+ save_total_limit: 3
102
+ use_custom_sampler: true
103
+ sort_by_length: false
104
+ #save_strategy: steps
105
+ save_strategy: epoch
106
+ datasets:
107
+ - oasst_export:
108
+ lang: "bg,ca,cs,da,de,en,es,fr,hr,hu,it,nl,pl,pt,ro,ru,sl,sr,sv,uk"
109
+ input_file_path: 2023-04-12_oasst_release_ready_synth.jsonl.gz
110
+ val_split: 0.05
111
+ - vicuna:
112
+ val_split: 0.05
113
+ max_val_set: 800
114
+ fraction: 1.0
115
+ - dolly15k:
116
+ val_split: 0.05
117
+ max_val_set: 300
118
+ - grade_school_math_instructions:
119
+ val_split: 0.05
120
+ - code_alpaca:
121
+ val_split: 0.05
122
+ max_val_set: 250
123
+ ```
124
+
125
+ - **OASST dataset paper:** https://arxiv.org/abs/2304.07327