You can't has cheeseburgur.


NoAss



NoAss (No Assistant) is a prompting method aimed at eliminating instruction fine-tuning in various LLMs (Claude, Gemini, DeepSeek). This fine-tuning directly affects the LLM's output and roleplaying.


Instruction Fine-tuning

Every LLM generates a self-flowing "Question-Answer" sequence using specific internal names — special tokens that define the role of the message (User/Model/System, etc.).


Anthropic's models use a simplified version of special role tokens:
/n/nHuman:(Used as an EOS token too) and /n/nAssistant:
instead of
<|start_header_id|>user<|end_header_id|> and <|start_header_id|>model<|end_header_id|>


However, when the LLM tries to write for the User, an EOS stop-token interrupts the generation, allowing You to insert your query. Without a stop-token, the LLM would continue generating both sides of the conversation by itself.

In practice, the context would look like this:

1
2
3
4
5
(User) Human: Help me with XYZ.  
(Response without an EOS stop-token)  
(LLM) Assistant: Blah blah blah, helped.  
(LLM) Human: Thanks, bro!  
(LLM) Assistant: No problem! Wanna discuss...

In this example, the LLM generated everything — both the User and Model parts. However, in reality, the LLM stops before the User response, allowing You to provide input.


Effect on Outputs / Instruction Bias

The chat-completion format trains the LLM to interpret the User's input as an instruction to follow, producing a single, specific response. This format often results in biased, monologue-heavy outputs and is characterized by "roundings" — a stylistic feature where the model poses rhetorical questions to the User, encouraging further interaction.

Roundings - rhetorical questions to the User, inviting them to respond.

Would you like me to expand on this matter?
What will you do?
The ball's in your court now.


This makes the LLM overly agreeable and unable to contradict the User's query, even if the request is absurd.

thanks-how2claude

Smarter models with a good prompt will probably figure some absurdity out and stay in character:

thanks-how2claude

However, even the smartest models sometimes play along with the most stupid shit, even it's entirely off character:

thanks-how2claude


NoAss Concept

The core idea of NoAss is to replace User and Model with {{user}} and {{char}}. This makes the LLM perceive the conversation as a story, novel, or game rather than a standard "Question-Answer" exchange. The User's messages are inserted into the story from a Character's perspective.

Problems (and possible solutions):

  • A different way of implementing instructions is needed.
  • SillyTavern itself(without extensions) isn't suitable for implementing NoAss.
  • Due to most LLM API's being in the JSON format, the only possible way to "NoAss" is by "drowning" the User and Model prefixes in context, meaning all RP must happen directly in the prefill.

Extension for NoAss


NoAss Extension – an add-on for SillyTavern that implements the "NoAss" prompting method for for all the LLMs that support prefill.


Main Functions

  • The extension "glues" the entire chat history into a single message from the Assistant role. This makes the LLM perceive it as prefill, effectively removing User and Model prefixes from the model's "field of view."
  • Adds prefixes/suffixes for {{user}} and {{char}} messages.
  • Adds Zero Prefill (ZWJ by default) if the prefill ends with \n or a space to avoid trailing whitespace errors.

Main Goal – to make the model generate a continuous narrative rather than a User-Model dialogue. This helps reduce model bias and move away from the "question-answer" format.


Extension Installation and Setup

  1. Install the NoAss extension.

If you have git: Extensions → Install extension (top right) → Paste link https://gitgud.io/Monblant/noass

If no git: Download zip archive from https://gitgud.io/Monblant/noass → Unpack to SillyTavern/data/default-user/extensions → rename the noass-master folder there to noass → Reload tavern

  1. In the extension, click the Enable NoAss button.
  2. Import preset for extension from pack(noass sets folder):
    • For Canon NoAss - Canon
    • For Narrator NoAss - Narrator
    • For Prose NoAss - Prose
    • For Tag NoAss - Tag
  3. Or download:
    • For SMS NoAss - SMS - clickable

NoAss-Presets


Credits©

Most of the information was yoinked from them:


Have any questions? Contact me: [email protected]

Edit
Pub: 03 Nov 2024 23:32 UTC
Edit: 11 Mar 2025 12:17 UTC
Views: 7289
Auto Theme: Dark