Skip to main content

Supported LLM Providers

Goose is compatible with a wide range of LLM providers, allowing you to choose and integrate your preferred model.

Model Selection

Goose relies heavily on tool calling capabilities and currently works best with Anthropic's Claude 3.5 Sonnet and OpenAI's GPT-4o (2024-11-20) model. Berkeley Function-Calling Leaderboard can be a good guide for selecting models.

Available Providers

ProviderDescriptionParameters
Amazon BedrockOffers a variety of foundation models, including Claude, Jurassic-2, and others. Environment variables must be set in advance, not configured through goose configureAWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION
AnthropicOffers Claude, an advanced AI model for natural language tasks.ANTHROPIC_API_KEY
Azure OpenAIAccess Azure-hosted OpenAI models, including GPT-4 and GPT-3.5.AZURE_OPENAI_API_KEY, AZURE_OPENAI_ENDPOINT, AZURE_OPENAI_DEPLOYMENT_NAME
DatabricksUnified data analytics and AI platform for building and deploying models.DATABRICKS_HOST, DATABRICKS_TOKEN
GeminiAdvanced LLMs by Google with multimodal capabilities (text, images).GOOGLE_API_KEY
GroqHigh-performance inference hardware and tools for LLMs.GROQ_API_KEY
OllamaLocal model runner supporting Qwen, Llama, DeepSeek, and other open-source models. Because this provider runs locally, you must first download and run a model.OLLAMA_HOST
OpenAIProvides gpt-4o, o1, and other advanced language models. Also supports OpenAI-compatible endpoints (e.g., self-hosted LLaMA, vLLM, KServe). o1-mini and o1-preview are not supported because Goose uses tool calling.OPENAI_API_KEY, OPENAI_HOST (optional), OPENAI_ORGANIZATION (optional), OPENAI_PROJECT (optional)
OpenRouterAPI gateway for unified access to various models with features like rate-limiting management.OPENROUTER_API_KEY

Configure Provider

To configure your chosen provider or see available options, run goose configure in the CLI or visit the Provider Settings page in the Goose Desktop.

  1. Run the following command:
goose configure
  1. Select Configure Providers from the menu and press Enter.
┌   goose-configure 

◆ What would you like to configure?
│ ● Configure Providers (Change provider or update credentials)
│ ○ Toggle Extensions
│ ○ Add Extension

  1. Choose a model provider and press Enter.
┌   goose-configure 

◇ What would you like to configure?
│ Configure Providers

◆ Which model provider should we use?
│ ● Anthropic (Claude and other models from Anthropic)
│ ○ Databricks
│ ○ Google Gemini
│ ○ Groq
│ ○ Ollama
│ ○ OpenAI
│ ○ OpenRouter

  1. Enter your API key (and any other configuration details) when prompted
┌   goose-configure 

◇ What would you like to configure?
│ Configure Providers

◇ Which model provider should we use?
│ Anthropic

◆ Provider Anthropic requires ANTHROPIC_API_KEY, please enter a value


Using Custom OpenAI Endpoints

Goose supports using custom OpenAI-compatible endpoints, which is particularly useful for:

  • Self-hosted LLMs (e.g., LLaMA, Mistral) using vLLM or KServe
  • Private OpenAI-compatible API servers
  • Enterprise deployments requiring data governance and security compliance
  • OpenAI API proxies or gateways

Configuration Parameters

ParameterRequiredDescription
OPENAI_API_KEYYesAuthentication key for the API
OPENAI_HOSTNoCustom endpoint URL (defaults to api.openai.com)
OPENAI_ORGANIZATIONNoOrganization ID for usage tracking and governance
OPENAI_PROJECTNoProject identifier for resource management

Example Configurations

If you're running LLaMA or other models using vLLM with OpenAI compatibility:

OPENAI_HOST=https://your-vllm-endpoint.internal
OPENAI_API_KEY=your-internal-api-key

Setup Instructions

  1. Run goose configure
  2. Select Configure Providers
  3. Choose OpenAI as the provider
  4. Enter your configuration when prompted:
    • API key
    • Host URL (if using custom endpoint)
    • Organization ID (if using organization tracking)
    • Project identifier (if using project management)
Enterprise Deployment

For enterprise deployments, you can pre-configure these values using environment variables or configuration files to ensure consistent governance across your organization.

Using Goose for Free

Goose is a free and open source AI agent that you can start using right away, but not all supported LLM Providers provide a free tier.

Below, we outline a couple of free options and how to get started with them.

Limitations

These free options are a great way to get started with Goose and explore its capabilities. However, you may need to upgrade your LLM for better performance.

Google Gemini

Google Gemini provides a free tier. To start using the Gemini API with Goose, you need an API Key from Google AI studio.

