mcpField
G
GoModel

GoModel

本地服务
github.com/ENTERPILOTAI 与智能体1.3k今天更新

关于 GoModel

GoModel 是面向运营 LLM 提供商和 MCP 服务的团队的可自托管 AI 网关,提供兼容 API、用量控制与路由,并将多个 MCP 服务汇聚到单一认证端点。

主要功能

  1. 01将 MCP 服务汇聚到单一端点
  2. 02兼容 OpenAI 和 Anthropic API
  3. 03响应缓存与成本跟踪
  4. 04预算、速率限制和访问控制
  5. 05提供商故障转移与虚拟模型
  6. 06Prometheus 指标和 OpenTelemetry 跟踪

适用场景

  1. 01通过一个认证端点提供多个 MCP 服务
  2. 02按密钥或团队跟踪并限制模型支出
  3. 03在多个提供商间路由请求并故障转移
  4. 04通过网关使用现有 OpenAI 或 Anthropic SDK

MCP 相关

GoModel 汇聚上游 MCP 服务,并通过单一认证 HTTP 端点向 MCP 客户端提供访问。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"enterpilot-gomodel": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GOMODEL_MASTER_KEY",
"-e",
"MCP_SERVERS",
"docker.io/enterpilot/gomodel:0.1.109"
],
"env": {
"GOMODEL_MASTER_KEY": "<GOMODEL_MASTER_KEY>",
"MCP_SERVERS": "<MCP_SERVERS>"
}
}
}
}
启动命令docker run -i --rm -e GOMODEL_MASTER_KEY -e MCP_SERVERS docker.io/enterpilot/gomodel:0.1.109
需要配置的环境变量
GOMODEL_MASTER_KEY密钥Gateway API key clients authenticate with; unset runs the gateway in unsafe (no-auth) mode.
MCP_SERVERSJSON object of upstream MCP servers to aggregate, e.g. {"github":{"url":"https://api.githubcopilot.com/mcp/","headers":{"Authorization":"Bearer ${GITHUB_PAT}"}}}. Servers can also be declared in config.yaml or the admin dashboard.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocidocker.io/enterpilot/gomodel:0.1.109

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

GoModel 标志

GoModel - 您所需的最后一个 AI 网关

CI GO 版本 Docker 拉取次数 Discord

Hacker News GoModel 文档

GoModel 登上 Hacker News

GoModel 是速度最快、资源效率最高的 AI 网关(可自行复现的基准测试)。它是 LiteLLM(近期遭到攻击)和 Portkey(已不再在 GitHub 上维护)的替代方案。

GoModel AI 网关仪表板,展示 AI 使用情况分析、可观测性面板、令牌与成本跟踪以及预估成本监控

(点击上方动画 ↑ 查看实时演示)

GoModel 为您省钱,也省心。

省钱 - 因为您可以在这一层缓存响应、跟踪支出,还能使用提示词压缩和智能路由等功能。

省心 - 因为我们致力于提供优质、可靠的体验。我们的目标是打造您所需的最后一个 AI 网关——最可靠、资源利用最优、功能丰富且速度快。

快速开始

步骤 1: 安装并启动 GoModel

Docker

docker run --rm -p 8080:8080 \
  -v gomodel_data:/app/data \
  enterpilot/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

ℹ️ 使用 .env、config.yaml 文件配置 GoModel,或直接在仪表板中管理最重要的设置。

ℹ️ 完整的环境变量列表(包括所有可用的提供商)请参阅 .env.template。

步骤 2: 打开仪表板并添加提供商

http://localhost:8080/admin/dashboard

步骤 3: 发起 API 调用

curl http://localhost:8080/v1/responses \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5-chat-latest",
    "input": "Hello!"
  }'

GoModel 与官方 SDK

GoModel 支持两种兼容的请求格式:

  • OpenAI 兼容格式,路径为 /v1
  • Anthropic 兼容格式,路径为 /v1/messages

因此,官方 SDK 无需修改即可使用。请按如下方式配置基础 URL:

  • OpenAI SDK:http://localhost:8080/v1
  • Anthropic SDK:http://localhost:8080(SDK 会自动追加 /v1/messages)

