Providers & Models
TomoriBot connects to external AI providers rather than hosting a built-in model. You can connect hosted services like Google Gemini, OpenRouter, and NovelAI, or point her at local self-hosted endpoints. You need at least one provider to start chatting.
Subscription
Section titled “Subscription”On hosted TomoriBot installations with Subscription enabled, use /subscribe to link your Patreon
membership and view your remaining allowance. A member with Manage Server can choose
Sponsor this server in its overview or + Sponsor Current Server under Sponsored Servers.
/providers also offers sponsorship.
If your Patreon account is connected to a Discord account, that account must be the one running
/subscribe. Otherwise TomoriBot refuses the link: run the command from the connected account or
change the connection on Patreon. The success page names the Discord account it linked.
Each server has one active sponsor. Server already sponsored is disabled until that sponsorship
is removed. You can sponsor multiple servers; they share your allowance with your personal usage.
API Keys
Section titled “API Keys”Add a provider key during first-time setup with /setup, or later from /providers by choosing
+ Add new Provider. Keys are encrypted at rest, so no one, including server admins, can read
them back.
In /setup, choose a hosted provider, a custom endpoint, or User BYOK for a server where members
supply their own providers. Setup saves changes when you finish. Use /providers to replace a key;
saved sampler settings are preserved.
Each provider has its own key-generation steps. In /help, choose Setup, then
Get an API Key, and pick your provider for a step-by-step walkthrough, or use these starting points:
| Provider | Notes | Get a key |
|---|---|---|
| Google Gemini | Free tier, runs every feature. Recommended first setup. | AI Studio |
| OpenRouter | Paid models through one key. | OpenRouter keys |
| NovelAI | Subscription; uncensored storytelling and roleplay (text only). | NovelAI |
| DeepSeek | Pay-as-you-go reasoning models. | DeepSeek |
| NVIDIA NIM | Hosted text, embeddings, and image. | NVIDIA Build |
| Anthropic | Claude models via the API (not Claude Code). | Anthropic |
| Z.ai | GLM family. 🟡 ToS restricts usage to coding and agent scenarios. | Z.ai |
| Vertex AI | Google Cloud via gcloud ADC (best for locally-run or dev setups). | see below |
| Vertex AI Express | Google Cloud API-key BYOK (Preview, Gemini subset). | Express Mode |
| Custom | Any OpenAI-compatible endpoint (Ollama, vLLM, LiteLLM, …). | see Custom Endpoints |
Vertex AI authenticates with Application Default Credentials (ADC) rather than a stored secret.
For local hosting, ADC can come from gcloud; hosted deployments should use a workload identity
or service account. An AI Studio API key alone does not authenticate full Vertex AI. The selected
Google Cloud project must have billing and the Vertex AI API enabled, and the host identity needs
Vertex access. Whoever hosts TomoriBot can limit Vertex AI to certain servers and users; everyone else
is asked to choose a different provider. The setup guide is available from Google Vertex AI on the
API Keys page in /help.
Brave Search is separate from your AI provider. Add its key in /providers to enable more search
categories; see Web search.
Choosing Models
Section titled “Choosing Models”Use /providers to manage server credentials, model catalogs, and endpoint registrations.
Then use /config > Models > Switch Models to select the shared capability assignments every
member of the server uses. Both commands require server management permissions.
Members can set up their own providers and models with /personal providers and /personal config.
Personal settings follow them across servers; see
Personalization.
New OpenRouter configurations use DeepSeek Flash Latest for chat and Gemini 3.1 Flash Lite for
the vision fallback. Both use OpenRouter credits. Replacing a key preserves your vision selection,
including - No Model.
In /config > Models > Switch Models, you can assign models and endpoints across these capability slots:
- Text: the main chat model.
- Vision: reads images when the chat model cannot.
- Embeddings: powers the document knowledge base.
- Decision: a registered Decision model. Natural Nudges uses it to decide when to join a conversation.
- Standard Image: standard image generation (see Image Generation).
- NovelAI Image: NovelAI image generation.
- Video: video generation.
- TTS (Voice Design): speaks using a saved voice description.
- TTS (Voice Clone): speaks using a reference sample or provider voice.
- Speech to Text: transcribes audio attachments with a hosted transcription model or a custom endpoint. Pick a provider, then its model;
- No Modelstops transcription on the server’s key.
Speech has separate voice design and voice clone slots. See
Voice: TTS & STT for setup and provider
support. You can also manage backup keys in /providers.
Decision Models
Section titled “Decision Models”Decision models answer structured questions, such as yes/no or a choice from a list. They are separate from the chat model. Natural Nudges can use one to decide when a persona should join a conversation.
Register an OpenRouter Decision model or a compatible custom endpoint in /providers or
/personal providers. Select the server’s model under /config > Models > Switch Models.
Custom services must support System One or OpenAI Decisions compatibility. Register models from the
service’s documentation; a successful connection does not verify their capabilities.
Custom Endpoints
Section titled “Custom Endpoints”Custom endpoints connect self-hosted or proxy-backed services such as Ollama, LM Studio, vLLM,
ComfyUI, and local speech servers. Register a server endpoint in /providers or a personal endpoint
in /personal providers.
Choose the API compatibility supported by your service, then register its exact model and supported capabilities. A connection can group models that share one endpoint URL. Personal local speech endpoints are not supported.
For setup instructions, see Local LLM, ComfyUI, and ChatMock.
Supported Providers
Section titled “Supported Providers”If you do not have the hardware to host your own models, TomoriBot supports a wide range of cloud services. Not every feature is available on every provider.
LLM Providers
Section titled “LLM Providers”| Provider | Streaming | Tool Calling | Image Input | Embeddings | Notes |
|---|---|---|---|---|---|
| Google Gemini | ✅ | ✅ | ✅ | ✅ | Free models available |
| OpenRouter | ✅ | ✅ | ✅ | ✅ | Uses OpenRouter credits |
| Anthropic (API) | ✅ | ✅ | ✅ | - | Not Claude Code |
| NovelAI | ✅ | - | - | - | Text models cannot use tools; see NovelAI |
| NVIDIA NIM | ✅ | ✅ | ✅ | ✅ | Free models available |
| DeepSeek | ✅ | ✅ | - | - | - |
| Z.ai | ✅ | ✅ | ✅ | - | Free models; 🟡 ToS = coding and agent use only |
| Z.ai Coding | ✅ | ✅ | - | - | Subscription plan |
| Google Vertex AI | ✅ | ✅ | ✅ | ✅ | Includes ‘free’ Express version |
| Codex CLI (via ChatMock) | ✅ | ✅ | ✅ | - | Setup |
Image Generation
Section titled “Image Generation”| Provider | Text-to-Image | Image-to-Image | Inpainting | Notes |
|---|---|---|---|---|
| ✅ | ✅ | - | - | |
| OpenRouter | ✅ | ✅ | - | - |
| NovelAI | ✅ | ✅ | ✅ | Can combine with other providers |
| NVIDIA | ✅ | - | - | Text-to-image only; reference images are ignored |
| Z.ai | ✅ | - | - | - |
These are default capabilities. When registering an image model, declare the modes its API supports; unsupported modes fail at generation time. NovelAI uses its own image pipeline.
Video Generation
Section titled “Video Generation”| Provider | Text-to-Video | Image-to-Video | Notes |
|---|---|---|---|
| ✅ | ✅ | Async polling workflow | |
| OpenRouter | ✅ | ✅ | Async polling workflow |
| Z.ai | ✅ | ✅ | Async polling workflow |
Voice & Audio
Section titled “Voice & Audio”| Provider | Text-to-Speech | Speech-to-Text |
|---|---|---|
| ElevenLabs | ✅ | ✅ |
| Google Gemini | Voice Design | ✅ |
| Vertex AI (standard, global) | Voice Design | ✅ |
| OpenRouter Fish | Voice Clone | No |
| OpenRouter Seed Audio | Voice Design | No |
| OpenRouter transcription models | No | ✅ |
Local voice engines are covered under Self-Hosting. For built-in web search and URL reading, see Tools & Extensions.