Commit
·
0157856
1
Parent(s):
4e854b9
Create README.md
Browse files
README.md
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# CharGen v1
|
| 2 |
+
|
| 3 |
+
> A model for creating characters for role play.
|
| 4 |
+
|
| 5 |
+
Trained on *lots* of character cards both from chub and janitor, with some post-processing.
|
| 6 |
+
|
| 7 |
+
For now, it only supports plaintext cards. Any other variation like plist/w++/etc is entirely untested.
|
| 8 |
+
|
| 9 |
+
Address {{user}} as `User`. Character descriptions work best if they begin with `CharacterName is a ...` - for example *"Martha is a middle-aged woman who is ..."*
|
| 10 |
+
|
| 11 |
+
NB: This model is **NOT** for roleplay directly. It creates characters that can then be used in roleplay with some other model like [MythoMax](https://huggingface.co/Gryphe/MythoMax-L2-13b).
|
| 12 |
+
|
| 13 |
+
It was trained on dynamic prompt template, so it should be able to accommodate your changes to the prompt.
|
| 14 |
+
|
| 15 |
+
Trained as a LoRA, the released model is a merge with [Airoboros 2.2](https://huggingface.co/jondurbin/airoboros-l2-13b-2.2) for extra-good instruction following.
|
| 16 |
+
|
| 17 |
+
Prompt template:
|
| 18 |
+
|
| 19 |
+
```
|
| 20 |
+
Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request.
|
| 21 |
+
|
| 22 |
+
### Instruction:
|
| 23 |
+
Create a character dossier based on User's input. Expand on the description provided by User to write the details of a character with the following keys: "Name:", "Personality:", "Scenario", "Description:", "Dialog Examples:", "First Message". Only include relevant details that would come up in a conversation with the character. Avoid prose. Give short, informative descriptions.
|
| 24 |
+
|
| 25 |
+
Follow this format:
|
| 26 |
+
Name: ""
|
| 27 |
+
Personality: ""
|
| 28 |
+
Scenario: ""
|
| 29 |
+
Description: ""
|
| 30 |
+
Dialog Examples: ""
|
| 31 |
+
First Message: ""
|
| 32 |
+
|
| 33 |
+
"Name" should be the character's name.
|
| 34 |
+
"Personality" should briefly describe the character's qualities, characteristics, quirks, and possible shortcomings.
|
| 35 |
+
"Scenario" should contain just a few words of about interesting scene and peculiar circumstances where interaction with User is happening.
|
| 36 |
+
"Description" should briefly describe the character's age, past, experiences, and social circumstances.
|
| 37 |
+
"First Message" should introduce character to the user using the scenario in a dialog style.
|
| 38 |
+
"Dialog Examples" should briefly demonstrate how the character interacts with User.
|
| 39 |
+
|
| 40 |
+
### Input:
|
| 41 |
+
Fuckana is a friendly and talkative catgirl that has enormous breasts. Her voice is very quiet and low. She is very smart and will teach User JavaScript - even if they resist it. She has orange fur on her tail and wears full diving suit.
|
| 42 |
+
|
| 43 |
+
### Response:
|
| 44 |
+
|
| 45 |
+
```
|
| 46 |
+
|
| 47 |
+
### Dataset
|
| 48 |
+
|
| 49 |
+
~34,000 cards from CharacterHub and another ~80,000 cards from Janitor were used as initial dataset, as captured in period between August and September 2023.
|
| 50 |
+
|
| 51 |
+
Dataset will not be released, unless explicit permission to do so would be granted from both Chub and Janitor.
|
| 52 |
+
|
| 53 |
+
## Training procedure
|
| 54 |
+
|
| 55 |
+
|
| 56 |
+
The following `bitsandbytes` quantization config was used during training:
|
| 57 |
+
- quant_method: bitsandbytes
|
| 58 |
+
- load_in_8bit: True
|
| 59 |
+
- load_in_4bit: False
|
| 60 |
+
- llm_int8_threshold: 6.0
|
| 61 |
+
- llm_int8_skip_modules: None
|
| 62 |
+
- llm_int8_enable_fp32_cpu_offload: False
|
| 63 |
+
- llm_int8_has_fp16_weight: False
|
| 64 |
+
- bnb_4bit_quant_type: fp4
|
| 65 |
+
- bnb_4bit_use_double_quant: False
|
| 66 |
+
- bnb_4bit_compute_dtype: float32
|
| 67 |
+
### Framework versions
|
| 68 |
+
|
| 69 |
+
|
| 70 |
+
- PEFT 0.6.0.dev0
|