Supported provider types
TouchAI supports two provider types, matching the underlying API protocol:| Type | Protocol | Example services |
|---|---|---|
openai | OpenAI Chat Completions API | OpenAI, DeepSeek, Gemini, Grok, Ollama, and any OpenAI-compatible endpoint |
anthropic | Anthropic Messages API | Anthropic Claude, MiniMax (Anthropic-compatible) |
/v1 to the endpoint for OpenAI-type providers and uses the base URL as-is for Anthropic-type providers. Some built-in providers (e.g. Volcengine) already include a path suffix in their endpoint — in those cases, /v1 is still appended, so the full URL used for requests will include both suffixes. Check your provider’s API documentation if requests fail.
Built-in providers
TouchAI ships with 11 built-in providers pre-configured with the correct endpoints. OpenAI is enabled by default; all others are disabled until you add an API key and enable them.| Provider | Type | Endpoint | Default state |
|---|---|---|---|
| OpenAI | openai | https://api.openai.com | Enabled |
| Anthropic | anthropic | https://api.anthropic.com | Disabled |
| DeepSeek | openai | https://api.deepseek.com | Disabled |
| Volcengine (火山引擎) | openai | https://ark.cn-beijing.volces.com/api/v3 | Disabled |
| Gemini | openai | https://generativelanguage.googleapis.com | Disabled |
| Grok | openai | https://api.x.ai | Disabled |
| Tencent Hunyuan (腾讯混元) | openai | https://api.hunyuan.cloud.tencent.com | Disabled |
| MiniMax | anthropic | https://api.minimaxi.com/anthropic | Disabled |
| Moonshot (月之暗面) | openai | https://api.moonshot.cn | Disabled |
| Alibaba Bailian (阿里云百炼) | openai | https://dashscope.aliyuncs.com/compatible-mode | Disabled |
| Zhipu (智谱) | openai | https://open.bigmodel.cn/api/paas | Disabled |
Add your first provider
Open AI Services settings
Open TouchAI and navigate to Settings → AI Services. The provider list appears in the left panel.
Select a provider or add a custom one
Click an existing built-in provider to configure it, or click Add custom provider to create a new one.For a custom provider, fill in:
- Provider name — a display label of your choice
- Provider type —
OpenAIorAnthropic - API endpoint — the base URL without a
/v1suffix (e.g.https://api.openai.com) - API key — your secret key (optional for some local providers)
Save the provider configuration
For built-in providers, enter your API key and endpoint in the Provider configuration panel on the right. Changes are saved automatically after a short debounce delay.
Enable the provider
Toggle the provider switch in the provider list to enable it. Disabled providers and their models are not available for selection in the chat interface.
Add models
With the provider selected, scroll to the Models section. Click Refresh to fetch the model list from the API automatically, or click Add model to add one manually.
Provider setup by type
- OpenAI
- Anthropic
- Local (Ollama)
OpenAI uses the Chat Completions API.TouchAI normalizes the endpoint to
https://api.openai.com/v1 automatically.Common models to add:| Display name | Model ID |
|---|---|
| GPT-4o | gpt-4o |
| GPT-4o mini | gpt-4o-mini |
| o3 | o3 |
| o4-mini | o4-mini |
Managing models
Add a model manually
Click Add model in the models panel and fill in:| Field | Description |
|---|---|
| Model name | Display label shown in the model selector (e.g. GPT-4o) |
| Model ID | The identifier sent in API requests (e.g. gpt-4o) |
| Capabilities | Optional: toggle reasoning, tool calls, multimodal, file, or open-weights flags |
Model capabilities
Capabilities are stored per-model and affect how TouchAI uses them:| Capability | Schema field | Effect |
|---|---|---|
| Tool calls | tool_call | Enables MCP tool use for this model |
| Multimodal | modalities (input includes image) | Allows image attachments |
| File | attachment | Allows file attachments |
| Reasoning | reasoning | Indicates the model produces extended thinking output |
| Open weights | open_weights | Informational label only |
Output token limit
Theoutput_limit field (sourced from the model metadata database) sets the maximum number of tokens the model can generate per response. This is passed as max_tokens in Anthropic requests. For OpenAI requests the field is informational only.
Default model
Exactly one model across all providers can be marked as default (is_default = 1). The default model is pre-selected when you open a new conversation. Click the star icon next to any model to change the default.
Refresh models from API
Click Refresh on the models panel to call the provider’s model list endpoint and import any new models not already in your list. Existing models are not modified.For providers that require authentication, the Refresh button will fail if no API key is configured.