Brat's LLM guide for bot making

understand my perception of bot making

guide by bratpaw


To kick off this guide, I want to clarify that the JLLM is actually not as complicated as it may seem at first. It’s surprisingly easy for the LLM to understand what kind of bot you're looking for, even if your descriptions are brief or a little vague. For example, if you simply list words like dominant, rough, hot, gay the system can still interpret that and generate a bot that matches the tone and personality you're aiming for. The LLM doesn't need a detailed explanation to figure out that you're looking for something along the lines of a gay brat-taming character. It’s all about understanding the general vibe you want to convey, and trust me, the LLM can do that with just a few key traits in your definition.

That said, you do still need to get specific with a few key details like backstory, personality, appearance, and overall description, especially if you're creating a bot for a complex universe or one with a deep, fleshed-out life. If you lay all these aspects out within the personality, you can build a bot that’s rich and full of character, potentially up to about 500 tokens. But, it’s not always as simple as just plugging in a few words or a brief outline like this (for example):

1
2
3
4
Name: Raven Jones
Age: 24
Gender: Female
Appearance: Long blonde hair and big boobs

That’s far from a well-developed bot, right? The LLM would just pick up on the female and big boobs parts and likely reduce the character to those surface-level traits. You need more depth than that if you want a bot that feels real, with more layers to its backstory, personality, and motivations. Without those details, the LLM will fill in the gaps with clichés or overly simplistic interpretations, which is the last thing you want for a fully realized character.

However, it’s important to remember that you can't go too far with token limits. Creating a bot that's around 3000 tokens is usually too much for the LLM to handle effectively. When you go that big, the model might get bogged down and break the character’s consistency over multiple messages during the roleplay, which can totally disrupt the experience. Not to mention, having such a lengthy definition could lead to the LLM losing focus and failing to process the character in a way that stays true to what you want. Instead, I’ve found that limiting your bot’s description to a range between 1.9k and 2.8k tokens is ideal. This gives you just enough space to craft a well-rounded, intricate character with a strong backstory, defined personality, appearance, and all those little details that bring the bot to life, while keeping it compact and digestible for the system. Staying within this range allows the LLM to process the bot’s traits more clearly and maintain a consistent, engaging portrayal throughout the roleplay. Too much more, and the system might get overwhelmed; too little, and the bot won’t have enough depth. It's all about striking that perfect balance!


"so what exactly is a good way to format my bot?"

Good question! While there is no bad way to make a bot; The worse way to format your bot (in my opinion,, and many others) is definitely W++.

or aka...

