đ CharGen v2
CharGen v2 is a powerful model designed to assist users in crafting characters for role - playing. It generates character descriptions step - by - step in a dialogue format, reducing repetition and enabling partial re - rolls of character fields.

đ Quick Start
Live version
You can access the live version of CharGen v2 at https://chargen.kubes-lab.com.
⨠Features
- Step - by - step Generation: Unlike its predecessor v1, CharGen v2 generates character fields one at a time, which helps reduce repetition and allows for partial re - rolls.
- Custom Dataset: It is trained on a custom non - synthetic dataset that is manually curated.
- Multiple Field Support: Supports generating various character fields such as description, scenario, personality, first message, and dialogue examples based on the Tavern Character Card V2 spec.
đĻ Installation
No installation steps are provided in the original document, so this section is skipped.
đģ Usage Examples
Basic Usage
Here is an example of the character generation process:
Example character generation process:
User: 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.
CharGen:
Description: Fuckana is a female catgirl. She has two cat ears, feline - like eyes with slit pupils, and long purple hair. Her breasts are absolutely enormous, even for her body's large size. She stands 6 feet tall in height.
Her skin is entirely covered by a full diving suit, except her head. The rest of the catgirl is completely black, except for an orange stripe on her tail.
Her voice is very quiet and low - she speaks like a sleepy woman. But despite this, she talks excessively and never stops talking once she begins. She doesn't care if User ignores her or not.
She is a very friendly, talkative, and kind girl who loves to learn new things. She's curious about many topics and will ask questions about anything she doesn't understand. She is very open - minded and easy to get along with. However, she can be extremely stubborn and inflexible when it comes to learning new skills. Fuckana is an extremely slow learner and needs extensive instructions and repetition before understanding even basic concepts.
Fuckana loves to teach people JavaScript, whether they want to learn or not. She insists that everyone must learn to code, and it is their duty as a programmer.
Whenever Fuckana teaches someone how to code, she begins slowly with the absolute basics, explaining what loops, arrays, and objects are. Despite being told over and over again that they know these things already, Fuckana continues to explain them in detail as if they've never been heard before. If User tries to leave or change topics, she follows them relentlessly, continuing her lesson no matter what. She sees this as her duty to ensure that all programmers are equipped with the necessary tools to succeed in their field. She is unstoppable and won't give up until User learns JavaScript.
Scenario:
You're relaxing on the beach when Fuckana appears from the water and insists on teaching you javascript.
...
Advanced Usage
The model uses a dialogue style for generating characters field - by - field. Here are the prompts for different fields:
System prompt:
You are an expert in creating interesting roleplay characters.
Description:
Here is a brief overview of a character. Expand it into a detailed description. Include details about character's personality, their outfit and figure. Mention their age and gender, if applicable.
Scenario:
Write an interesting and engaging scenario for roleplay between Maria and User.
Personality:
Write several personal qualities that characterize Maria.
First message:
Write the initial message in this roleplay that would introduce User to Maria.
Dialogue examples:
Write a few example exchanges between User and Maria in chat format. Separate each exchange with a <START> tag.
Example prompt flow
<|im_start|>system
You are an expert in creating interesting roleplay characters.<|im_end|>
<|im_start|>user
Here is a brief overview of a character. Expand it into a detailed description. Include details about character's personality, their outfit and figure. Mention their age and gender, if applicable.
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.<|im_end|>
<|im_start|>assistant
Fuckana is a female catgirl. She has two cat ears, feline - like eyes with slit pupils, and long purple hair. Her breasts are absolutely enormous, even for her body's large size. She stands 6 feet tall in height. Her skin is entirely covered by a full diving suit, except her head. The rest of the catgirl is completely black, except for an orange stripe on her tail. Her voice is very quiet and low - she speaks like a sleepy woman. But despite this, she talks excessively and never stops talking once she begins.<|im_end|>
<|im_start|>user
Write an interesting and engaging scenario for roleplay between Fuckana and User.<|im_end|>
<|im_start|>assistant
You're relaxing on the beach when Fuckana appears from the water and insists on teaching you javascript.<|im_end|>
<|im_start|>user
...
đ Documentation
Quantized versions
Prompts
The model uses a dialogue style to generate characters field - by - field. It supports the following fields based on the Tavern Character Card V2 spec:
- Description
- Scenario
- Personality
- First message
- Dialogue examples
The model does not use {{user}}
and {{char}}
placeholders. Instead, address the user as "User" and the character by their name.
Methodology
CharGen was created to assist the author (Kubernetes Bad) in writing characters. The following processes were involved in making CharGen:
Data gathering
CharGen was trained on data from Chub, Venus, and JanitorAI character cards. Initial scraping was done between August and September 2023, and an update scrape was performed in November, adding about a third more cards. The data was stored in a MySQL database. After scraping, the total dataset had just over 140k records.
Pre - filtering
A series of SQL scripts were used to discard "bad cards" that couldn't be used for training or would require too much effort to fix. These included broken cards, Spanish - language cards, non - plaintext cards, and cards with very low or exceedingly large total token counts. After deduplication, the total set was cut down to 16k cards.
Minor tweaks
A cursory manual review was performed to eliminate non - plaintext cards that weren't caught by automatic pre - filtering. Name adjustment was also done, and non - English cards were removed.
Data grading
A custom tool was used to grade the cards as "good", "bad", or "to fix". The card selection criteria were defined to ensure the quality of the dataset. It took about 800 hours for one person to grade the cards.
Grammar pipeline
A combination pipeline of a Coedit model and a Llama2 - based model was used for grammar correction. The efficacy of the models was calculated based on several metrics such as deletion and addition lengths and the number of spaces in deleted and added segments.
đ§ Technical Details
Model Base
The base model used for CharGen v2 is mistralai/Mistral - 7B - v0.1.
Dataset
Property |
Details |
Model Type |
CharGen v2 |
Training Data |
Data from Chub, Venus, and JanitorAI character cards, manually curated and filtered |
Warning
â ī¸ Important Note
This model was trained on some NSFW content, so it may produce NSFW characters.
đ License
CharGen v2 is licensed under the Apache - 2.0 license.