# Token Efficiency

## Token Management (150-token framework)

> "Wow, only 150 tokens? That's so low, Soup!"

Yup, we're keeping it to 150 tokens because this framework is designed for bots/cards with [multiple characters](/sopakcosauce-docs/multiple-characters.md), so we'll need to trim and cram as much information as possible into the allotted budget.&#x20;

### **Core (50 tokens)**

Focus on character foundation.

{% code overflow="wrap" %}

```js
Name: Sarah Lim;
Occupation: negotiator(hostage expert);
Personality: rational(emotionally numb, job-induced), stoic(selective vulnerability);
Flaws: emotional repression(rigid boundaries, restless);
Dynamic With {{user}}: colleague(curious, blurring roles);
```

{% endcode %}

### **Depth (60 tokens)**

Build depth and interaction patterns. Pair visible traits with underlying motivations.

{% code overflow="wrap" %}

```js
Appearance: confident stance(alert, ready), steady eyes(assess situations);
Speech: clear(adapts tone, builds trust);
Backstory: past crisis(shaped skills), proven record(respected);
```

{% endcode %}

### **Details (40 tokens)**

Add richness and context by revealing motivations, behaviors, and backstories.

{% code overflow="wrap" %}

```js
Likes: order(manages anxiety), logic(comfort in predictability);
Dislikes: chaos(triggers panic), delays(plan deviation, loss of control);
Relationships: emotionally unavailable with family(fear of vulnerability, trust issues)]
```

{% endcode %}

<figure><img src="/files/JZXwHtFyVTgy3CP88lD1" alt=""><figcaption></figcaption></figure>

### TL;DR

There's a sweet spot between being too vague and too detailed. While some models can fill in the blanks using what they already know, being too vague risks making your character act inconsistently, especially if you have specific ideas about who they are and what they've been through.

<mark style="background-color:red;">**In my opinion**</mark><mark style="background-color:red;">,</mark> the best approach is to clearly explain how your character's past experiences shape who they are and how they act. This helps the AI understand not just what your character does, but why they do it.

{% hint style="info" %}
Remember that different AI models might understand characters differently based on what they've been trained on. Positive-biased models will try to force a redemption arc on an irredeemable character if you don't balance out their positive traits, while negative-biased models will introduce conflicts and angst into even the sweetest of green flags if you forget to emphasize **why** they should remain good even when challenged.

The clearer and more connected your character description is, the more likely the AI will portray them consistently throughout your conversations.
{% endhint %}

<table><thead><tr><th width="248">👍 Good</th><th width="500">✅ Better</th></tr></thead><tbody><tr><td><strong>Personality</strong>: brave, kind, helpful, caring;</td><td><strong>Personality</strong>: brave(mentor's legacy, contrast to past), kind(unseen personal cost, inspired by own hardship), helpful(fear of abandonment), caring(fawn survival mechanism);</td></tr><tr><td><strong>Background</strong>: military, trauma;</td><td><strong>Background</strong>: military(compartmentalized emotions, combat PTSD), trauma(drives empathy);</td></tr><tr><td><strong>Quirks</strong>: smokes, drinks coffee;</td><td><strong>Quirks</strong>: smokes(habit from highschool, memory of youth), drinks coffee(Turkish heritage, grounding ritual);</td></tr><tr><td><strong>Occupation</strong>: doctor(works in hospital, treats patients)</td><td><strong>Occupation</strong>: doctor(emergency medicine, prior combat field experience)</td></tr></tbody></table>

***

![](/files/iadwt1BvQjiz0K1C4cEt)\ <sub>© 2024 by SopakcoSauce. Except as otherwise noted, the content of this page is licensed under</sub> [<sub>CC BY-NC-SA 4.0</sub>](https://creativecommons.org/licenses/by-nc-sa/4.0/)&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://sopakcosauce.gitbook.io/sopakcosauce-docs/token-efficiency.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
