> ## Documentation Index
> Fetch the complete documentation index at: https://docs.openference.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SillyTavern

> Connect SillyTavern to Openference for roleplay and creative chat — and cap context to avoid Blocked responses.

# SillyTavern

[SillyTavern](https://sillytavern.app/) is a local chat frontend popular for creative fiction, character roleplay, and long-form conversations. It connects to Openference through the **Custom (OpenAI-compatible)** Chat Completions backend.

## Connect to Openference

1. In SillyTavern, open **API Connections** (plug icon).
2. Set **API Type** to **Chat Completion**.
3. Set **Chat Completion Source** to **Custom (OpenAI-compatible)**.
4. Configure the connection:

```
Custom Endpoint (Base URL): https://api.openference.com/v1
API Key:                    YOUR_API_KEY
```

5. Pick a **Model ID** that matches an entry from [openference.com/models](https://openference.com/models) or from `GET /v1/models` (for example `GLM-5.2`, `DeepSeek-V4-Flash`, or `Kimi K2.6`).
6. Click **Connect** and use **Test Message** to confirm the connection works.

> **Note:** Do not append `/chat/completions` to the base URL — only `/v1`.

## Cap your context size (fixes most "Blocked" responses)

This is the most important setting for SillyTavern users.

SillyTavern defaults to a very large context budget when **Unlocked Context Size** is enabled — often hundreds of thousands or millions of tokens. With detailed character cards, world info, and long chat histories (typical for roleplay), the app may send prompts far larger than you expect.

Oversized prompts are much more likely to fail or return a **Blocked** status in SillyTavern (empty reply, `content_filter` finish reason, or a generic rejection). **Capping context resolves this for most users.**

### Recommended settings

Open **AI Response Configuration** for your preset (or the connection's response settings):

1. **Uncheck** **Unlocked Context Size**.
2. Set **Context (tokens)** to one of:

| Context cap | Use when                                                                                                    |
| ----------- | ----------------------------------------------------------------------------------------------------------- |
| **128000**  | Safe default for any model — start here if you are unsure                                                   |
| **200000**  | Models that support 200K+ context (for example GLM-5, GLM-5.1, GLM-5.2, DeepSeek-V4-Pro, DeepSeek-V4-Flash) |

3. Set **Max Response Length (tokens)** to what you want for replies (for example 512–4096). SillyTavern subtracts this from the context budget when building the prompt — leave enough headroom so prompt + response stay under the cap.
4. Click the **save icon** next to the preset name in **AI Response Configuration** (not only the connection profile — the preset is what controls context size).

After saving, switch to another preset and back to confirm **Unlocked Context Size** stays off and your cap is still applied.

> **Important:** Even when a model advertises a 500K+ context window, **do not leave context unlocked or set it to the model maximum**. For SillyTavern workloads, **128K or 200K is the reliable range.** Higher values increase Blocked responses without improving roleplay quality.

### Why this works

Context in SillyTavern includes character definitions, system prompts, world info, and chat history. Roleplay setups often accumulate far more text than a single coding session. When SillyTavern sends the full unlocked budget, each request carries the entire card stack and history — and providers are more likely to reject or filter those large prompts.

A fixed cap makes SillyTavern trim older messages (the dotted line in the chat shows what is included). Smaller, focused prompts succeed far more often.

To inspect what was actually sent after a generation, use **Prompt Itemization** on the message (expand `...` → lined square icon).

## Model suggestions

Any model on your key works. For creative chat and roleplay, users commonly pick:

* **GLM-5.2** — strong general roleplay, large output budget
* **DeepSeek-V4-Flash** — fast, good for long sessions
* **Kimi K2.6** — solid dialogue; pair with the **128K** context cap
* **MiniMax M3** — expressive prose

Check [Models](https://openference.com/models) for current availability and pricing on your plan.

## Troubleshooting

### Blocked or empty responses

1. **Set context to 128K or 200K** as described above — this fixes the majority of cases.
2. **Shorten character cards or world info** if the prompt itemization shows definitions eating most of the budget.
3. **Try a fresh chat** after changing context settings so old oversized state is not reused.
4. If the reply is still blocked, the scene may have tripped a provider **content policy**. Adjust the prompt or scenario and retry — we cannot override upstream moderation.

### `context_length_exceeded` or prompt-too-long errors

Your effective prompt (card + history + response headroom) still exceeds the cap or the model limit. Lower **Context (tokens)**, reduce **Max Response Length**, or trim world info.

### 429 rate limit

Interactive roleplay stays within normal plan limits for most users. If you run SillyTavern unattended 24/7 or fire requests as fast as the UI allows, you may hit per-minute burst limits or need an [Auto Agent plan](/billing/plans). See [Rate Limits](/api-reference/rate-limits).

### 402 quota exhausted

Top up credits or wait for your plan window to reset. See [Credits](/billing/credits).

### Models not listed

Confirm your API key is valid and the model is not restricted on that key. `GET /v1/models` returns only models your key may call.

## See also

* [Model Catalog — context windows](/models/catalog)
* [Common Errors](/troubleshooting/common-errors)
* [Compatibility Matrix](/integrations/compatibility-matrix)
