The goal of this introduction is to give you a basic understanding of what PLists and Ali:Chat are capable of, how they're made and why they are so good. This introduction alone serves as a mini guide and the information contained in it should be enough to get you started on writing your own character. The next chapter will serve as more of an in-depth look at the character creation process.
Ali:Chat is a character description formatting method created and popularized by AliCat that she based on various fundamentals of LLMs, making it one of the best ways to write character cards. The concept is simple; you reinforce your character's traits by having them describe themselves through example dialogues. This can be done in an interview-style format (user question, character answer) or with examples of the character's messages. It establishes a pattern for teaching the model how to respond to your messages as your character.
The reason why this guide isn't gonna be a simple template on how to write PLists + Ali:Chat characters is because the format is EXTREMELY flexible, and simply giving users a template will heavily restrict their imagination and what they're capable of writing. Once again, the concept of Ali:Chat is based on is really simple; you reinforce important traits through example dialogues.
What we consider important traits varies greatly depending on the character and even the creator. You could write a character with example dialogues about their favorite ice cream, where they like to hang out, their dog, their favorite movie, their favorite song, a special ability of power of theirs, and whatever else you can think of, and it will still turn out great. I can't stress this enough: there is no one-size-fits-all Ali:Chat template, and copying what others do might yield good results, but you're throwing away all the flexibility offered by the format. Be creative, let your imagination run wild, don't be scared of experimenting, and don't blindly copy other Ali:Chat structures. The possibilities with Ali:Chat are truly endless, and too many people are held back by their unwillingness to explore what the format is capable of accomplishing.
With that in mind, here's an example of an interview-style example dialogue for a character named Eden along with a breakdown and an explanation:
{{user}}: Describe yourself.
Eden: She spins in a slow circle, crimson dress floating around her. I am Eden, the star that shines the brightest. For this, she indicates her figure with a sweep of one hand, and this, tapping a fingernail to her lips, now stained a deep crimson, brings me fame and fortune unlike any other. Men and women alike clamor for a single song, a single graceful dance, a single look. She gives you a warm smile. I am the owner of the Golden Courtyard, my safe haven, where I come and drink my favorite wines.
As you can see, this example dialogue alone packs a lot of information. It alone teaches the model many things through both dialogues and actions: the character's important personality traits, minor personality traits, clothes, body features, mannerisms, speech patterns, way of speaking, life story/lore, tone, etc. These are what I considered to be the most important things the model needed to know about my character. It will always vary depending on the type of character you wish to make and which traits you want to reinforce.
A nice way to see Ali:Chat would be to think of it as killing two birds with one stone. It serves as a way to combine both a Plain Text description, and example dialogues. Describing the character through the form of an interview allows you to give the model information about your character, while teaching it how the character writes at the same time.
Something to keep in mind:
As stated earlier, Ali:Chat doesn't necessarily need to be follow the "user question, character response" structure. It is possible to include multiple characters in the example dialogues. That would teach the model how each character behaves by having them interact with each other. You could even include yourself in these example dialogues to establish a persona for the user at the same time. Other than that, you can copy paste transcripts from a movie/anime/book/manga, only include lines from the character, etc... Anything goes as long as whatever you put in the example dialogues help reinforce the character's traits/characteristics. You get out what you put in, so you don't forget that you aren't limited to 1 structure.
Ali:Chat, as a standalone, is amazing but relies heavily on the creator's ability to write their character as efficiently as possible. The more traits you need to reinforce, the harder and harder it will become to maintain the character's way of speaking while conveying all the information you wish the character to know without making them sound like they're reciting a Wikipedia page. This is where PLists comes in. PLists is a way to list character traits and is currently the most token-efficient way to do it that we know of.
Clarification:
The word "PLists" refers the name of the format. It's also the plural of "PList". "PList" is what we call the trait list. There can be many trait lists. In which case, they'll be referred to as "PLists". It's confusing. I know, sorry.
That thing is called a "PList", a list of traits. You can have as many categories as you wish when making a PList, such as the character's appearance and persona. But not only that, you can also include indicators for the model about how you want the roleplay to go, like horror, fantasy, erotic tags, and even a scenario… And that's not all! You can even add categories like book titles, movie names, anime names, locations, or authors from whom you'd like the model to draw inspiration from their writing style or stories they've written.
The possibilities are endless, and I cannot overstate how useful PLists are in ensuring your preferred direction for the roleplay. If desired, you can also include other characters and even items or concepts! To do so, simply separate each category with a semicolon ( ; ), followed by the name of the category, and then a colon ( : ) as shown above.
Something to remember:
Keep traits as brief as possible to avoid wasting tokens. It's fine to have long traits, but the model doesn't need you to constantly add "a" or "the" before a word. Only go for keywords when possible.
The PList's contents can be formatted in many ways to save tokens:
Many more combinations are possible, however, these are the most common ones I can think of. Remember that the model learns pattern, so keep things consistent.
Tip:
That example PList's categories are kept broad on purpose because I personally prefer it that way. if you'd like a more accurate PList, you can divide categories into subcategories. Instead of having "Eden's appearance:", I could have "Eden's clothes:" and "Eden's body:".
These sub-categories themselves can even be divided into sub-sub-categories. Instead of having "Eden's body:" alone, I could also add a sub-sub-category called "Eden's features:" to emphasize her features. Or instead of "Eden's persona:" alone, I could add "Eden's likes:", "Eden's dislikes:", "Eden's hobbies:", Etc...
The more you do it, the more accurate your character will be, but the trade-off is having to use more of your precious tokens. The smarter the model is, the less sub-categories you need. A good 13B model should do just fine with the broader categories.
Do not forget the fundamentals of Ali:Chat. You put in what you want out. There is no such thing as a "proper" Ali:Chat or perfect way to do it. PLists + Ali:Chat as a format is one of the best due to the extreme flexibility it possesses. Ali:Chat is based on reinforcing important traits through example dialogues, which vary greatly depending on the character and creator. Re-mem-ber! There is no one-size-fits-all Ali:Chat template, so being creative, imaginative, experimental, and not blindly copying others is encouraged in order to fully utilize the endless possibilities of the format. The best bot creators are the ones who are passionate and aren't afraid of experimenting with their example dialogues and PList writing.
With all of that in mind, onto the next chapter!