File size: 11,461 Bytes
6aedad5 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 |
---
language:
- en
pipeline_tag: text-generation
tags:
- unsloth
- axolotl
license: cc-by-nc-nd-4.0
---
# Llama 3 DreamGen Opus V1
<div style="display: flex; flex-direction: row; align-items: center;">
<img src="/dreamgen/opus-v1.4-70b-llama3-exl2-5.0bpw-h8/resolve/main/images/logo-1024.png" alt="model logo" style="
border-radius: 12px;
margin-right: 12px;
margin-top: 0px;
margin-bottom: 0px;
max-width: 100px;
height: auto;
"/>
Models for **(steerable) story-writing and role-playing**.
<br/>[Other quants](https://huggingface.co/collections/dreamgen/dreamgen-opus-v14-70b-llama-3-6672c7b3cf95a2a36d061c6d)
<br/>[Other models](https://huggingface.co/collections/dreamgen/dreamgen-opus-v1-story-writing-and-role-playing-models-65d092a6f8ab7fc669111b31)
</div>
## Resources
- [**Opus V1 prompting guide**](https://dreamgen.com/docs/models/opus/v1?format=llama3) with many prompts and interactive examples you can copy.
- [Story-writing examples](/dreamgen/opus-v1.4-70b-llama3-exl2-5.0bpw-h8/tree/main/images/examples/story-writing) (model output in red)
- [Role-playing examples](/dreamgen/opus-v1.4-70b-llama3-exl2-5.0bpw-h8/tree/main/images/examples/role-playing) (model output in red, including the user turns)
- Join the community on [**Discord**](https://dreamgen.com/discord) to discuss the models.
<img src="/dreamgen/opus-v1.4-70b-llama3-exl2-5.0bpw-h8/resolve/main/images/examples/story-writing/lorindar.png" alt="story writing on dreamgen.com" style="
padding: 12px;
border-radius: 12px;
border: 2px solid #f9a8d4;
background: rgb(9, 9, 11);
"/>
## Prompting
<details>
<summary>This model uses an extended version of the Llama 3 template (click for details).</summary>
Compared to the official Llama 3 template, a new `writer` role was added.
```
<|start_header_id|>system<|end_header_id|>
Lorem ipsum<|eot_id|>
<|start_header_id|>user<|end_header_id|>
Dolor sit amet<|eot_id|>
<|start_header_id|>writer character: Alice<|end_header_id|>
Ut enim ad minim veniam<|eot_id|>
<|start_header_id|>writer character: Bob<|end_header_id|>
Duis aute irure dolor in reprehenderit<|eot_id|>
<|start_header_id|>writer character: Alice + Bob<|end_header_id|>
Excepteur sint occaecat cupidatat non proident<|eot_id|>
```
Concretely, this what the full prompt could look like:
```
<|start_header_id|>system<|end_header_id|>
You are an intelligent, skilled, versatile writer.
Your task is to write a story based on the information below.
## Overall plot description:
In a world where magic is fading, a young mage named Elara embarks on a perilous journey to the Enchanted Forest. There, she hopes to uncover ancient secrets and restore magic to the land, battling dangerous creatures and facing personal trials along the way.
As Elara and Caelan traverse treacherous terrains, face mythical creatures, and unravel the mysteries of the Enchanted Forest, their relationship grows stronger, and they discover the true extent of their own powers. Along the way, they encounter allies and enemies, unearthing the dark forces responsible for the decline of magic. Their ultimate goal is to unlock the ancient magic that lies within the heart of the forest, revitalizing the world and fulfilling their destiny as true protectors of magic.
## Characters:
### Elara
Elara is the protagonist and young mage. Elara is 23 years old. She is a determined and compassionate young
### Caelan
Caelan is Elara's loyal companion and protector. He is a seasoned warrior with a heart of gold. He is known for his exceptional combat skills and unyielding bravery. Caelan has a tragic past intertwined with the loss of his family to a malevolent darkness, fueling his desire to protect others from a similar fate. Despite his initial skepticism towards magic, he develops a deep bond with Elara and becomes her trusted confidante and guardian on their quest. Caelan's unwavering loyalty and formidable swordsmanship prove invaluable throughout their journey.<|eot_id|>
<|start_header_id|>user<|end_header_id|>
In a serene clearing, Elara, a young mage, performs a powerful ritual, awakening the dormant magic in the Enchanted Forest. Vibrant bursts of energy transform the vegetation, filling the air with wonder. Unbeknownst to Elara, a mysterious figure watches from the shadows, setting the stage for an extraordinary adventure that will unravel secrets and determine the fate of the realms.<|eot_id|>
<|start_header_id|>writer<|end_header_id|>
The Enchanted Forest was once a place of magic and wonder, filled with mythical creatures and the most powerful spells known to man. But now, it was a shadow of its former self. The trees were barren, the air was still, and the creatures that once thrived here had all but vanished.
But there was hope. A young mage named Elara had discovered a hidden chamber deep within the forest, filled with ancient artifacts and forgotten knowledge. She had spent months studying these relics, learning their secrets and unlocking their power. And now, on this fateful day, she was ready to perform a powerful ritual that would awaken the dormant magic of the Enchanted Forest.<|eot_id|>
<|start_header_id|>writer character: Elara<|end_header_id|>
In the waning light of dusk, Elara stood in the quiet heart of Aylesford, her focus intent upon the ancient runes etched into the earth before her. The air, usually thrumming with the unspoken words of magic, lay heavy and still around her. Each gesture and incantation, practiced countless times, faltered, as if the very essence of magic was slipping through her fingers like grains of sand.<|eot_id|>
<|start_header_id|>writer character: Caelan<|end_header_id|>
Caelan watched from a distance, his brow furrowed in concern. As the shadows grew longer, he approached, his steps soft upon the grass. "Elara," he began, his voice low, "There are whispers on the wind, tales from far-off lands. They speak of magic waning, of spells unspun and charms undone."<|eot_id|>
<|start_header_id|>writer character: Elara<|end_header_id|>
Elara turned, her eyes wide with fear. “What do you mean?” Her voice trembled with uncertainty, a stark contrast to the confidence that usually filled her being when she cast spells.<|eot_id|>
```
- The `writer` messages can (but don't have to have) `character:`, these are used to indicate the "active" character during role-play.
- There can be multiple subsequent message with a `writer` role, especially if names are involved.
</details>
While the main goal for the models is great story-writing and role-playing performance, the models are also capable of several writing related tasks as well as general assistance.
Read the [official guide](https://dreamgen.com/docs/models/opus/v1?format=llama) to learn how to prompt the model for various tasks beyond story-writing and role-playing, such as summarization, plot idea generation and more.
## Sampling params
For story-writing and role-play, I recommend "Min P" based sampling with `min_p` in the range `[0.01, 0.1]` and with `temperature` in the range `[0.5, 1.5]`, depending on your preferences. A good starting point would be:
- `min_p=0.05`
- `temperature=1.0`
- `presence_penalty=0.1`
- `frequency_penalty=0.1`
## Dataset
The fine-tuning dataset consisted of >100M tokens of steerable story-writing, role-playing, writing-assistant and general-assistant examples. Each example was up to 8192 tokens long.
All story-writing and role-playing examples were based on human-written text.
## Running the model on DreamGen.com (free)
You can run the models on [dreamgen.com](https://dreamgen.com) for free — you can use the built-in UI for story-writing & role-playing, or use [the OpenAI compatible API](https://dreamgen.com/docs/api).
## Running the model locally
The model is should be compatible with any software that supports the base model, but beware of the chat template differences.
- **Make sure your prompt is as close as possible to the Opus V1**
- Regardless of which method you use, it's important that you format your prompt well and that the tokenization works correctly.
- [Read the prompt guide](https://dreamgen.com/docs/models/opus/v1?format=llama3)
- **SillyTavern**
- Use instruct mode with the built in DreamGen Llama 3 presets ([context json](https://github.com/SillyTavern/SillyTavern/blob/staging/default/content/presets/context/DreamGen%20Role-Play%20V1%20Llama3.json), [instruct json](https://github.com/SillyTavern/SillyTavern/blob/staging/default/content/presets/instruct/DreamGen%20Role-Play%20V1%20Llama3.json))
- As a backend I suggest using [Aphrodite](https://github.com/PygmalionAI/aphrodite-engine) with the largest exl2 quant you can fit, but llama.cpp with one of the gguf quants should also work.
- [Official SillyTavern documentation for DreamGen](https://docs.sillytavern.app/usage/api-connections/dreamgen/) -- applies to both the API an local models.
- Character cards specifically optimized for the DreamGen preset:
- [Seraphina](https://docs.sillytavern.app/static/dreamgen/cards/seraphina.png) (based on the default Seraphina card)
- [Lara Lightland](https://docs.sillytavern.app/static/dreamgen/cards/laralightland.png) (based on the card by Deffcolony)
- **LM Studio**
- [Story-Writing Config](configs/lm_stuido/story-writing.json)
- Plot: Battle between Gandalf and Dumbledore
- Here the user is steering the writing of the AI.
- [Role-Playing Config](configs/lm_stuido/role-playing.json)
- Plot: Battle between Gandalf and Dumbledore
- Here the user is playing the role of Gandalf and the AI the role of Dumbledore.
## License
- This model is intended for personal use only, other use is not permitted.
## Writing benchmarks
Here are results from internal gpt-4o judged writing benchmark. In this limited setting, the exl2 4.25 h6 seems on-par with the fp16 version. Of course the benchmark is limited and might not capture all the issues that arise from quantization, these are often more subtle or only apparent on repeated use.
```
Eval stats (total 566)
Model: human
Rank 0 (42.23%): 239
Rank 1 (33.04%): 187
Rank 2 (24.73%): 140
Quality great (37.81%): 214
Quality good (46.47%): 263
Quality ok (15.72%): 89
Model: dreamgen/opus-v1.4-70b-fp16
Rank 0 (28.45%): 161
Rank 1 (34.81%): 197
Rank 2 (36.75%): 208
Quality great (24.91%): 141
Quality good (49.29%): 279
Quality ok (25.27%): 143
Quality bad (0.53%): 3
Model: dreamgen/opus-v1.4-70b-exl2-4.25bpw-h6
Rank 0 (29.33%): 166
Rank 1 (32.16%): 182
Rank 2 (38.52%): 218
Quality great (25.80%): 146
Quality good (46.82%): 265
Quality ok (26.50%): 150
Quality bad (0.88%): 5
Model pair: dreamgen/opus-v1.4-70b-fp16 vs human: 566
dreamgen/opus-v1.4-70b-fp16: 233 (41.17%)
human: 333 (58.83%)
(significant)
dreamgen/opus-v1.4-70b-fp16: 119 (38.02%)
human: 194 (61.98%)
Model pair: dreamgen/opus-v1.4-70b-exl2-4.25bpw-h6 vs human: 566
dreamgen/opus-v1.4-70b-exl2-4.25bpw-h6: 234 (41.34%)
human: 332 (58.66%)
(significant)
dreamgen/opus-v1.4-70b-exl2-4.25bpw-h6: 124 (38.75%)
human: 196 (61.25%)
Model pair: dreamgen/opus-v1.4-70b-exl2-4.25bpw-h6 vs dreamgen/opus-v1.4-70b-fp16: 566
dreamgen/opus-v1.4-70b-exl2-4.25bpw-h6: 280 (49.47%)
dreamgen/opus-v1.4-70b-fp16: 286 (50.53%)
(significant)
dreamgen/opus-v1.4-70b-exl2-4.25bpw-h6: 138 (50.74%)
dreamgen/opus-v1.4-70b-fp16: 134 (49.26%)
``` |