Upload README.md
Browse files
README.md
ADDED
@@ -0,0 +1,550 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
base_model: PocketDoc/Dans-AdventurousWinds-Mk2-7b
|
3 |
+
datasets:
|
4 |
+
- PocketDoc/Floyd-Text-Adventures
|
5 |
+
- PocketDoc/Choose-Your-Story-Long-Text-Adventures
|
6 |
+
inference: false
|
7 |
+
language:
|
8 |
+
- en
|
9 |
+
license: apache-2.0
|
10 |
+
model_creator: PocketDoc Labs
|
11 |
+
model_name: Dans AdventurousWinds Mk2 7B
|
12 |
+
model_type: mistral
|
13 |
+
prompt_template: '[Genres: Science Fiction]
|
14 |
+
|
15 |
+
[Tags: humor, old school, sci fi]
|
16 |
+
|
17 |
+
[Mode: Adventure]
|
18 |
+
|
19 |
+
[Description: A puzzle about committing acts of financial skulduggery and exploiting
|
20 |
+
ridiculous magical items.]
|
21 |
+
|
22 |
+
[Misc: Writing era: 1993]
|
23 |
+
|
24 |
+
[Intro]
|
25 |
+
|
26 |
+
It is the year 2045. You are a young man in his twenties living in New York City.
|
27 |
+
Your father was an inventor who died when you were very small; your mother raised
|
28 |
+
you alone for many years until she remarried. Now you live with your stepfather,
|
29 |
+
but he doesn''t care much for you and has never given you any money to help support
|
30 |
+
yourself. You have no job and little hope of getting one because of your lack of
|
31 |
+
experience. However, you do have some unusual abilities that could be put to good
|
32 |
+
use if only you knew how...
|
33 |
+
|
34 |
+
|
35 |
+
> {prompt}
|
36 |
+
|
37 |
+
'
|
38 |
+
quantized_by: TheBloke
|
39 |
+
---
|
40 |
+
<!-- markdownlint-disable MD041 -->
|
41 |
+
|
42 |
+
<!-- header start -->
|
43 |
+
<!-- 200823 -->
|
44 |
+
<div style="width: auto; margin-left: auto; margin-right: auto">
|
45 |
+
<img src="https://i.imgur.com/EBdldam.jpg" alt="TheBlokeAI" style="width: 100%; min-width: 400px; display: block; margin: auto;">
|
46 |
+
</div>
|
47 |
+
<div style="display: flex; justify-content: space-between; width: 100%;">
|
48 |
+
<div style="display: flex; flex-direction: column; align-items: flex-start;">
|
49 |
+
<p style="margin-top: 0.5em; margin-bottom: 0em;"><a href="https://discord.gg/theblokeai">Chat & support: TheBloke's Discord server</a></p>
|
50 |
+
</div>
|
51 |
+
<div style="display: flex; flex-direction: column; align-items: flex-end;">
|
52 |
+
<p style="margin-top: 0.5em; margin-bottom: 0em;"><a href="https://www.patreon.com/TheBlokeAI">Want to contribute? TheBloke's Patreon page</a></p>
|
53 |
+
</div>
|
54 |
+
</div>
|
55 |
+
<div style="text-align:center; margin-top: 0em; margin-bottom: 0em"><p style="margin-top: 0.25em; margin-bottom: 0em;">TheBloke's LLM work is generously supported by a grant from <a href="https://a16z.com">andreessen horowitz (a16z)</a></p></div>
|
56 |
+
<hr style="margin-top: 1.0em; margin-bottom: 1.0em;">
|
57 |
+
<!-- header end -->
|
58 |
+
|
59 |
+
# Dans AdventurousWinds Mk2 7B - AWQ
|
60 |
+
- Model creator: [PocketDoc Labs](https://huggingface.co/PocketDoc)
|
61 |
+
- Original model: [Dans AdventurousWinds Mk2 7B](https://huggingface.co/PocketDoc/Dans-AdventurousWinds-Mk2-7b)
|
62 |
+
|
63 |
+
<!-- description start -->
|
64 |
+
## Description
|
65 |
+
|
66 |
+
This repo contains AWQ model files for [PocketDoc Labs's Dans AdventurousWinds Mk2 7B](https://huggingface.co/PocketDoc/Dans-AdventurousWinds-Mk2-7b).
|
67 |
+
|
68 |
+
|
69 |
+
### About AWQ
|
70 |
+
|
71 |
+
AWQ is an efficient, accurate and blazing-fast low-bit weight quantization method, currently supporting 4-bit quantization. Compared to GPTQ, it offers faster Transformers-based inference with equivalent or better quality compared to the most commonly used GPTQ settings.
|
72 |
+
|
73 |
+
It is supported by:
|
74 |
+
|
75 |
+
- [Text Generation Webui](https://github.com/oobabooga/text-generation-webui) - using Loader: AutoAWQ
|
76 |
+
- [vLLM](https://github.com/vllm-project/vllm) - Llama and Mistral models only
|
77 |
+
- [Hugging Face Text Generation Inference (TGI)](https://github.com/huggingface/text-generation-inference)
|
78 |
+
- [AutoAWQ](https://github.com/casper-hansen/AutoAWQ) - for use from Python code
|
79 |
+
|
80 |
+
<!-- description end -->
|
81 |
+
<!-- repositories-available start -->
|
82 |
+
## Repositories available
|
83 |
+
|
84 |
+
* [AWQ model(s) for GPU inference.](https://huggingface.co/TheBloke/Dans-AdventurousWinds-Mk2-7B-AWQ)
|
85 |
+
* [GPTQ models for GPU inference, with multiple quantisation parameter options.](https://huggingface.co/TheBloke/Dans-AdventurousWinds-Mk2-7B-GPTQ)
|
86 |
+
* [2, 3, 4, 5, 6 and 8-bit GGUF models for CPU+GPU inference](https://huggingface.co/TheBloke/Dans-AdventurousWinds-Mk2-7B-GGUF)
|
87 |
+
* [PocketDoc Labs's original unquantised fp16 model in pytorch format, for GPU inference and for further conversions](https://huggingface.co/PocketDoc/Dans-AdventurousWinds-Mk2-7b)
|
88 |
+
<!-- repositories-available end -->
|
89 |
+
|
90 |
+
<!-- prompt-template start -->
|
91 |
+
## Prompt template: Adventure
|
92 |
+
|
93 |
+
```
|
94 |
+
[Genres: Science Fiction]
|
95 |
+
[Tags: humor, old school, sci fi]
|
96 |
+
[Mode: Adventure]
|
97 |
+
[Description: A puzzle about committing acts of financial skulduggery and exploiting ridiculous magical items.]
|
98 |
+
[Misc: Writing era: 1993]
|
99 |
+
[Intro]
|
100 |
+
It is the year 2045. You are a young man in his twenties living in New York City. Your father was an inventor who died when you were very small; your mother raised you alone for many years until she remarried. Now you live with your stepfather, but he doesn't care much for you and has never given you any money to help support yourself. You have no job and little hope of getting one because of your lack of experience. However, you do have some unusual abilities that could be put to good use if only you knew how...
|
101 |
+
|
102 |
+
> {prompt}
|
103 |
+
|
104 |
+
```
|
105 |
+
|
106 |
+
<!-- prompt-template end -->
|
107 |
+
|
108 |
+
|
109 |
+
<!-- README_AWQ.md-provided-files start -->
|
110 |
+
## Provided files, and AWQ parameters
|
111 |
+
|
112 |
+
For my first release of AWQ models, I am releasing 128g models only. I will consider adding 32g as well if there is interest, and once I have done perplexity and evaluation comparisons, but at this time 32g models are still not fully tested with AutoAWQ and vLLM.
|
113 |
+
|
114 |
+
Models are released as sharded safetensors files.
|
115 |
+
|
116 |
+
| Branch | Bits | GS | AWQ Dataset | Seq Len | Size |
|
117 |
+
| ------ | ---- | -- | ----------- | ------- | ---- |
|
118 |
+
| [main](https://huggingface.co/TheBloke/Dans-AdventurousWinds-Mk2-7B-AWQ/tree/main) | 4 | 128 | [wikitext](https://huggingface.co/datasets/wikitext/viewer/wikitext-2-v1/test) | 4096 | 4.15 GB
|
119 |
+
|
120 |
+
<!-- README_AWQ.md-provided-files end -->
|
121 |
+
|
122 |
+
<!-- README_AWQ.md-text-generation-webui start -->
|
123 |
+
## How to easily download and use this model in [text-generation-webui](https://github.com/oobabooga/text-generation-webui)
|
124 |
+
|
125 |
+
Please make sure you're using the latest version of [text-generation-webui](https://github.com/oobabooga/text-generation-webui).
|
126 |
+
|
127 |
+
It is strongly recommended to use the text-generation-webui one-click-installers unless you're sure you know how to make a manual install.
|
128 |
+
|
129 |
+
1. Click the **Model tab**.
|
130 |
+
2. Under **Download custom model or LoRA**, enter `TheBloke/Dans-AdventurousWinds-Mk2-7B-AWQ`.
|
131 |
+
3. Click **Download**.
|
132 |
+
4. The model will start downloading. Once it's finished it will say "Done".
|
133 |
+
5. In the top left, click the refresh icon next to **Model**.
|
134 |
+
6. In the **Model** dropdown, choose the model you just downloaded: `Dans-AdventurousWinds-Mk2-7B-AWQ`
|
135 |
+
7. Select **Loader: AutoAWQ**.
|
136 |
+
8. Click Load, and the model will load and is now ready for use.
|
137 |
+
9. If you want any custom settings, set them and then click **Save settings for this model** followed by **Reload the Model** in the top right.
|
138 |
+
10. Once you're ready, click the **Text Generation** tab and enter a prompt to get started!
|
139 |
+
<!-- README_AWQ.md-text-generation-webui end -->
|
140 |
+
|
141 |
+
<!-- README_AWQ.md-use-from-vllm start -->
|
142 |
+
## Multi-user inference server: vLLM
|
143 |
+
|
144 |
+
Documentation on installing and using vLLM [can be found here](https://vllm.readthedocs.io/en/latest/).
|
145 |
+
|
146 |
+
- Please ensure you are using vLLM version 0.2 or later.
|
147 |
+
- When using vLLM as a server, pass the `--quantization awq` parameter.
|
148 |
+
|
149 |
+
For example:
|
150 |
+
|
151 |
+
```shell
|
152 |
+
python3 python -m vllm.entrypoints.api_server --model TheBloke/Dans-AdventurousWinds-Mk2-7B-AWQ --quantization awq
|
153 |
+
```
|
154 |
+
|
155 |
+
- When using vLLM from Python code, again set `quantization=awq`.
|
156 |
+
|
157 |
+
For example:
|
158 |
+
|
159 |
+
```python
|
160 |
+
from vllm import LLM, SamplingParams
|
161 |
+
|
162 |
+
prompts = [
|
163 |
+
"Tell me about AI",
|
164 |
+
"Write a story about llamas",
|
165 |
+
"What is 291 - 150?",
|
166 |
+
"How much wood would a woodchuck chuck if a woodchuck could chuck wood?",
|
167 |
+
]
|
168 |
+
prompt_template=f'''[Genres: Science Fiction]
|
169 |
+
[Tags: humor, old school, sci fi]
|
170 |
+
[Mode: Adventure]
|
171 |
+
[Description: A puzzle about committing acts of financial skulduggery and exploiting ridiculous magical items.]
|
172 |
+
[Misc: Writing era: 1993]
|
173 |
+
[Intro]
|
174 |
+
It is the year 2045. You are a young man in his twenties living in New York City. Your father was an inventor who died when you were very small; your mother raised you alone for many years until she remarried. Now you live with your stepfather, but he doesn't care much for you and has never given you any money to help support yourself. You have no job and little hope of getting one because of your lack of experience. However, you do have some unusual abilities that could be put to good use if only you knew how...
|
175 |
+
|
176 |
+
> {prompt}
|
177 |
+
'''
|
178 |
+
|
179 |
+
prompts = [prompt_template.format(prompt=prompt) for prompt in prompts]
|
180 |
+
|
181 |
+
sampling_params = SamplingParams(temperature=0.8, top_p=0.95)
|
182 |
+
|
183 |
+
llm = LLM(model="TheBloke/Dans-AdventurousWinds-Mk2-7B-AWQ", quantization="awq", dtype="auto")
|
184 |
+
|
185 |
+
outputs = llm.generate(prompts, sampling_params)
|
186 |
+
|
187 |
+
# Print the outputs.
|
188 |
+
for output in outputs:
|
189 |
+
prompt = output.prompt
|
190 |
+
generated_text = output.outputs[0].text
|
191 |
+
print(f"Prompt: {prompt!r}, Generated text: {generated_text!r}")
|
192 |
+
```
|
193 |
+
<!-- README_AWQ.md-use-from-vllm start -->
|
194 |
+
|
195 |
+
<!-- README_AWQ.md-use-from-tgi start -->
|
196 |
+
## Multi-user inference server: Hugging Face Text Generation Inference (TGI)
|
197 |
+
|
198 |
+
Use TGI version 1.1.0 or later. The official Docker container is: `ghcr.io/huggingface/text-generation-inference:1.1.0`
|
199 |
+
|
200 |
+
Example Docker parameters:
|
201 |
+
|
202 |
+
```shell
|
203 |
+
--model-id TheBloke/Dans-AdventurousWinds-Mk2-7B-AWQ --port 3000 --quantize awq --max-input-length 3696 --max-total-tokens 4096 --max-batch-prefill-tokens 4096
|
204 |
+
```
|
205 |
+
|
206 |
+
Example Python code for interfacing with TGI (requires [huggingface-hub](https://github.com/huggingface/huggingface_hub) 0.17.0 or later):
|
207 |
+
|
208 |
+
```shell
|
209 |
+
pip3 install huggingface-hub
|
210 |
+
```
|
211 |
+
|
212 |
+
```python
|
213 |
+
from huggingface_hub import InferenceClient
|
214 |
+
|
215 |
+
endpoint_url = "https://your-endpoint-url-here"
|
216 |
+
|
217 |
+
prompt = "Tell me about AI"
|
218 |
+
prompt_template=f'''[Genres: Science Fiction]
|
219 |
+
[Tags: humor, old school, sci fi]
|
220 |
+
[Mode: Adventure]
|
221 |
+
[Description: A puzzle about committing acts of financial skulduggery and exploiting ridiculous magical items.]
|
222 |
+
[Misc: Writing era: 1993]
|
223 |
+
[Intro]
|
224 |
+
It is the year 2045. You are a young man in his twenties living in New York City. Your father was an inventor who died when you were very small; your mother raised you alone for many years until she remarried. Now you live with your stepfather, but he doesn't care much for you and has never given you any money to help support yourself. You have no job and little hope of getting one because of your lack of experience. However, you do have some unusual abilities that could be put to good use if only you knew how...
|
225 |
+
|
226 |
+
> {prompt}
|
227 |
+
'''
|
228 |
+
|
229 |
+
client = InferenceClient(endpoint_url)
|
230 |
+
response = client.text_generation(prompt,
|
231 |
+
max_new_tokens=128,
|
232 |
+
do_sample=True,
|
233 |
+
temperature=0.7,
|
234 |
+
top_p=0.95,
|
235 |
+
top_k=40,
|
236 |
+
repetition_penalty=1.1)
|
237 |
+
|
238 |
+
print(f"Model output: ", response)
|
239 |
+
```
|
240 |
+
<!-- README_AWQ.md-use-from-tgi end -->
|
241 |
+
|
242 |
+
<!-- README_AWQ.md-use-from-python start -->
|
243 |
+
## Inference from Python code using AutoAWQ
|
244 |
+
|
245 |
+
### Install the AutoAWQ package
|
246 |
+
|
247 |
+
Requires: [AutoAWQ](https://github.com/casper-hansen/AutoAWQ) 0.1.1 or later.
|
248 |
+
|
249 |
+
```shell
|
250 |
+
pip3 install autoawq
|
251 |
+
```
|
252 |
+
|
253 |
+
If you have problems installing [AutoAWQ](https://github.com/casper-hansen/AutoAWQ) using the pre-built wheels, install it from source instead:
|
254 |
+
|
255 |
+
```shell
|
256 |
+
pip3 uninstall -y autoawq
|
257 |
+
git clone https://github.com/casper-hansen/AutoAWQ
|
258 |
+
cd AutoAWQ
|
259 |
+
pip3 install .
|
260 |
+
```
|
261 |
+
|
262 |
+
### AutoAWQ example code
|
263 |
+
|
264 |
+
```python
|
265 |
+
from awq import AutoAWQForCausalLM
|
266 |
+
from transformers import AutoTokenizer
|
267 |
+
|
268 |
+
model_name_or_path = "TheBloke/Dans-AdventurousWinds-Mk2-7B-AWQ"
|
269 |
+
|
270 |
+
# Load tokenizer
|
271 |
+
tokenizer = AutoTokenizer.from_pretrained(model_name_or_path, trust_remote_code=False)
|
272 |
+
# Load model
|
273 |
+
model = AutoAWQForCausalLM.from_quantized(model_name_or_path, fuse_layers=True,
|
274 |
+
trust_remote_code=False, safetensors=True)
|
275 |
+
|
276 |
+
prompt = "Tell me about AI"
|
277 |
+
prompt_template=f'''[Genres: Science Fiction]
|
278 |
+
[Tags: humor, old school, sci fi]
|
279 |
+
[Mode: Adventure]
|
280 |
+
[Description: A puzzle about committing acts of financial skulduggery and exploiting ridiculous magical items.]
|
281 |
+
[Misc: Writing era: 1993]
|
282 |
+
[Intro]
|
283 |
+
It is the year 2045. You are a young man in his twenties living in New York City. Your father was an inventor who died when you were very small; your mother raised you alone for many years until she remarried. Now you live with your stepfather, but he doesn't care much for you and has never given you any money to help support yourself. You have no job and little hope of getting one because of your lack of experience. However, you do have some unusual abilities that could be put to good use if only you knew how...
|
284 |
+
|
285 |
+
> {prompt}
|
286 |
+
'''
|
287 |
+
|
288 |
+
print("*** Running model.generate:")
|
289 |
+
|
290 |
+
token_input = tokenizer(
|
291 |
+
prompt_template,
|
292 |
+
return_tensors='pt'
|
293 |
+
).input_ids.cuda()
|
294 |
+
|
295 |
+
# Generate output
|
296 |
+
generation_output = model.generate(
|
297 |
+
token_input,
|
298 |
+
do_sample=True,
|
299 |
+
temperature=0.7,
|
300 |
+
top_p=0.95,
|
301 |
+
top_k=40,
|
302 |
+
max_new_tokens=512
|
303 |
+
)
|
304 |
+
|
305 |
+
# Get the tokens from the output, decode them, print them
|
306 |
+
token_output = generation_output[0]
|
307 |
+
text_output = tokenizer.decode(token_output)
|
308 |
+
print("LLM output: ", text_output)
|
309 |
+
|
310 |
+
"""
|
311 |
+
# Inference should be possible with transformers pipeline as well in future
|
312 |
+
# But currently this is not yet supported by AutoAWQ (correct as of September 25th 2023)
|
313 |
+
from transformers import pipeline
|
314 |
+
|
315 |
+
print("*** Pipeline:")
|
316 |
+
pipe = pipeline(
|
317 |
+
"text-generation",
|
318 |
+
model=model,
|
319 |
+
tokenizer=tokenizer,
|
320 |
+
max_new_tokens=512,
|
321 |
+
do_sample=True,
|
322 |
+
temperature=0.7,
|
323 |
+
top_p=0.95,
|
324 |
+
top_k=40,
|
325 |
+
repetition_penalty=1.1
|
326 |
+
)
|
327 |
+
|
328 |
+
print(pipe(prompt_template)[0]['generated_text'])
|
329 |
+
"""
|
330 |
+
```
|
331 |
+
<!-- README_AWQ.md-use-from-python end -->
|
332 |
+
|
333 |
+
<!-- README_AWQ.md-compatibility start -->
|
334 |
+
## Compatibility
|
335 |
+
|
336 |
+
The files provided are tested to work with:
|
337 |
+
|
338 |
+
- [text-generation-webui](https://github.com/oobabooga/text-generation-webui) using `Loader: AutoAWQ`.
|
339 |
+
- [vLLM](https://github.com/vllm-project/vllm) version 0.2.0 and later.
|
340 |
+
- [Hugging Face Text Generation Inference (TGI)](https://github.com/huggingface/text-generation-inference) version 1.1.0 and later.
|
341 |
+
- [AutoAWQ](https://github.com/casper-hansen/AutoAWQ) version 0.1.1 and later.
|
342 |
+
|
343 |
+
<!-- README_AWQ.md-compatibility end -->
|
344 |
+
|
345 |
+
<!-- footer start -->
|
346 |
+
<!-- 200823 -->
|
347 |
+
## Discord
|
348 |
+
|
349 |
+
For further support, and discussions on these models and AI in general, join us at:
|
350 |
+
|
351 |
+
[TheBloke AI's Discord server](https://discord.gg/theblokeai)
|
352 |
+
|
353 |
+
## Thanks, and how to contribute
|
354 |
+
|
355 |
+
Thanks to the [chirper.ai](https://chirper.ai) team!
|
356 |
+
|
357 |
+
Thanks to Clay from [gpus.llm-utils.org](llm-utils)!
|
358 |
+
|
359 |
+
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.
|
360 |
+
|
361 |
+
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.
|
362 |
+
|
363 |
+
Donaters will get priority support on any and all AI/LLM/model questions and requests, access to a private Discord room, plus other benefits.
|
364 |
+
|
365 |
+
* Patreon: https://patreon.com/TheBlokeAI
|
366 |
+
* Ko-Fi: https://ko-fi.com/TheBlokeAI
|
367 |
+
|
368 |
+
**Special thanks to**: Aemon Algiz.
|
369 |
+
|
370 |
+
**Patreon special mentions**: Pierre Kircher, Stanislav Ovsiannikov, Michael Levine, Eugene Pentland, Andrey, 준교 김, Randy H, Fred von Graf, Artur Olbinski, Caitlyn Gatomon, terasurfer, Jeff Scroggin, James Bentley, Vadim, Gabriel Puliatti, Harry Royden McLaughlin, Sean Connelly, Dan Guido, Edmond Seymore, Alicia Loh, subjectnull, AzureBlack, Manuel Alberto Morcote, Thomas Belote, Lone Striker, Chris Smitley, Vitor Caleffi, Johann-Peter Hartmann, Clay Pascal, biorpg, Brandon Frisco, sidney chen, transmissions 11, Pedro Madruga, jinyuan sun, Ajan Kanaga, Emad Mostaque, Trenton Dambrowitz, Jonathan Leane, Iucharbius, usrbinkat, vamX, George Stoitzev, Luke Pendergrass, theTransient, Olakabola, Swaroop Kallakuri, Cap'n Zoog, Brandon Phillips, Michael Dempsey, Nikolai Manek, danny, Matthew Berman, Gabriel Tamborski, alfie_i, Raymond Fosdick, Tom X Nguyen, Raven Klaugh, LangChain4j, Magnesian, Illia Dulskyi, David Ziegler, Mano Prime, Luis Javier Navarrete Lozano, Erik Bjäreholt, 阿明, Nathan Dryer, Alex, Rainer Wilmers, zynix, TL, Joseph William Delisle, John Villwock, Nathan LeClaire, Willem Michiel, Joguhyik, GodLy, OG, Alps Aficionado, Jeffrey Morgan, ReadyPlayerEmma, Tiffany J. Kim, Sebastain Graf, Spencer Kim, Michael Davis, webtim, Talal Aujan, knownsqashed, John Detwiler, Imad Khwaja, Deo Leter, Jerry Meng, Elijah Stavena, Rooh Singh, Pieter, SuperWojo, Alexandros Triantafyllidis, Stephen Murray, Ai Maven, ya boyyy, Enrico Ros, Ken Nordquist, Deep Realms, Nicholas, Spiking Neurons AB, Elle, Will Dee, Jack West, RoA, Luke @flexchar, Viktor Bowallius, Derek Yates, Subspace Studios, jjj, Toran Billups, Asp the Wyvern, Fen Risland, Ilya, NimbleBox.ai, Chadd, Nitin Borwankar, Emre, Mandus, Leonard Tan, Kalila, K, Trailburnt, S_X, Cory Kujawski
|
371 |
+
|
372 |
+
|
373 |
+
Thank you to all my generous patrons and donaters!
|
374 |
+
|
375 |
+
And thank you again to a16z for their generous grant.
|
376 |
+
|
377 |
+
<!-- footer end -->
|
378 |
+
|
379 |
+
# Original model card: PocketDoc Labs's Dans AdventurousWinds Mk2 7B
|
380 |
+
|
381 |
+
|
382 |
+
**16k training sequences**
|
383 |
+
|
384 |
+
# What is the model for?
|
385 |
+
|
386 |
+
This model is proficient in crafting text-based adventure games. It can both concise replies and more expansive, novel-like descriptions. The ability to alternate between these two response styles can be triggered by a distinct system message.
|
387 |
+
|
388 |
+
# What's in the sausage?
|
389 |
+
|
390 |
+
This model was trained on [Mistral-7b](https://huggingface.co/mistralai/Mistral-7B-v0.1) using a custom version of the floyd and cys datasets from the skein text adventure dataset. The dataset has been improved over what was used in my previous model Dans-AdventurousWinds, in addition it had been trained on 16k sequence lengths.
|
391 |
+
|
392 |
+
## Prompt format and examples:
|
393 |
+
#### Format description:
|
394 |
+
|
395 |
+
Traditional adventure format with a description of the genre, tags, and other misc information at the top followed by an optional introductory message. User messages are prefixed with two new lines and "> ", model messages are one new line after the last user message or the description message if an introductory message is desired.
|
396 |
+
|
397 |
+
#### Examples of shorter responses:
|
398 |
+
|
399 |
+
|
400 |
+
> [Genres: Science Fiction]
|
401 |
+
> [Tags: humor, old school, sci fi]
|
402 |
+
> [Mode: Adventure]
|
403 |
+
> [Description: A puzzle about committing acts of financial skulduggery and exploiting ridiculous magical items.]
|
404 |
+
> [Misc: Writing era: 1993]
|
405 |
+
> [Intro]
|
406 |
+
> You are an interstellar trader.
|
407 |
+
>
|
408 |
+
> On your way to the galactic capital of Coruscant to sell a large quantity of fettucini, you make a detour through a planetary system with a reputation for being dangerous and unstable. The reason is simple -- there is a very powerful magical item known as "The Sword Of Damocles" up for sale. You have no idea what it does, but you've heard that the previous owners all ended up dead or broke. In other words, these people were so desperate to get rid of the sword that they would probably be willing to take almost any price. It sounds like a great deal!
|
409 |
+
>
|
410 |
+
> Of course, you don't have enough money to buy the sword outright, which means that you will need to find some way to finance the purchase. There is only one possible source of funds in this part of space -- the loan sharks who operate out of a nearby planet called Riggerton. But these loans come at a high interest rate; if you can't pay them back quickly, you may end up losing everything.
|
411 |
+
>
|
412 |
+
> You also know that there are several potential buyers vying for ownership of the sword, including some of the most ruthless criminals in the galaxy. These people might be willing to kill each other over this object, making it more valuable than ever before! However, they are notoriously paranoid and suspicious, so you must proceed with extreme caution when dealing with them...
|
413 |
+
>
|
414 |
+
> Finally, there is always the chance that someone else will beat you to the punch by buying the sword first. If that happens then you won't be able to afford it anymore anyway, so maybe it doesn't matter too much?
|
415 |
+
>
|
416 |
+
> In any case, good luck! And remember: never borrow money from anyone unless you absolutely trust him completely. Otherwise he could turn around and sell YOU into slavery instead!
|
417 |
+
>
|
418 |
+
> Ready? Then let's begin...
|
419 |
+
>
|
420 |
+
> \> You snap out of your daydream and remember you're still in port.
|
421 |
+
> You should probably get ready to go somewhere now...
|
422 |
+
>
|
423 |
+
> There are three main places where traders usually hang out: the docking bay (where ships land), the casino (a place where people gamble) and the black market (an illegal bazaar). Each has its own advantages and disadvantages depending on what kind of goods you want to trade. For example, the docking bay is the safest option because it's run by the government, but it charges higher taxes; while the black market is riskier but cheaper.
|
424 |
+
>
|
425 |
+
> So where do you think you ought to go?
|
426 |
+
>
|
427 |
+
> \> You get ready for launch
|
428 |
+
> Okay, I guess we better start looking for something interesting then...
|
429 |
+
>
|
430 |
+
> Before we leave though, I just wanted to mention that there are two ways to travel between planets: hyperspace jumps and wormholes. Both methods require special technology that only exists inside starships, but they work differently.
|
431 |
+
>
|
432 |
+
> A hyperspace jump involves using a hyperdrive engine to accelerate faster than light speed until you reach another galaxy entirely. Once there, you slow down again and return home. This method takes longer than a wormhole, but it allows you to visit distant worlds without having to worry about getting lost along the way.
|
433 |
+
>
|
434 |
+
> Wormholes however, allow you to travel instantly across vast distances without needing to slow down at either end. Unfortunately, this type of transportation isn't available everywhere, plus it requires extremely powerful computers to map out their locations accurately. Still, if you happen to find yourself near one of these things then I strongly recommend taking advantage of it since it saves time.
|
435 |
+
>
|
436 |
+
> Anyway, let me know whenever you're ready to go. We'll see how far away our next stop lies...
|
437 |
+
>
|
438 |
+
> \> You check the database on wormhole technology
|
439 |
+
> Okay, here goes nothing...
|
440 |
+
>
|
441 |
+
> According to my research, there are currently three types of wormholes known to science: stable, unstable and artificial. Stable ones occur naturally throughout the universe and tend to stay open permanently. Unstable ones close after passing through once, whereas artificially created ones remain open indefinitely.
|
442 |
+
>
|
443 |
+
> As far as I know, none of these types are suitable for commercial use yet. However, scientists believe that further development will eventually lead to practical applications in areas such as teleportation and faster-than-light travel. Until then though, I doubt whether anything useful can be achieved simply by reading books about the subject.
|
444 |
+
>
|
445 |
+
> Sorry if I disappointed you there, but I hope this information proves useful nonetheless. Good luck with whatever comes next!
|
446 |
+
>
|
447 |
+
> P.S.: Before leaving, please ensure that all loose objects have been put away properly. Otherwise they could fall off the ship during flight and cause damage later on. Thanks!
|
448 |
+
|
449 |
+
|
450 |
+
#### Examples of longer novel like responses:
|
451 |
+
|
452 |
+
|
453 |
+
> [Genres: grimdark fantasy] [Tags: Fantasy, Grimdark, Serious, Villain Protagonist, War] [Description: This story is definitely more "story" than "game", however there are two distinct paths that can be followed, each with their own pitfalls and additional choices. This story can get long, and assuming you're surviving, years do pass in it and you and your environment will change.] [First message intro] [Mode: Interactive Storyteller]
|
454 |
+
> You have been a mercenary for many years now. You are an accomplished warrior and battlefield commander. Your company consists of about 50 men and women. Most are veteran soldiers from different countries, some even from as far away as the Americas. They are all loyal to you. The only thing keeping them from being devoted followers would be your atheism.
|
455 |
+
>
|
456 |
+
> The war has raged on for many years now. The enemy, the Kingdom of Erenland, is a nation of fanatics who worship a single god called Galdrin. Their religion spread across the land like wildfire after their king ascended to the throne. He declared himself a prophet and made his people believe they were invincible. They started invading neighboring nations to bring them into the fold. The king of your homeland, King Dagor, was one of the first to resist this. When he refused to allow missionaries into his country, the Erenlanders invaded anyway. It took several years before King Dagor managed to gather enough forces to repel the invasion. The war lasted for decades and finally ended when Dagor's grandson ascended to the throne. At that point, both sides realized how much blood had already been spilled and agreed to a truce.
|
457 |
+
>
|
458 |
+
> Unfortunately, the peace didn't last very long. A few years ago, King Dagor II died without any children. His cousin became the new monarch but she was weak and incompetent. She allowed her advisors to make most of the important decisions while she spent her time partying with nobles from other nations. One of these advisors convinced the queen to send troops to help quell rebellions that were taking place in the Erenlander cities. These rebellions were caused by dissatisfaction with the way the crown was handling things. They wanted to overthrow their ruler and install a new one that would listen to them.
|
459 |
+
>
|
460 |
+
> When word reached the court that the rebels had succeeded in killing the king, everyone panicked. The Queen ordered her army to march north immediately. Unfortunately, she hadn't thought through what would happen if the enemy army attacked during this period of chaos. The result was disastrous. The Erenlanders caught our army completely off guard and annihilated us almost entirely. Only a handful survived to tell the tale. Among those survivors was you.
|
461 |
+
>
|
462 |
+
> You have come back home to bury your fallen comrades. You know you won't find rest until you avenge their deaths. But where do you begin? How do you stop an entire nation from going to war against yours? And how do you convince others to join you when they see you as nothing more than a madman bent on destruction?
|
463 |
+
>
|
464 |
+
> These questions haunt you every night. You lie awake staring at the ceiling wondering how you could possibly make things right again. Then you remember something...
|
465 |
+
>
|
466 |
+
> There was once a great hero named Galadar who lived hundreds of years ago. He fought against tyranny and oppression throughout his lifetime. People said that he possessed magical powers which gave him strength beyond anything mortal. Some even claimed that he walked among the stars. After retiring from active duty, Galadar vanished mysteriously. No one knows where he went or why. Rumors say that he returned to fight alongside the gods against evil forces threatening to destroy existence itself. Whatever happened to him, no one knows for sure. All we do know is that his legacy lives on today through those who follow his example. Perhaps you too can become such a person. Perhaps you can use your talents to save the world from darkness just like he did so long ago. If you feel ready, then take up arms and prepare yourself for battle!
|
467 |
+
>
|
468 |
+
> Your journey begins here...
|
469 |
+
>
|
470 |
+
> You wake up feeling refreshed after a good night's sleep. You look around your bedroom and notice that everything seems normal. There isn't anyone else around except for your wife, who lies sleeping next to you. You turn towards her and smile softly. She stirs slightly and mumbles something incoherent. You stroke her hair gently and whisper sweet nothings into her ear. Soon she falls back asleep and you decide to leave her alone.
|
471 |
+
>
|
472 |
+
> As soon as you step outside your house, you hear voices coming from behind you. Turning quickly, you spot three young boys running down the street toward you. They stop suddenly and stare at you wide eyed. "Are you the man who killed the giants?" one asks nervously.
|
473 |
+
>
|
474 |
+
> You nod slowly. "Yes," you reply.
|
475 |
+
>
|
476 |
+
> "Then I guess we should thank you." Another boy adds.
|
477 |
+
>
|
478 |
+
> "Yeah," says the third one. "We heard that giants ate babies."
|
479 |
+
>
|
480 |
+
> You shake your head sadly. "No," you explain. "Giants don't eat babies. That's just a myth."
|
481 |
+
>
|
482 |
+
> "Oh really?" the first boy says skeptically. "Well then why did my parents move away from their village?"
|
483 |
+
>
|
484 |
+
> "I dunno," you shrug. "Maybe because they believed the same thing you did."
|
485 |
+
>
|
486 |
+
> The three kids look surprised. Then they laugh heartily together. "Haha!" they giggle. "That's funny!"
|
487 |
+
>
|
488 |
+
> You grin back at them. "Thanks."
|
489 |
+
>
|
490 |
+
> They run off laughing hysterically. You chuckle quietly to yourself. Kids are always full of surprises.
|
491 |
+
>
|
492 |
+
> After spending some quality time with your family, you return home early in the afternoon. You grab a cup of tea and sit down at the kitchen table to read the newspaper. As usual, most of the stories involve wars somewhere else in the world. There aren't any articles related to your own conflict yet though. Maybe tomorrow...
|
493 |
+
>
|
494 |
+
> Suddenly, you hear loud knocking on the front door. You stand up abruptly and rush over to answer it. Standing before you is an old man wearing a long beard and holding a staff in his hand. He looks familiar somehow.
|
495 |
+
>
|
496 |
+
> "Hello sir," he greets politely. "My name is Galanis. I am here representing the Academy of Magic Studies."
|
497 |
+
>
|
498 |
+
> "Ah yes," you respond. "I remember seeing advertisements for your school everywhere recently. What can I do for you?"
|
499 |
+
>
|
500 |
+
> "Well sir," he begins, "we have received reports that you possess certain abilities which fall under our area of expertise. Specifically, we understand that you are capable of controlling fire using mental telepathy. Is this true?"
|
501 |
+
>
|
502 |
+
> You nod slowly. "It certainly is."
|
503 |
+
>
|
504 |
+
> "Excellent," he smiles happily. "In light of these circumstances, I would like to offer you a position teaching at our academy. We require instructors skilled in various aspects of magic including conjuration, enchantment, necromancy, divination, alchemy, and astrology."
|
505 |
+
>
|
506 |
+
> You shake your head firmly. "I appreciate the offer Mr. Galanis but I must decline. My duties lie elsewhere right now."
|
507 |
+
>
|
508 |
+
> His face falls momentarily. "Very well then," he sighs dejectedly. "Perhaps another opportunity will arise later on."
|
509 |
+
>
|
510 |
+
> With that said, he turns around and leaves without saying another word. You watch him depart silently wondering whether you should have accepted his proposal. On the one hand, it might provide some distraction from the war. On the other hand, you doubt you could ever fit into such a structured environment. Besides, you wouldn't want to spend years away from home either. In the end, you decide to stay put and continue doing what you've always done best - fighting for justice.
|
511 |
+
>
|
512 |
+
> \> You go to the great library
|
513 |
+
> You enter the Great Library of Alexandria hoping to gain knowledge about the Erenlander religion. Unfortunately, you find out that nobody there knows anything about it. The closest thing resembling a book on the subject is a small pamphlet titled "A Brief Overview Of Religion". According to its author, the writer claims that religions differ mainly due to differences between societies. Each society creates its own beliefs based upon its unique experiences. Since no two cultures are alike, there cannot be any universal truth regarding divine matters. Therefore, there is no reason to expect one religion to be superior over another.
|
514 |
+
>
|
515 |
+
> You think deeply about this concept. Does it apply to the Erenlander faith? Are their beliefs simply an expression of local customs rather than absolute truths? Or does their doctrine truly reflect reality? These thoughts weigh heavily upon your mind. Suddenly, you hear someone calling your name. Turning around, you spot a librarian approaching you.
|
516 |
+
>
|
517 |
+
> "Mr. Thane," he says cheerfully. "Can I help you find something specific?"
|
518 |
+
>
|
519 |
+
> "Actually yes," you reply. "Do you happen to know anything about the Erenlander religion?"
|
520 |
+
>
|
521 |
+
> He scratches his chin thoughtfully. "Not really," he admits. "But let me show you something anyway." He leads you over to a large table covered with books. Picking one up randomly, he starts reading aloud from it.
|
522 |
+
>
|
523 |
+
> "According to ancient legends, Galdrin created the universe out of nothingness. Before that, nothing existed except pure chaos. Out of this void came forth life and light. With these gifts, Galdrin blessed humanity with wisdom and understanding. Through hard work and determination, humankind learned how to cultivate crops, build shelters, manufacture weapons, develop technology, establish governments, maintain order, and defend itself against enemies. By following the teachings of Galdrin, humans were able to rise above mere animals and achieve greatness beyond compare. Those who rejected his teachings fell victim to ignorance and decay. Eventually, their civilization collapsed leaving only ruins behind. Today, descendants of those original settlers still live amongst us. Although their culture has changed considerably since antiquity, they retain many traditions common among modern-day peoples. Their language remains virtually unchanged despite centuries of contact with foreign languages. Their art forms range widely ranging from poetry to sculpture to music. Their religion continues to flourish despite attempts to suppress it throughout history. And most importantly, their belief system continues to guide them along the path of righteousness."
|
524 |
+
>
|
525 |
+
> You listen intently as he speaks. His words seem familiar somehow. Has he told you this story before? Or perhaps it was passed down through generations within your family? Either way, you find yourself drawn into the narrative. Before long, you forget everything else happening around you. Everything fades away except for the sound of his voice echoing throughout your ears.
|
526 |
+
>
|
527 |
+
> "So why did Galdrin create the world?" the librarian finishes. "Because he loved us," he answers softly. "And because he knew we needed somewhere safe to call home."
|
528 |
+
>
|
529 |
+
> You nod slowly. "Thank you," you murmur. "That was quite interesting."
|
530 |
+
>
|
531 |
+
> "Glad to hear it," he grins broadly. "If you ever need anything else, please feel free to ask."
|
532 |
+
>
|
533 |
+
> You bid farewell to the librarian and walk back home. During the journey, you ponder over what you learned earlier. Did Galdrin actually exist? Was he real or imaginary? Could he possibly be connected to the Erenlander faith somehow? So many questions remain unanswered. Still, you sense that something significant occurred tonight. Something special transpired inside the library walls. Now, you must figure out exactly what happened.
|
534 |
+
|
535 |
+
|
536 |
+
# Some quick and dirty training details:
|
537 |
+
|
538 |
+
- [<img src="https://raw.githubusercontent.com/OpenAccess-AI-Collective/axolotl/main/image/axolotl-badge-web.png" alt="Built with Axolotl" width="150" height="24"/>](https://github.com/OpenAccess-AI-Collective/axolotl)
|
539 |
+
- Sequence length: 16384
|
540 |
+
- \# of epochs: 3
|
541 |
+
- Training time: 5 hours
|
542 |
+
- Hardware: 4x RTX 4090
|
543 |
+
- Training type: QLoRA
|
544 |
+
- PEFT R/A: 32/32
|
545 |
+
|
546 |
+
|
547 |
+
# Credits:
|
548 |
+
### Skein Text Adventure Data:
|
549 |
+
|
550 |
+
Thank you to the [Kobold AI](https://huggingface.co/KoboldAI) community for curating the Skein dataset, which is pivotal to this model's capabilities.
|