AI gateway / AI control plane / AI proxy written in Go. Unified OpenAI-compatible and Anthropic-compatible API for OpenAI, Anthropic, Gemini, Groq, xAI, Ollama, vLLM and more. A LiteLLM alternative with observability, guardrails, streaming, cost tracking, intelligent routing, sticky sessions, failover, real-time logs and usage tracking. Prod ready.
1,114
stars
832
commits
Go
primary language
Sep 6, 2026
updated
GoModel is the fastest and the most resource-efficient AI Gateway (the self-reproducible benchmarks). It's an alternative to LiteLLM (which was hacked recently) and Portkey (which is no longer maintained on GitHub).
(click on the animation ↑ to see the live demo)
GoModel saves you money and nerves.
Money - because you can remember the responses on this layer (caching), track your spending and do tricks like prompt compression and intelligent routing.
Nerves - because we strive to achieve good quality and reliability. Our ambition is to be the last AI gateway you will need - the most reliable, resource-optimal, feature-rich and fast.
Step 1: Install and start GoModel
macOS / Linux
curl -fsSL https://gomodel.enterpilot.io/install.sh | sh
# OPENAI_API_KEY="your-openai-key" # (optional)
gomodel
Windows (PowerShell)
irm https://gomodel.enterpilot.io/install.ps1 | iex
# $env:OPENAI_API_KEY = "your-openai-key" # (optional)
gomodel
Docker
docker run --rm -p 8080:8080 \
-e OPENAI_API_KEY="your-openai-key" \
enterpilot/gomodel
ℹ️ You can configure GoModel with .env variables, a config.yaml file, OR directly in the dashboard.
ℹ️ Full list of environment variables (including all available providers): .env.template
ℹ️ The most secure way in production is to use .env to load API keys.
Step 2: Open the dashboard
http://localhost:8080/admin/dashboard
Step 3: Make your first API call
curl http://localhost:8080/v1/responses \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5-chat-latest",
"input": "Hello!"
}'
GoModel exposes an OpenAI-compatible API at /v1 and an Anthropic-compatible
API at /v1/messages, so the official SDKs work unchanged - just point the
base URL at your GoModel server and use your GoModel key
(set up with the GOMODEL_MASTER_KEY env variable or one generated in the dashboard).
Python
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:8080/v1", # your GoModel server
api_key="your-gomodel-key",
)
TypeScript / JavaScript
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "http://localhost:8080/v1", // your GoModel server
apiKey: "your-gomodel-key",
});
The Anthropic SDK authenticates with x-api-key, which GoModel accepts
alongside Authorization: Bearer.
Python
from anthropic import Anthropic
client = Anthropic(
base_url="http://localhost:8080", # your GoModel server (no /v1 suffix)
api_key="your-gomodel-key",
)
TypeScript / JavaScript
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
baseURL: "http://localhost:8080", // your GoModel server (no /v1 suffix)
apiKey: "your-gomodel-key",
});
GoModel supports OpenAI, Anthropic, Cohere, Google Gemini, Vertex AI, DeepSeek, Groq, Fireworks AI, Meta (Muse Spark), OpenRouter, Z.ai, xAI (Grok), Alibaba Cloud Model Studio (Bailian), Kilo AI, MiniMax, Xiaomi MiMo, OpenCode Go, Azure OpenAI, Oracle, Ollama, SGLang, vLLM, llm-d, Amazon Bedrock Runtime, Amazon Bedrock Mantle, and all OpenAI-compatible providers. Subscription-billed: ChatGPT (the Codex backend) and Claude. Voice: ElevenLabs (text-to-speech and speech-to-text).
See the Providers Overview for the full
per-provider feature matrix (chat, /responses, embeddings, files, batches,
passthrough), credentials, and configuration notes.
Infrastructure only (Redis, PostgreSQL, MongoDB, Adminer - no image build):
cp .env.template .env
# Add your API keys to .env
docker compose up -d
# or: make infra
Full stack (adds GoModel + Prometheus; builds the app image):
docker compose --profile app up -d
# or: make image
| Service | URL |
|---|---|
| GoModel API | http://localhost:8080 |
| Adminer (DB UI) | http://localhost:8081 |
| Prometheus | http://localhost:9090 |
docker build -t gomodel .
docker run --rm -p 8080:8080 --env-file .env gomodel
GoModel exposes OpenAI-compatible and Anthropic-compatible APIs, provider-native passthrough, and operations routes. See the API Endpoints reference for the full endpoint tables, and Admin Endpoints for the admin REST API and dashboard.
GoModel is configured through environment variables and an optional config.yaml. Environment variables override YAML values. See the Configuration reference for the full list of settings organized by category, along with .env.template and config/config.example.yaml.
/p/{provider}/..., with GoModel auth and trackingSee the Roadmap for commercial features and the public 0.2.0 milestone.
Join our Discord to connect with other GoModel users.
Go
82.7%
JavaScript
10.5%
Svelte
5.1%
AI gateway / AI control plane / AI proxy written in Go. Unified OpenAI-compatible and Anthropic-compatible API for OpenAI, Anthropic, Gemini, Groq, xAI, Ollama, vLLM and more. A LiteLLM alternative with observability, guardrails, streaming, cost tracking, intelligent routing, sticky sessions, failover, real-time logs and usage tracking. Prod ready.
1,114
stars
832
commits
Go
primary language
Sep 6, 2026
updated
GoModel is the fastest and the most resource-efficient AI Gateway (the self-reproducible benchmarks). It's an alternative to LiteLLM (which was hacked recently) and Portkey (which is no longer maintained on GitHub).
(click on the animation ↑ to see the live demo)
GoModel saves you money and nerves.
Money - because you can remember the responses on this layer (caching), track your spending and do tricks like prompt compression and intelligent routing.
Nerves - because we strive to achieve good quality and reliability. Our ambition is to be the last AI gateway you will need - the most reliable, resource-optimal, feature-rich and fast.
Step 1: Install and start GoModel
macOS / Linux
curl -fsSL https://gomodel.enterpilot.io/install.sh | sh
# OPENAI_API_KEY="your-openai-key" # (optional)
gomodel
Windows (PowerShell)
irm https://gomodel.enterpilot.io/install.ps1 | iex
# $env:OPENAI_API_KEY = "your-openai-key" # (optional)
gomodel
Docker
docker run --rm -p 8080:8080 \
-e OPENAI_API_KEY="your-openai-key" \
enterpilot/gomodel
ℹ️ You can configure GoModel with .env variables, a config.yaml file, OR directly in the dashboard.
ℹ️ Full list of environment variables (including all available providers): .env.template
ℹ️ The most secure way in production is to use .env to load API keys.
Step 2: Open the dashboard
http://localhost:8080/admin/dashboard
Step 3: Make your first API call
curl http://localhost:8080/v1/responses \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5-chat-latest",
"input": "Hello!"
}'
GoModel exposes an OpenAI-compatible API at /v1 and an Anthropic-compatible
API at /v1/messages, so the official SDKs work unchanged - just point the
base URL at your GoModel server and use your GoModel key
(set up with the GOMODEL_MASTER_KEY env variable or one generated in the dashboard).
Python
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:8080/v1", # your GoModel server
api_key="your-gomodel-key",
)
TypeScript / JavaScript
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "http://localhost:8080/v1", // your GoModel server
apiKey: "your-gomodel-key",
});
The Anthropic SDK authenticates with x-api-key, which GoModel accepts
alongside Authorization: Bearer.
Python
from anthropic import Anthropic
client = Anthropic(
base_url="http://localhost:8080", # your GoModel server (no /v1 suffix)
api_key="your-gomodel-key",
)
TypeScript / JavaScript
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
baseURL: "http://localhost:8080", // your GoModel server (no /v1 suffix)
apiKey: "your-gomodel-key",
});
GoModel supports OpenAI, Anthropic, Cohere, Google Gemini, Vertex AI, DeepSeek, Groq, Fireworks AI, Meta (Muse Spark), OpenRouter, Z.ai, xAI (Grok), Alibaba Cloud Model Studio (Bailian), Kilo AI, MiniMax, Xiaomi MiMo, OpenCode Go, Azure OpenAI, Oracle, Ollama, SGLang, vLLM, llm-d, Amazon Bedrock Runtime, Amazon Bedrock Mantle, and all OpenAI-compatible providers. Subscription-billed: ChatGPT (the Codex backend) and Claude. Voice: ElevenLabs (text-to-speech and speech-to-text).
See the Providers Overview for the full
per-provider feature matrix (chat, /responses, embeddings, files, batches,
passthrough), credentials, and configuration notes.
Infrastructure only (Redis, PostgreSQL, MongoDB, Adminer - no image build):
cp .env.template .env
# Add your API keys to .env
docker compose up -d
# or: make infra
Full stack (adds GoModel + Prometheus; builds the app image):
docker compose --profile app up -d
# or: make image
| Service | URL |
|---|---|
| GoModel API | http://localhost:8080 |
| Adminer (DB UI) | http://localhost:8081 |
| Prometheus | http://localhost:9090 |
docker build -t gomodel .
docker run --rm -p 8080:8080 --env-file .env gomodel
GoModel exposes OpenAI-compatible and Anthropic-compatible APIs, provider-native passthrough, and operations routes. See the API Endpoints reference for the full endpoint tables, and Admin Endpoints for the admin REST API and dashboard.
GoModel is configured through environment variables and an optional config.yaml. Environment variables override YAML values. See the Configuration reference for the full list of settings organized by category, along with .env.template and config/config.example.yaml.
/p/{provider}/..., with GoModel auth and trackingSee the Roadmap for commercial features and the public 0.2.0 milestone.
Join our Discord to connect with other GoModel users.
Go
82.7%
JavaScript
10.5%
Svelte
5.1%