用Go实现的AI模型网关,为API路由和负载均衡提供轻量解决方案。Go开发者部署AI应用的有用工具。
GoModel 是速度最快、资源效率最高的 AI Gateway(有可自行复现的基准测试作为依据)。它可以替代 LiteLLM(最近曾遭到黑客攻击)和 Portkey(其 GitHub 项目已停止维护)。
(点击上方动画 ↑ 查看实时演示)
GoModel 帮你省钱,也省心。
省钱——因为你可以在这一层记住响应(缓存)、跟踪支出,还能使用 prompt 压缩和智能路由等技巧。
省心——因为我们始终致力于实现出色的质量和可靠性。我们的目标是让 GoModel 成为你需要的最后一个 AI Gateway:最可靠、资源利用最优、功能最丰富,同时速度也最快。
curl -fsSL https://gomodel.enterpilot.io/install.sh | sh
# OPENAI_API_KEY="your-openai-key" # (optional)
gomodel
irm https://gomodel.enterpilot.io/install.ps1 | iex
# $env:OPENAI_API_KEY = "your-openai-key" # (optional)
gomodel
docker run --rm -p 8080:8080 \
-e OPENAI_API_KEY="your-openai-key" \
enterpilot/gomodel
ℹ️ 你可以通过 .env 变量、config.yaml 文件,或直接在 dashboard 中配置 GoModel。
ℹ️ 完整的环境变量列表(包括所有可用的 provider):.env.template
ℹ️ 在生产环境中,最安全的方式是使用 .env 加载 API key。
http://localhost:8080/admin/dashboard
curl http://localhost:8080/v1/responses \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5-chat-latest",
"input": "Hello!"
}'
GoModel 在 /v1 提供兼容 OpenAI 的 API,并在 /v1/messages 提供兼容 Anthropic 的 API,因此官方 SDK 无需修改即可使用——只需将 base URL 指向你的 GoModel 服务器,并使用你的 GoModel key(可通过 GOMODEL_MASTER_KEY 环境变量设置,或在 dashboard 中生成)。
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:8080/v1", # your GoModel server
api_key="your-gomodel-key",
)
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "http://localhost:8080/v1", // your GoModel server
apiKey: "your-gomodel-key",
});
Anthropic SDK 使用 x-api-key 进行身份验证;除 Authorization: Bearer 外,GoModel 也接受这种认证方式。
from anthropic import Anthropic
client = Anthropic(
base_url="http://localhost:8080", # your GoModel server (no /v1 suffix)
api_key="your-gomodel-key",
)
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 支持 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、vLLM、Amazon Bedrock Runtime、Amazon Bedrock Mantle,以及所有兼容 OpenAI 的 provider。
完整的 provider 功能矩阵(chat、/responses、embeddings、files、batches、passthrough)、凭据和配置说明,请参阅 Providers Overview。
仅启动基础设施(Redis、PostgreSQL、MongoDB、Adminer,不构建镜像):
cp .env.template .env
# Add your API keys to .env
docker compose up -d
# or: make infra
启动完整技术栈(加入 GoModel 和 Prometheus,并构建应用镜像):
docker compose --profile app up -d
# or: make image
docker build -t gomodel .
docker run --rm -p 8080:8080 --env-file .env gomodel
GoModel 提供兼容 OpenAI 和 Anthropic 的 API、provider 原生 passthrough,以及 operations 路由。完整的 endpoint 表格请参阅 API Endpoints;Admin REST API 和 dashboard 请参阅 Admin Endpoints。
GoModel 通过环境变量和可选的 config.yaml 进行配置。环境变量的优先级高于 YAML 中的值。按类别整理的完整设置列表,请参阅 Configuration,并结合 .env.template 和 config/config.example.yaml 使用。
Caching——支持精确响应缓存和语义响应缓存,让重复 prompt 不再产生费用。
Cost tracking——提供每次请求的成本估算、用量分析,以及 dashboard 中的支出明细。
Budgets——为每个用户、团队或 key 设置硬性支出上限。
Rate limits——按 user path、provider 或 model 限制请求数、token 数和并发量。
Virtual models——在稳定的 model 名称背后提供别名和负载均衡能力,支持轮询或基于成本的策略。
Failover——自动将请求重新路由到备用 provider,并支持重试和熔断器。
Labelling——通过 HTTP header 或 API key 为请求添加标签,并按标签拆分统计用量。
User paths——分层管理 key、model 访问权限、budget、usage 和 audit log 的作用域。
MCP gateway——将多个 MCP server 聚合到一个经过身份验证的 endpoint 后面。
Passthrough API——在 /p/{provider}/... 下提供 provider 原生 API,并接入 GoModel 的身份验证和跟踪能力。
Guardrails——在 Gateway 层强制执行请求和响应策略。
Provider key rotation——在多个 API key 之间进行轮询,以突破单个 key 的 rate limit。
Observability——提供 Prometheus metrics、audit log,以及 dashboard 中的实时请求流。
商业功能和公开的 0.2.0 milestone,请参阅 Roadmap。
欢迎加入我们的 Discord,与其他 GoModel 用户交流。