← Apps, keys and settings

AI sends an empty or blank reply? Why it happens and fixes

Updated

An empty reply usually means the request worked but the text never reached the screen, or the model stopped at once. The common causes are a stop string that matches the first words, an app option that trims or rewrites the reply away, an error the app shows as a blank, or a context so full there was no room left. On UnsavedAI, a refused request always comes with a written message.

Try it now, free, no account neededStart a story with The NarratorAny story you want, you choose

What a blank reply really is

A blank bubble looks like the model said nothing, but that is rarely what happened. More often text was written and then removed on its way to you, or an error came back and the app drew it as an empty message. The fix depends on which of those it was, so it pays to find out before changing settings.

Causes, most common first

  • A stop string fires immediately. Stop strings end the reply as soon as the model writes them. If one is a single newline, or the character's own name, and the reply starts with that, you get nothing.
  • The app removes the text. SillyTavern's Trim Incomplete Sentences deletes a reply that has no finished sentence, and regex scripts or formatting extensions can strip a reply entirely.
  • A hidden error. Some apps and versions show a blank bubble instead of the provider's message.
  • No room left. In a chat near the context limit, a provider that shortens replies to fit can return almost nothing.
  • A prefill that ends the turn. A prefilled start of the reply that already reads like an ending can make the model stop at once.
  • Hidden thinking. With reasoning models, the text can sit in a separate thinking field the app hides, and a small reply limit runs out before the visible answer starts.

Fixing each one

  • Stop strings: open your custom stopping strings and any imported preset, and remove anything as short as a newline or as common as a name.
  • Trimming and scripts: switch off Trim Incomplete Sentences and disable regex scripts and extensions, then swipe. Turn them back on one at a time.
  • Hidden errors: in SillyTavern, read the terminal window it runs in; the provider's message is usually printed there. In browser apps, the console (F12) shows it.
  • No room: lower the app's context setting so a full reply always fits.
  • Prefill: clear the assistant prefill or start-reply-with field and try again.
  • Thinking models: raise the reply limit well above your usual reply length, or turn thinking display on if the app offers it. Labels can change between versions.

How to tell which cause you have

  • Blank in under a second: a hidden error or a stop string firing on the first token.
  • The usual wait, then blank: text was written and then removed, so suspect trimming, scripts or hidden thinking.
  • Only in long chats: no room left in the context.
  • Only with one character: that card's prefill, its stop strings or a script tied to it.

A quick control test helps too. Send a plain "hello" with all extensions off and streaming on. If that gets a reply, the model and connection are fine and one of your settings is eating the text.

Blank replies with UnsavedAI

When our gateway refuses a request it sends one of the messages listed under "If a message fails" on the Setup page, such as "A valid API key is required." or "Prompt must leave room for output within the …-token context." A truly blank bubble therefore almost always comes from a setting in the app.

Two things we handle for you: empty turns in the history, such as a blank author's note or a placeholder greeting, are dropped before the model sees them, so they cannot cause a blank answer. And a reply that would not fit is shortened rather than refused, which is why the context setting matters; 56,000 keeps room for a full reply on both Gemma models, as context length exceeded explains. To see what normal looks like, play a few lines with the Narrator on the site itself.

Questions people ask

Should I just keep swiping?

Once is fine. If a setting causes the blank, every swipe resends the same prompt and gets the same result, so fix the setting instead.

Does a blank reply count against my limits on UnsavedAI?

It counts as one request toward the per-minute limit of 60, or 300 on Priority. There is no daily token cap.

It only happens in JanitorAI. What should I check?

Make sure Max new tokens is a whole number such as 700, reload the tab, and try the same character in a fresh chat.

Characters for this story