looplj/axonhub

⚡️ Open-source AI Gateway — Use any SDK to call 100+ LLMs. Built-in failover, load balancing, cost control & end-to-end tracing.

AxonHub – 一体化 AI 开发平台

是什么 – AxonHub 是一个用 Go 编写的自托管网关,位于您的应用代码与任何大语言模型(LLM)提供商之间。您可以在不修改代码的情况下,继续使用相同的 SDK(例如 OpenAI 的 Python 客户端),仅通过更改配置文件即可在 OpenAI、Anthropic、Gemini 等不同模型提供商之间切换。

核心功能

功能 你能获得什么
任意 SDK → 任意模型 使用 OpenAI、Anthropic 或其他 SDK,请求将自动转换为所选提供商的 API 格式。无需修改代码。
完整请求追踪 线程级日志显示每次调用的完整时间线,使调试变得快速高效。
企业级 RBAC 细粒度权限、使用配额和团队间数据隔离。
智能负载均衡与故障转移 <100ms 的路由决策;当某个提供商性能下降时,自动切换到最健康的通道。
实时成本追踪 每个请求的 token 级成本分解(输入、输出、缓存),并用于预算汇总。
多模态 API 支持文本生成、图像生成、嵌入、重排序,以及(计划中)实时聊天。
支持的提供商 OpenAI、Anthropic、智谱(GLM)、Moonshot、DeepSeek、字节跳动 Doubao、Gemini、Jina AI、OpenRouter、AWS Bedrock(测试中)、Google Cloud(测试中)、NanoGPT 等。

工作原理 – AxonHub 暴露一组模仿 OpenAI API 结构的 REST/GraphQL 端点。当请求到达时,AxonHub 执行以下步骤:

  1. 通过 AxonHub API 密钥对调用者进行身份验证。
  2. 查找目标提供商/通道(使用其自身的 API 密钥配置)。
  3. 将请求体转换为提供商的原生格式。
  4. 发送请求,记录延迟、token 使用量和成本,并以原始 OpenAI 风格的结构返回响应。

快速开始(部署后)

from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:8090/v1",  # AxonHub 地址
    api_key="your-axonhub-api-key"
)

resp = client.chat.completions.create(
    model="gpt-4o",                     # 任何已启用的模型名称
    messages=[{"role": "user", "content": "Hello, AxonHub!"}]
)
print(resp.choices[0].message.content)

之后若将通道切换为 Claude、Gemini 或中文语言模型,相同的代码依然有效——只需更改 AxonHub 配置即可。

典型使用场景

  • 避免供应商锁定 – 无需重写客户端代码即可在不同提供商之间测试或迁移。
  • 成本优化 – 为低优先级任务路由低成本模型,同时为关键查询保留高端模型。
  • 可观测性与治理 – 集中日志、团队级配额和成本仪表板,便于合规团队管理。
  • 多模态应用 – 在单一端点后整合文本、图像、嵌入和重排序 API。

部署 – 项目提供 Docker 镜像(docker-ready 标签),可在任何支持 Go 的主机上运行。README 提供了 Render.com 上的演示实例链接,并附带 deploy-axonhub 技能以实现自动化部署。

文档与社区 – 完整的中英文文档、API 参考、追踪、权限、负载均衡和成本追踪指南均托管在仓库和 DeepWiki 网站上。项目采用 Apache-2.0/LGPL-3.0 双重开源许可。


总结 – AxonHub 是一个实用且生产就绪的网关,抽象了 LLM 供应商之间的差异,为所有 AI 模型提供单一、可观测的 API 表面。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目