Repolode
ENTERPILOT

ENTERPILOT/GoModel

用 Go 编写的自托管 AI 网关,以 OpenAI/Anthropic 兼容接口统一对接多家大模型服务。

可替代:LiteLLM

Star
1,305
Fork
125
未关闭 Issue
87
最近提交
19小时前

这是什么?

GoModel 是一个用 Go 编写的 AI 网关,位于应用与大模型服务商之间。客户端可以用 OpenAI 兼容格式请求 /v1,也可以用 Anthropic 兼容格式请求 /v1/messages,网关再转发到 OpenAI、Anthropic、Gemini、Groq、xAI、Ollama、vLLM 等服务。官方 SDK 只需修改 base URL 即可接入。

在路由之外,它还提供运维能力:精确和语义级的响应缓存、按请求的成本估算、按用户路径、密钥或模型设置的预算与速率限制,以及带重试和熔断的自动故障转移。虚拟模型可以提供稳定的模型名并做轮询或基于成本的负载均衡,会话保持功能则把同一客户端会话固定到某个服务商密钥上。

项目还包含管理后台,提供 Playground、实时请求日志、Prometheus 指标、OpenTelemetry 链路追踪和审计日志。此外支持护栏策略、MCP 网关和插件机制,并提供 Docker 镜像与 Docker Compose 配置用于部署。

核心功能

  • 01对多家大模型服务提供统一的 OpenAI 和 Anthropic 兼容接口
  • 02支持精确与语义级响应缓存
  • 03按请求统计成本,并可设置预算和速率限制
  • 04支持带重试和熔断的故障转移
  • 05虚拟模型支持轮询或基于成本的负载均衡
  • 06提供 Prometheus 指标、OpenTelemetry 追踪和实时日志

适用场景

  • 让应用在不修改客户端代码的情况下切换或同时使用多家大模型服务
  • 按团队或 API Key 追踪并限制 AI 支出
  • 在 Ollama、vLLM 等自托管模型前增加缓存和故障转移
  • 作为集中式 LLM 代理替代 LiteLLM

快速上手

  1. 1

    使用 Docker 启动 GoModel

    docker run --rm -p 8080:8080 -v gomodel_data:/app/data enterpilot/gomodel
  2. 2

    运行 README 中的官方安装脚本(macOS/Linux 或 Windows)

  3. 3

    打开 localhost:8080 的管理面板并添加一个提供商

  4. 4

    调用 /v1/responses 接口进行测试

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

使用前须知

  • 部分功能(如提示压缩、智能路由和 OIDC 单点登录)仅包含在商业版 GoModel Pro 中。
  • 要使用托管模型,需要您自己的提供商 API 密钥。

收录于专题

标签

常见问题

GoModel 是什么?
用 Go 编写的自托管 AI 网关,以 OpenAI/Anthropic 兼容接口统一对接多家大模型服务。 GoModel 是一个用 Go 编写的 AI 网关,位于应用与大模型服务商之间。客户端可以用 OpenAI 兼容格式请求 /v1,也可以用 Anthropic 兼容格式请求 /v1/messages,网关再转发到 OpenAI、Anthropic、Gemini、Groq、xAI、Ollama、vLLM 等服务。官方 SDK 只需修改 base URL 即可接入。
GoModel 可以免费使用吗?用的什么许可证?
GoModel 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
GoModel 还在维护吗?
活跃维护中。GoModel 最近一次提交是在 2026年11月6日。
GoModel 适合用来做什么?
让应用在不修改客户端代码的情况下切换或同时使用多家大模型服务 按团队或 API Key 追踪并限制 AI 支出 在 Ollama、vLLM 等自托管模型前增加缓存和故障转移 作为集中式 LLM 代理替代 LiteLLM
GoModel 怎么安装和运行?
使用 Docker 启动 GoModel: docker run --rm -p 8080:8080 -v gomodel_data:/app/data enterpilot/gomodel 运行 README 中的官方安装脚本(macOS/Linux 或 Windows) 打开 localhost:8080 的管理面板并添加一个提供商 调用 /v1/responses 接口进行测试: curl http://localhost:8080/v1/responses -H "Content-Type: application/json" -d '{"model": "gpt-5-chat-latest", "input": "Hello!"}'
在哪里获取 GoModel?
源代码和安装说明在 GitHub 上:https://github.com/ENTERPILOT/GoModel

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目