TheBloke commited on
Commit
7ef13dd
·
1 Parent(s): 4c0b9f3

Initial GGML model commit

Browse files
Files changed (1) hide show
  1. README.md +152 -0
README.md ADDED
@@ -0,0 +1,152 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ inference: false
3
+ license: other
4
+ ---
5
+
6
+ <!-- header start -->
7
+ <div style="width: 100%;">
8
+ <img src="https://i.imgur.com/EBdldam.jpg" alt="TheBlokeAI" style="width: 100%; min-width: 400px; display: block; margin: auto;">
9
+ </div>
10
+ <div style="display: flex; justify-content: space-between; width: 100%;">
11
+ <div style="display: flex; flex-direction: column; align-items: flex-start;">
12
+ <p><a href="https://discord.gg/theblokeai">Chat & support: my new Discord server</a></p>
13
+ </div>
14
+ <div style="display: flex; flex-direction: column; align-items: flex-end;">
15
+ <p><a href="https://www.patreon.com/TheBlokeAI">Want to contribute? TheBloke's Patreon page</a></p>
16
+ </div>
17
+ </div>
18
+ <!-- header end -->
19
+
20
+ # Camel AI's CAMEL 13B Role Playing Data GGML
21
+
22
+ These files are GGML format model files for [Camel AI's CAMEL 13B Role Playing Data](https://huggingface.co/camel-ai/CAMEL-13B-Role-Playing-Data).
23
+
24
+ These are SuperHOT GGMLs with an increased context length. SuperHOT is a new system that employs RoPE to expand context beyond what was originally possible for a model. It was discovered and developed by [kaiokendev](https://huggingface.co/kaiokendev).
25
+
26
+ In order to use the increased context length, you can presently use:
27
+ * [KoboldCpp](https://github.com/LostRuins/koboldcpp) - [release 1.33](https://github.com/LostRuins/koboldcpp/releases/tag/v1.33) or later.
28
+
29
+ Support is also expected to come to llama.cpp, however it is still being worked on and there is currently no ETA for that.
30
+
31
+ To use the increased context with KoboldCpp and (when supported) llama.cpp, simply use `--contextsize` to set the desired context, eg `--contextsize 4096` or `--contextsize 8192`.
32
+
33
+ ## Repositories available
34
+
35
+ * [4-bit GPTQ models for GPU inference](https://huggingface.co/TheBloke/CAMEL-13B-Role-Playing-Data-SuperHOT-8K-GPTQ)
36
+ * [2, 3, 4, 5, 6 and 8-bit GGML models for CPU inference](https://huggingface.co/TheBloke/CAMEL-13B-Role-Playing-Data-SuperHOT-8K-GGML)
37
+ * [Unquantised SuperHOT fp16 model in pytorch format, for GPU inference and for further conversions](https://huggingface.co/TheBloke/CAMEL-13B-Role-Playing-Data-SuperHOT-8K-fp16)
38
+ * [Unquantised base fp16 model in pytorch format, for GPU inference and for further conversions](https://huggingface.co/camel-ai/CAMEL-13B-Role-Playing-Data)
39
+
40
+ <!-- compatibility_ggml start -->
41
+ ## Compatibility
42
+
43
+ These GGMLs will work with any llama.cpp-compatible GGML client that supports k-quants.
44
+
45
+ However the increased context length won't work without specific support. See the note in the introduction for details on using increased context.
46
+
47
+ ## Explanation of the new k-quant methods
48
+
49
+ The new methods available are:
50
+ * GGML_TYPE_Q2_K - "type-1" 2-bit quantization in super-blocks containing 16 blocks, each block having 16 weight. Block scales and mins are quantized with 4 bits. This ends up effectively using 2.5625 bits per weight (bpw)
51
+ * GGML_TYPE_Q3_K - "type-0" 3-bit quantization in super-blocks containing 16 blocks, each block having 16 weights. Scales are quantized with 6 bits. This end up using 3.4375 bpw.
52
+ * GGML_TYPE_Q4_K - "type-1" 4-bit quantization in super-blocks containing 8 blocks, each block having 32 weights. Scales and mins are quantized with 6 bits. This ends up using 4.5 bpw.
53
+ * GGML_TYPE_Q5_K - "type-1" 5-bit quantization. Same super-block structure as GGML_TYPE_Q4_K resulting in 5.5 bpw
54
+ * GGML_TYPE_Q6_K - "type-0" 6-bit quantization. Super-blocks with 16 blocks, each block having 16 weights. Scales are quantized with 8 bits. This ends up using 6.5625 bpw
55
+ * GGML_TYPE_Q8_K - "type-0" 8-bit quantization. Only used for quantizing intermediate results. The difference to the existing Q8_0 is that the block size is 256. All 2-6 bit dot products are implemented for this quantization type.
56
+
57
+ Refer to the Provided Files table below to see what files use which methods, and how.
58
+ <!-- compatibility_ggml end -->
59
+
60
+ ## Provided files
61
+ | Name | Quant method | Bits | Size | Max RAM required | Use case |
62
+ | ---- | ---- | ---- | ---- | ---- | ----- |
63
+ | camel-13b-role-playing-data-superhot-8k.ggmlv3.q2_K.bin | q2_K | 2 | 5.51 GB | 8.01 GB | New k-quant method. Uses GGML_TYPE_Q4_K for the attention.vw and feed_forward.w2 tensors, GGML_TYPE_Q2_K for the other tensors. |
64
+ | camel-13b-role-playing-data-superhot-8k.ggmlv3.q3_K_L.bin | q3_K_L | 3 | 6.93 GB | 9.43 GB | New k-quant method. Uses GGML_TYPE_Q5_K for the attention.wv, attention.wo, and feed_forward.w2 tensors, else GGML_TYPE_Q3_K |
65
+ | camel-13b-role-playing-data-superhot-8k.ggmlv3.q3_K_M.bin | q3_K_M | 3 | 6.31 GB | 8.81 GB | New k-quant method. Uses GGML_TYPE_Q4_K for the attention.wv, attention.wo, and feed_forward.w2 tensors, else GGML_TYPE_Q3_K |
66
+ | camel-13b-role-playing-data-superhot-8k.ggmlv3.q3_K_S.bin | q3_K_S | 3 | 5.66 GB | 8.16 GB | New k-quant method. Uses GGML_TYPE_Q3_K for all tensors |
67
+ | camel-13b-role-playing-data-superhot-8k.ggmlv3.q4_K_M.bin | q4_K_M | 4 | 7.87 GB | 10.37 GB | New k-quant method. Uses GGML_TYPE_Q6_K for half of the attention.wv and feed_forward.w2 tensors, else GGML_TYPE_Q4_K |
68
+ | camel-13b-role-playing-data-superhot-8k.ggmlv3.q4_K_S.bin | q4_K_S | 4 | 7.37 GB | 9.87 GB | New k-quant method. Uses GGML_TYPE_Q4_K for all tensors |
69
+ | camel-13b-role-playing-data-superhot-8k.ggmlv3.q5_K_M.bin | q5_K_M | 5 | 9.23 GB | 11.73 GB | New k-quant method. Uses GGML_TYPE_Q6_K for half of the attention.wv and feed_forward.w2 tensors, else GGML_TYPE_Q5_K |
70
+ | camel-13b-role-playing-data-superhot-8k.ggmlv3.q5_K_S.bin | q5_K_S | 5 | 8.97 GB | 11.47 GB | New k-quant method. Uses GGML_TYPE_Q5_K for all tensors |
71
+ | camel-13b-role-playing-data-superhot-8k.ggmlv3.q6_K.bin | q6_K | 6 | 10.68 GB | 13.18 GB | New k-quant method. Uses GGML_TYPE_Q8_K - 6-bit quantization - for all tensors |
72
+
73
+ **Note**: the above RAM figures assume no GPU offloading. If layers are offloaded to the GPU, this will reduce RAM usage and use VRAM instead.
74
+
75
+ ## How to run in `koboldcpp`
76
+
77
+ On Linux I use the following command line to launch the KoboldCpp UI with OpenCL aceleration and a context size of 4096:
78
+
79
+ ```
80
+ python ./koboldcpp.py --stream --unbantokens --threads 8 --usecublas 100 camel-13b-role-playing-data-superhot-8k.ggmlv3.q5_0.bin
81
+ ```
82
+
83
+ Change `--gpulayers 100` to the number of layers you want/are able to offload to the GPU. Remove it if you don't have GPU acceleration.
84
+
85
+ For OpenCL acceleration, change `--usecublas` to `--useclblast 0 0`. You may need to change the second `0` to `1` if you have both an iGPU and a discrete GPU.
86
+
87
+ <!-- footer start -->
88
+ ## Discord
89
+
90
+ For further support, and discussions on these models and AI in general, join us at:
91
+
92
+ [TheBloke AI's Discord server](https://discord.gg/theblokeai)
93
+
94
+ ## Thanks, and how to contribute.
95
+
96
+ Thanks to the [chirper.ai](https://chirper.ai) team!
97
+
98
+ I've had a lot of people ask if they can contribute. I enjoy providing models and helping people, and would love to be able to spend even more time doing it, as well as expanding into new projects like fine tuning/training.
99
+
100
+ If you're able and willing to contribute it will be most gratefully received and will help me to keep providing more models, and to start work on new AI projects.
101
+
102
+ Donaters will get priority support on any and all AI/LLM/model questions and requests, access to a private Discord room, plus other benefits.
103
+
104
+ * Patreon: https://patreon.com/TheBlokeAI
105
+ * Ko-Fi: https://ko-fi.com/TheBlokeAI
106
+
107
+ **Special thanks to**: Luke from CarbonQuill, Aemon Algiz, Dmitriy Samsonov.
108
+
109
+ **Patreon special mentions**: zynix , ya boyyy, Trenton Dambrowitz, Imad Khwaja, Alps Aficionado, chris gileta, John Detwiler, Willem Michiel, RoA, Mano Prime, Rainer Wilmers, Fred von Graf, Matthew Berman, Ghost , Nathan LeClaire, Iucharbius , Ai Maven, Illia Dulskyi, Joseph William Delisle, Space Cruiser, Lone Striker, Karl Bernard, Eugene Pentland, Greatston Gnanesh, Jonathan Leane, Randy H, Pierre Kircher, Willian Hasse, Stephen Murray, Alex , terasurfer , Edmond Seymore, Oscar Rangel, Luke Pendergrass, Asp the Wyvern, Junyu Yang, David Flickinger, Luke, Spiking Neurons AB, subjectnull, Pyrater, Nikolai Manek, senxiiz, Ajan Kanaga, Johann-Peter Hartmann, Artur Olbinski, Kevin Schuppel, Derek Yates, Kalila, K, Talal Aujan, Khalefa Al-Ahmad, Gabriel Puliatti, John Villwock, WelcomeToTheClub, Daniel P. Andersen, Preetika Verma, Deep Realms, Fen Risland, trip7s trip, webtim, Sean Connelly, Michael Levine, Chris McCloskey, biorpg, vamX, Viktor Bowallius, Cory Kujawski.
110
+
111
+ Thank you to all my generous patrons and donaters!
112
+
113
+ <!-- footer end -->
114
+
115
+ # Original model card: Kaio Ken's SuperHOT 8K
116
+
117
+ ### SuperHOT Prototype 2 w/ 8K Context
118
+
119
+ This is a second prototype of SuperHOT, this time 30B with 8K context and no RLHF, using the same technique described in [the github blog](https://kaiokendev.github.io/til#extending-context-to-8k).
120
+ Tests have shown that the model does indeed leverage the extended context at 8K.
121
+
122
+ You will need to **use either the monkeypatch** or, if you are already using the monkeypatch, **change the scaling factor to 0.25 and the maximum sequence length to 8192**
123
+
124
+ #### Looking for Merged & Quantized Models?
125
+ - 30B 4-bit CUDA: [tmpupload/superhot-30b-8k-4bit-safetensors](https://huggingface.co/tmpupload/superhot-30b-8k-4bit-safetensors)
126
+ - 30B 4-bit CUDA 128g: [tmpupload/superhot-30b-8k-4bit-128g-safetensors](https://huggingface.co/tmpupload/superhot-30b-8k-4bit-128g-safetensors)
127
+
128
+
129
+ #### Training Details
130
+ I trained the LoRA with the following configuration:
131
+ - 1200 samples (~400 samples over 2048 sequence length)
132
+ - learning rate of 3e-4
133
+ - 3 epochs
134
+ - The exported modules are:
135
+ - q_proj
136
+ - k_proj
137
+ - v_proj
138
+ - o_proj
139
+ - no bias
140
+ - Rank = 4
141
+ - Alpha = 8
142
+ - no dropout
143
+ - weight decay of 0.1
144
+ - AdamW beta1 of 0.9 and beta2 0.99, epsilon of 1e-5
145
+ - Trained on 4-bit base model
146
+
147
+ # Original model card: Camel AI's CAMEL 13B Role Playing Data
148
+
149
+ CAMEL-13B-Role-Playing-Data is a chat large language model obtained by finetuning LLaMA-13B model on a total of 229K conversations created through our role-playing framework proposed in [CAMEL](https://arxiv.org/abs/2303.17760). We evaluate our model offline using EleutherAI's language model evaluation harness used by Huggingface's Open LLM Benchmark. CAMEL-13B scores an average of 57.2.
150
+ ---
151
+ license: cc-by-nc-4.0
152
+ ---