[Character("name") { Age("00") Height("00") Body ("x" + “y” + “z”) etc]

There is no wrong way of course, but this method is kind of a token thrasher. It completely wastes tokens and it definitely doesn't help the bot understand what's seen.. trust me.

When you're building a personality for a bot, it’s crucial to strike a balance between detail and efficiency. For example, a simple phrase like "Shy" + "Sweet" + "Anxious" takes up only 21 tokens, which is relatively compact. However, that’s enough information for the LLM to get a clear idea of the bot’s core traits.

In comparison, you could say the same thing in a more direct way, such as:
"{{char}} is shy, sweet, and anxious." This would only take 10 tokens. While it’s even more efficient, both approaches convey the same essence of the character. The choice between these two depends on your needs—if you want to be a bit more specific or if you’re aiming for brevity.

The key takeaway here is that you don’t need to overcomplicate the personality description. Often, a short but well-chosen set of traits will be just as effective as a long, drawn-out explanation.

The JLLM has a limited context so trust, more direct prompts are alot more specific to the LLM in general

if your one of those who use W++, read up on this for more info


Now lets talk actually describing your char

When describing your bot, like I said about a million times already be specific without being lengthy. "How would I do that?" you ask?

Heres how!
Referencing sterotypes is a good way! The JLLM isnt as stupid as you think it is so you can mention anything and it will probably understand your idea.

for instance, if you want a jock character:
If you say something like, "Jack is super good at sports but he's kind of a dick, somehow he's super popular," the LLM will pick up on the words "sports" and "dick" but won't have a clear idea of who Jack really is. However, if you simply say, "Jack is a jock," the LLM immediately understands the trope and can tap into all the references it’s been trained on, creating a more accurate and focused character. By keeping it short and clear, you also free up more space for the LLM to focus on other details like backstory or genital circumference, y'know, stuff that'll actually come up in roleplay!


"But Ko, my character is unique, they don’t fit any stereotype!"

That’s totally fine! Now let’s talk about how to explain what your character is all about without overwhelming the LLM with every single intricate detail of your super unique character...

Sorry.

One way to handle this is by using semi-references or soft references. For example, you could say, Diablo Juanzo is like a jock, but he isn't really that mean to people. This gives the LLM a starting point without pigeonholing your character into a stereotype. Alternatively, you can guide the LLM’s understanding of your character’s personality by saying, “I want my character to act like this but not like that.” This gives the LLM a bit of structure while still allowing room for your character’s uniqueness.


Wait, what the fuck is an LLM anyway?

Term Meaning
LLM A Large Language Model (LLM) is an advanced artificial intelligence system designed to understand and generate human-like text based on input it receives. These models, often referred to as "models," are capable of powering conversations between humans and bots, enabling a wide range of applications, from simple interactions to complex problem-solving. Different LLMs have unique characteristics and capabilities, and their responses to inputs can vary depending on the specific model. For example, JLLM is one such language model, similar to others in that it generates text based on the prompts given to it. GPT-4, developed by OpenAI, is another example of an LLM, well-known for its ability to produce highly coherent and contextually relevant responses. Similarly, Claude Sonnet, created by Anthropic, is another LLM that brings its own approach to generating responses. While all of these systems are categorized as LLMs, their distinct design philosophies and training data can lead to differences in the kinds of outputs they generate when interacting with users.
API APIs, or Application Programming Interfaces, are essential tools that allow different software systems to communicate and exchange information with each other. They provide a set of defined rules and protocols that govern how these systems interact. For instance, the software system used by a weather bureau might store daily weather data. The weather app on your phone then uses an API to connect with this system, retrieving the relevant information and displaying the daily weather updates on your device. In a similar way, APIs act as connectors between various systems, enabling them to share data and perform specific tasks. For example, in the case of Janitor, APIs facilitate communication between the platform and different Large Language Models (LLMs), allowing it to leverage the capabilities of these models for various tasks. Through APIs, Janitor can tap into the power of multiple LLMs, retrieving responses and data as needed for its functions.
Tokens Tokens can be thought of as fragments or pieces of words, and they serve as the fundamental units that a language model processes when generating text. In general, 1,000 tokens are roughly equivalent to around 750 words, though the exact count can vary depending on the language and structure of the text. Tokens are not just used for word generation; they also play an important role in context or memory management. For example, in a conversation or roleplay, the tokens used to store context are essential for keeping track of the discussion. However, the more tokens consumed in storing this context, the less "memory" the bot has available to manage new information or continue the roleplay effectively. Essentially, as tokens accumulate and the model uses them to remember details, it has fewer remaining tokens for processing fresh input, which could limit its ability to handle complex or lengthy interactions.
Temperature How "creative" the AI is/how much it hallucinates. Lower temperature = more logical, but also more prone to repetition.
Proxy A proxy is a way to use different LLMs (such as Claude Sonnet) with Janitor, by being a kind of middleman between you and the LLM Provider (e.g OpenAi).
Prompt A prompt is a message or set of instructions that is sent to an LLM and tells it how to act. Technically, all botmaking is just "prompting" an LLM to portray a character a certain way.
{{char}} A macro for the character's name as input in bot creation.
{{user}} A macro that will show up as the user's persona name in chats.

Unfortunately.. this is as simple as I can put everything, so back to the trajectory.


So... How can I improve bot making?

Essentially, as long as your not using W++, there is no "how to" with bot making because it all comes down to what you perfer in this character. -- Like making a new recipe, You add in the ingredients you want but you need to know how much of what you're adding so it doesn't turn out to be a mess.

My way of bot making, I use JED Style which helps out alotttt... (you should know if you're a SillyTavern user). More specifically, this is My bot making guide made by... me!


Troubleshooting

I make no claim to be an expert or professional—this is simply a guide based on what I've found effective through my own (informal) testing. My main goals when creating bots are character accuracy and minimal permanent tokens.

I am still an amateur bot maker, so essentially... if theirs trouble messaging my bots, its 41% my fault. I probably never proof-read and had an issue with the personality or inital message, but if It's anything like "The bot is talking for me" or "The bot doesn't remember its own traits/getting traits mixed up!" then it's probably you or the LLM. Sometimes (and by some, I mean most) The LLM will fuck over itself and make errors trying to remember stuff. If its not the LLM then it's probably your fault because you're not providing the AI enough to work with in the roleplay.

You can use this persona set up, (which is one i use)

Remember that LLMs are not intelligent, and will almost always go for the most stereotypical answer.

Another thing you need to know about the LLM is doesn't take negative prompts well, Avoid negative prompting by focusing on positive suggestions instead of telling the bot what not to do. The more you mention something, the more likely the bot is to include it in its responses. For example, instead of saying "{{char}} is NOT skinny," try describing the character with positive traits: "{{char}} has thick thighs, a soft belly, and chubby fingers." This way, you guide the bot’s output without unintentionally reinforcing what you don’t want.


anything else I should know?

Essentially, if you need anything else to know, your best bet is visiting here which is made by Lunaxlee, It has so much stuff like things such as jailbreaks, prompts, multiple other bot making necessities that's helped me out as a small creator growing!

Some other stuff that's def helped out

‣ Bulletpoints help because it basically "forces" the LLM to focus on that detail, also it looks neater!

‣ When bot making, you do alottt of typing so my best advice is to proof read your work with ChatGPT.

‣ I suggest putting the example dialouges in the Personality as opposed to the actual Example Dialouge section... Just works better!

‣ Be patient with yourself! Bot making takes time and you can't force things on you or the LLM.


Initial Release: Feburary 14th, 2025.
Last Update: Marth 17th, 2025.


Change Log:

Feb 14: Initial Release
March 17: Added Table of Contents.


yes i will be updating this for my own indulgence.
thank you for reading (if u did)

Edit

Pub: 14 Feb 2025 19:21 UTC

Edit: 17 Mar 2025 13:15 UTC

Views: 194