Supported AI providers and multiple provider profiles
One panel, several AI backends. SideNote Pro stores as many local provider profiles as you want, each with its own base URL, key, model and reasoning setting, and lets you switch between them without reconfiguring anything.
Eight starting points
A profile in Settings, AI providers begins with the Provider control. Choosing an entry fills in the endpoint that service normally answers on, so in most cases you only add a key and pick a model.
| Provider | Base URL | API key | Typical use |
|---|---|---|---|
| OpenAI | https://api.openai.com/v1 | Required | Hosted models, no local hardware needed |
| OpenRouter | https://openrouter.ai/api/v1 | Required | Many hosted models through one account, with browser sign-in from Quick Setup |
| Anthropic | https://api.anthropic.com/v1 | Required | Claude models from Anthropic directly |
| Google Gemini | https://generativelanguage.googleapis.com/v1beta/openai/ | Required | Gemini models over Google's OpenAI-compatible route |
| DeepSeek | https://api.deepseek.com | Required | Low-cost hosted models |
| Ollama | http://localhost:11434/v1 | Usually not needed | Local models on your own machine |
| LM Studio | http://localhost:1234/v1 | Usually not needed | Local models with a graphical model manager |
| Custom OpenAI-compatible | You supply it | Depends on the service | Other hosted services, gateways, proxies, self-hosted servers |
Settings › AI providers

OpenRouter is the one entry you can connect without pasting a key. Connect with OpenRouter in Quick Setup opens OpenRouter in your browser; once you approve SideNote Pro there, OpenRouter creates an API key for it, and SideNote Pro stores that key protected on your PC and adds the profile. Choosing OpenRouter in Add profile works like any other hosted provider, with a key you created yourself. Either way the profile points at OpenRouter's endpoint, so requests go from your PC to OpenRouter, which can route them on to the operator of the model you chose under its own policies. A profile pointed at OpenAI's own API connects to OpenAI instead. Connecting SideNote Pro to OpenRouter has the steps.
A provider choice is a starting point, not a lock. Every field stays editable afterwards, including Base URL, so a profile can be repointed at a gateway, another host or a different port whenever your setup changes. An endpoint you entered yourself is kept rather than overwritten when you change provider, with a Use the default endpoint action if you did want the standard one back.
Managing several profiles at once
Settings uses a list and detail layout for profiles. You can add, rename, duplicate, edit, delete, and mark one profile as the default used by new conversations.
The composer shows a compact picker naming which profile and model will receive your next request, so you always know where a message is about to go before you press Send. On narrow windows long provider and model names are trimmed rather than allowed to push the toolbar out of shape.
A practical arrangement is one hosted profile for capable reasoning, one hosted profile on a small fast model for everyday rewriting, and one local profile for anything you would rather not send off the machine. Duplicating a profile and changing only the model is the quickest way to build that set.
Settings › AI providers

Test & Load models
One button does both jobs. It calls GET {BaseUrl}/models and reports back, which catches the ordinary setup mistakes: an endpoint that does not answer, a rejected key, a local server that is not running.
When that call returns a model list, the IDs fill a searchable picker so you can choose a model instead of typing one. Not every compatible endpoint publishes a model list, so Model is an editable combo box and manual entry always works. A profile with a hand-typed model ID behaves exactly like one chosen from the list, and nothing has to be discovered before it can be used.
Settings › AI providers

Settings that belong to the profile, not the app
- Credentials
- Each profile has its own DPAPI-protected credential file. Keys are never shared between profiles.
- Model
- Loaded from the endpoint or entered by hand. Either way it is the same profile.
- Context window
- Auto unless you change it: 128K, or a smaller limit when the provider reports one for that model. Custom sets one size for every model the profile uses.
- Reasoning effort
- Provider default until you change it, which sends no
reasoning_effortfield and leaves the model on whatever it does by default. That is a compatibility choice rather than a way of switching reasoning off; None is the setting that asks for none. On the Google Gemini preset, the list offers only the levels Google documents for that exact model, and a model it does not name gets Provider default. See model and reasoning controls. - Not the system prompt
- Instructions are chosen per conversation, from the prompt picker beside the provider picker in the composer, so switching profile keeps the conversation's prompt.
- Model pricing
- Optional input and output prices in USD per million tokens, feeding the local estimates described in usage and cost tracking.
Settings › AI providers › Model pricing

What compatible means, and what it does not promise
SideNote Pro's response parser is deliberately tolerant. It accepts the several string, object and content-array shapes that compatible providers return, reads delta.content, message.content or text, and terminates on the [DONE] record. Provider errors are translated into readable messages for rejected credentials, rate limits, invalid requests, timeouts and unreachable endpoints. Transient failures, HTTP 429 and 5xx responses are retried up to three attempts with short delays, under a two-minute request timeout.
Compatibility is a spectrum. An endpoint can implement chat/completions faithfully and still not support image input, ignore reasoning_effort, omit usage metadata, or lack a models route. None of those break SideNote Pro, but they do change which of its features are available on that profile.