---
url: https://docs.cybrosys.com/assista-x/ai-providers.md
description: >-
  Choose the AI provider and model behind Assista X. Supported providers, where
  to paste your API key, how to switch models and what to expect on cost.
---

# AI providers

Assista X answers your questions with a large language model from an AI provider that you configure. Your questions, and the Odoo data needed to answer them, are sent to that provider with your own API key.

## What you can do

* Choose OpenAI, Anthropic or OpenRouter as your provider.
* Paste your own API key. It is stored encrypted and never shown again in full.
* Pick a model, and change it from the chat at any time.
* Keep a separate key and model for each provider, and switch between providers.

## Supported providers

| Provider | Label in Settings | Where the model list comes from |
| :--- | :--- | :--- |
| OpenRouter | **OpenRouter** | A list loaded from OpenRouter, so you can reach many models with one key |
| Anthropic | **Anthropic (Claude)** | A built-in list: Claude Opus 4.5, Claude Sonnet 4.5, Claude 3.7 Sonnet, Claude 3.5 Sonnet, Claude 3.5 Haiku and Claude 3 Opus |
| OpenAI | **OpenAI** | A live list from OpenAI (GPT and o-series chat models, newest first). If it cannot be loaded, the list falls back to GPT-4o, GPT-4o Mini, GPT-4 Turbo and GPT-3.5 Turbo |

You can also type any model ID yourself. If the model list is not available, the **Model** field becomes a text box with the hint "e.g. gpt-4o".

> **Info.**
>
> The model lists change as providers release models, so the lists above are examples and not a promise. The dropdown in the app is the current list.

## Set up your provider

1. Create an API key with your provider (OpenAI, Anthropic or OpenRouter). Your provider's own site has the steps.
2. In Assista X, open the user menu and select **Settings**, then open the **Provider** tab ("Choose your models and connection parameters").
3. In **Provider**, open the list ("Select a provider...") and choose a provider.
4. In **API Key**, paste your key. The placeholder is `sk-...`. Use the eye icon to show or hide the key.
5. In **Model**, choose the model for conversations.
6. Select **Save Changes** in the bar that says "You have unsaved changes".

After you save, the **API Key** row reads "Key stored securely." and the field shows "•••••••• (enter to replace)". The saved key is never loaded back into the page. To replace it, type a new key and save. If you leave the field empty, the saved key stays.

## Switch models and providers

* **From the chat.** Use the model dropdown at the left of the chat box (**Select Model**). It lists the models for your provider, and has search when the list is long. Your choice is saved to your settings.
* **From Settings.** Choose another provider in **Settings > Provider**. Assista X remembers the key and model you used for each provider while you switch, so you do not retype them. Save to apply the change.
* **Context meter.** Next to the model dropdown, a small ring shows how much of the model's context window the conversation uses, for example "Context: 12K / 200K tokens used". Long conversations are summarized automatically to stay within the limit.

## Cost

You pay your AI provider for the tokens your questions use. Assista X does not set your provider's rates.

* Longer conversations, bigger result tables and [Analytical mode](/assista-x/ask-questions/#analytical-mode-and-normal-mode) use more tokens per response.
* The Terms and Conditions state that you are responsible for all costs on your own API key. Rotate the key if you think it has been exposed.
* Your plan decides whether you can use your own key. Plans are described in [Plans and billing](/assista-x/plans-and-billing/).

## Voice settings

When **OpenRouter** is your provider, **Provider** shows an **Additional settings** section where you can set a preferred speech-to-text model, text-to-speech model and voice for [voice features](/assista-x/voice/). If you leave them empty, system defaults are used.

## Tips and limits

* Choose a model with a larger context window if you ask questions that return large tables.
* If a request is too large, switch to a model with a higher context limit, or start a new chat.
* Your provider's own privacy policy applies to the data sent to it. See [Security and privacy](/assista-x/security-and-privacy/).

## Errors you may see

| Message | What to do |
| :--- | :--- |
| Configuration Error: The AI service API key is missing or invalid. Please check your settings. | Add or correct your key in **Settings > Provider** |
| Authentication failed with the AI provider. Your API key may have been revoked or is no longer valid. Please update your API key in Settings. | Create a new key with your provider and save it |
| I couldn't access the requested AI model. It may be unavailable or misconfigured. | Choose another model |
| Your API key has reached its credit limit. Please top up your account or update your API key in Settings. | Add credit with your provider, or use another key |
| I've hit a rate limit with the AI provider. Please wait a moment or check your credits. | Wait and try again |
| You don't currently have a plan or your current plan does not support BYOK. | Your plan does not allow your own key. Select **View Plans** in the message |

More fixes are in [Troubleshooting](/assista-x/troubleshooting/).

## Next steps

* [Connect your Odoo server](/assista-x/connect-odoo/)
* [Ask questions](/assista-x/ask-questions/)
* [Plans and billing](/assista-x/plans-and-billing/)
