Skip to main content
Looking to self-host your own model? Check out the OpenAI Compatible provider.
To use Ask Sourcebot you must define at least one Language Model Provider. These providers are defined within the config file you provide Sourcebot.
Example config with language model provider

Supported Providers

Sourcebot uses the Vercel AI SDK, so it can integrate with any provider the SDK supports. If you don’t see your provider below please submit a feature request. For a detailed description of all the providers, please refer to the schema.
Any parameter defined using env will read the value from the corresponding environment variable you provide Sourcebot

Amazon Bedrock

Vercel AI SDK Amazon Bedrock Docs
Example config with Amazon Bedrock provider

Anthropic

Vercel AI SDK Anthropic Docs
Example config with Anthropic provider

Azure OpenAI

Vercel AI SDK Azure OpenAI Docs The model field should be set to your Azure OpenAI deployment name. Either resourceName or baseUrl must be set. The resourceName is used to construct the URL https://{resourceName}.openai.azure.com/openai/v1{path}. If baseUrl is provided, resourceName is ignored. The reasoningSummary field controls whether the model returns its reasoning process. Set to auto for a condensed summary, detailed for more comprehensive reasoning, or none to disable. Defaults to auto.
Example config with Azure AI provider

Deepseek

Vercel AI SDK Deepseek Docs
Example config with Deepseek provider

Google Generative AI

Vercel AI SDK Google Generative AI Docs The thinkingLevel field controls the depth of reasoning for Gemini 3 models. Valid values are minimal, low, medium, and high. See thinking levels. The thinkingBudget field sets the number of thinking tokens for Gemini 2.5 models. Set to -1 for dynamic thinking. See thinking budget.
Example config with Google Generative AI provider

Google Vertex

If you’re using an Anthropic model on Google Vertex, you must define a Google Vertex Anthropic provider instead
The credentials parameter here expects a path to a credentials file. This file must be in a volume mounted by Sourcebot for it to be readable.
Vercel AI SDK Google Vertex AI Docs The thinkingLevel field controls the depth of reasoning for Gemini 3 models. Valid values are minimal, low, medium, and high. See thinking levels. The thinkingBudget field sets the number of thinking tokens for Gemini 2.5 models. Set to -1 for dynamic thinking. See thinking budget.
Example config with Google Vertex provider

Google Vertex Anthropic

The credentials parameter here expects a path to a credentials file. This file must be in a volume mounted by Sourcebot for it to be readable.
Vercel AI SDK Google Vertex Anthropic Docs
Example config with Google Vertex Anthropic provider

Mistral

Vercel AI SDK Mistral Docs
Example config with Mistral provider

OpenAI

Vercel AI SDK OpenAI Docs The reasoningSummary field controls whether the model returns its reasoning process. Set to auto for a condensed summary, detailed for more comprehensive reasoning, or none to disable. Defaults to auto.
Example config with OpenAI provider

OpenAI Compatible

Vercel AI SDK OpenAI Compatible Docs The OpenAI compatible provider allows you to use any model that is compatible with the OpenAI Chat Completions API. This includes self-hosted tools like Ollama and llama.cpp.
Example config with OpenAI Compatible provider
  • When using llama.cpp, if you hit “Failed after 3 attempts. Last error: tools param requires —jinja flag”, add the --jinja flag to your llama-server command.
  • If you’re seeing the LLM outputing reasoning tokens wrapped in XML tags (e.g., <reasoning>, <thinking>, etc.), you can configure the reasoningTag parameter to the name of the tag (without angle brackets). This parameter defaults to think.

OpenRouter

Vercel AI SDK OpenRouter Docs
Example config with OpenRouter provider

xAI

Vercel AI SDK xAI Docs
Example config with xAI provider

Custom headers

You can pass custom headers to the language model provider by using the headers parameter. Header values can either be a string or a environment variable. Headers are supported for all providers.
Example config with custom headers

Schema reference

schemas/v3/languageModel.json