支持的 LLM 提供商列表

  • OpenAI
  • Anthropic
  • xAI(Grok)
  • Google Gemini
  • Cohere
  • Vertex AI
  • DeepSeek
  • Groq
  • Fireworks AI
  • Together AI
  • Meta(Muse Spark)
  • OpenRouter
  • Z.ai
  • Alibaba Cloud Model Studio(Bailian)
  • Kilo AI
  • Eden AI
  • MiniMax
  • Xiaomi MiMo
  • OpenCode Go
  • Azure OpenAI
  • Oracle
  • Ollama
  • SGLang
  • vLLM
  • llm-d
  • Amazon Bedrock Runtime 和 Bedrock Mantle
  • ChatGPT(Codex 后端)和 Claude
  • GitHub Copilot
  • ElevenLabs(文本转语音和语音转文本)
  • Jev(TypeSafe System One 决策 API)和可自托管的 Kev,也可通过 OpenAI 的 Decisions API 使用
  • 所有兼容 OpenAI 的提供商

请参阅提供商概览,了解完整的提供商功能对照表。


Docker Compose

仅基础设施(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

API 文档


网关配置

GoModel 按以下顺序解析配置,每个来源都会覆盖其左侧的来源:

良好默认值 → config.yaml → .env → 导出的环境变量

请参阅配置参考,了解完整的设置列表。


功能

  • 缓存 - 精确和语义响应缓存,让重复提示词无需花费
  • 成本跟踪 - 在仪表板中查看每个请求的成本估算、用量分析和支出明细
  • 预算 - 为每位用户、团队或密钥设置硬性支出限额
  • 速率限制 - 为每条用户路径、提供商或模型设置请求数、令牌数和并发数上限
  • 用量 API - 客户端使用已有的推理密钥,查询自身用量、剩余预算和速率限制余量
  • 虚拟模型 - 在稳定的模型名称后配置别名和负载均衡(轮询或按成本分配)
  • 会话保持 - 检测客户端会话并将其固定到一个目标和提供商密钥,以保持提供商提示词缓存处于热状态,并让审计日志以线程形式呈现
  • 故障转移 - 自动将请求重新路由到备用提供商,并支持重试和熔断器
  • 标记 - 根据 HTTP 标头或 API 密钥为请求添加标签,并按标签细分用量
  • 用户路径 - 按层级划分密钥、模型访问权限、预算、用量和审计日志
  • 模型访问控制 - 为每个组、用户和密钥配置模型允许列表,并沿用户路径树逐级取交集
  • MCP 网关 - 将 MCP 服务聚合到一个经过身份验证的端点后
  • 直通 API - 通过 /p/{provider}/... 访问提供商原生 API,并使用 GoModel 进行身份验证和跟踪
  • 音频和图像 API - 提供兼容 OpenAI 的文本转语音、转录以及图像生成和编辑,并沿用与聊天相同的访问规则、预算和成本跟踪
  • 提供商重放状态 - 在不同轮次、API 和提供商之间保留 Gemini 思考签名和 Anthropic 思考块
  • 护栏 - 在网关强制执行请求和响应策略
  • 插件 - 为护栏、响应和流过滤器、标头编辑以及路由策略提供统一约定;可内置、编译到程序中,或在启动时从 .so 加载
  • 工作流 - 版本化的逐请求策略,可按用户路径、提供商或模型限定缓存、预算、审计日志、护栏阶段和故障转移
  • 提供商密钥轮换 - 轮流使用多个 API 密钥,以提高每个密钥的速率限制
  • 可观测性 - 在仪表板中查看 Prometheus 指标、OpenTelemetry 追踪、审计日志和实时请求流
  • 游乐场 - 在仪表板中试用任意模型或虚拟模型,并查看确切的请求和响应 JSON

GoModel Pro

GoModel Pro 是商业版:具备相同的网关、配置和仪表盘,并提供经过授权的扩展功能。

  • 提示词压缩 - 在请求到达提供方之前,移除重复和结构性上下文,同时不改变请求的形态
  • 智能路由 - 将每个请求分类为简单或复杂,然后在相应层级中选择状态最佳且成本最低的提供方
  • OIDC 单点登录 - 使用带 PKCE 的 Authorization Code 流程,通过身份提供方保护仪表盘

更多内容请参阅文档……

路线图

请参阅 路线图,了解 GoModel Pro 和即将发布的 0.2.0 版本。

赞助者

Neiko2002

社区

我们在 Discord 上。欢迎来交流,告诉我们你对 GoModel 的看法。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。