To set up Google Gemini with Goose, follow these steps:

  1. Run:
goose configure
  1. Select Configure Providers from the menu.
  2. Follow the prompts to choose Google Gemini as the provider.
  3. Enter your API key when prompted.
  4. Enter the Gemini model of your choice.
┌   goose-configure

◇ What would you like to configure?
│ Configure Providers

◇ Which model provider should we use?
│ Google Gemini

◇ Provider Google Gemini requires GOOGLE_API_KEY, please enter a value
│▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪

◇ Enter a model from that provider:
│ gemini-2.0-flash-exp

◇ Hello! You're all set and ready to go, feel free to ask me anything!

└ Configuration saved successfully

Local LLMs (Ollama)

Ollama provides local LLMs, which requires a bit more set up before you can use it with Goose.

  1. Download Ollama.
  2. Run any model supporting tool-calling:
Limited Support for models without tool calling

Goose extensively uses tool calling, so models without it (e.g. DeepSeek-r1) can only do chat completion. If using models without tool calling, all Goose extensions must be disabled. As an alternative, you can use a custom DeepSeek-r1 model we've made specifically for Goose.

Example:

ollama run qwen2.5
  1. In a separate terminal window, configure with Goose:
goose configure
  1. Choose to Configure Providers
┌   goose-configure 

◆ What would you like to configure?
│ ● Configure Providers (Change provider or update credentials)
│ ○ Toggle Extensions
│ ○ Add Extension

  1. Choose Ollama as the model provider
┌   goose-configure 

◇ What would you like to configure?
│ Configure Providers

◆ Which model provider should we use?
│ ○ Anthropic
│ ○ Databricks
│ ○ Google Gemini
│ ○ Groq
│ ● Ollama (Local open source models)
│ ○ OpenAI
│ ○ OpenRouter

  1. Enter the host where your model is running
Endpoint

For Ollama, if you don't provide a host, we set it to localhost:11434. When constructing the URL, we preprend http:// if the scheme is not http or https. If you're running Ollama on port 80 or 443, you'll have to set OLLMA_HOST=http://host:{port}

┌   goose-configure 

◇ What would you like to configure?
│ Configure Providers

◇ Which model provider should we use?
│ Ollama

◆ Provider Ollama requires OLLAMA_HOST, please enter a value
│ http://localhost:11434

  1. Enter the model you have running
┌   goose-configure 

◇ What would you like to configure?
│ Configure Providers

◇ Which model provider should we use?
│ Ollama

◇ Provider Ollama requires OLLAMA_HOST, please enter a value
│ http://localhost:11434

◇ Enter a model from that provider:
│ qwen2.5

◇ Welcome! You're all set to explore and utilize my capabilities. Let's get started on solving your problems together!

└ Configuration saved successfully

DeepSeek-R1

Ollama provides open source LLMs, such as DeepSeek-r1, that you can install and run locally. Note that the native DeepSeek-r1 model doesn't support tool calling, however, we have a custom model you can use with Goose.

warning

Note that this is a 70B model size and requires a powerful device to run smoothly.

  1. Download and install Ollama from ollama.com.
  2. In a terminal window, run the following command to install the custom DeepSeek-r1 model:
ollama run michaelneale/deepseek-r1-goose
  1. In a separate terminal window, configure with Goose:
goose configure
  1. Choose to Configure Providers
┌   goose-configure 

◆ What would you like to configure?
│ ● Configure Providers (Change provider or update credentials)
│ ○ Toggle Extensions
│ ○ Add Extension

  1. Choose Ollama as the model provider
┌   goose-configure 

◇ What would you like to configure?
│ Configure Providers

◆ Which model provider should we use?
│ ○ Anthropic
│ ○ Databricks
│ ○ Google Gemini
│ ○ Groq
│ ● Ollama (Local open source models)
│ ○ OpenAI
│ ○ OpenRouter

  1. Enter the host where your model is running
┌   goose-configure 

◇ What would you like to configure?
│ Configure Providers

◇ Which model provider should we use?
│ Ollama

◆ Provider Ollama requires OLLAMA_HOST, please enter a value
│ http://localhost:11434

  1. Enter the installed model from above
┌   goose-configure 

◇ What would you like to configure?
│ Configure Providers

◇ Which model provider should we use?
│ Ollama

◇ Provider Ollama requires OLLAMA_HOST, please enter a value
│ http://localhost:11434

◇ Enter a model from that provider:
│ michaelneale/deepseek-r1-goose

◇ Welcome! You're all set to explore and utilize my capabilities. Let's get started on solving your problems together!

└ Configuration saved successfully

If you have any questions or need help with a specific provider, feel free to reach out to us on Discord or on the Goose repo.