QuantumNous/new-api

A unified AI model hub for aggregation & distribution. It supports cross-converting various LLMs into OpenAI-compatible, Claude-compatible, or Gemini-compatible formats. A centralized gateway for personal and enterprise model management.

New API – 自托管 AI 网关

简介 – New API 是一个开源、可自托管的网关,位于您的应用程序(或 AI 代理)与各种大型语言模型提供者之间。它提供单一且一致的 OpenAI 兼容 HTTP API,同时处理路由、使用量追踪、访问控制、定价与多模型管理。

主要功能

  • 多提供者支持 – 连接上游服务,如 OpenAI、Anthropic、Google Gemini、Azure OpenAI、AWS Bedrock、Vertex AI、DeepSeek、Qwen 等。
  • 统一端点 – 提供熟悉的 OpenAI 风格路由(/v1/chat/completions、/v1/messages、/v1/embeddings、图像/音频生成、WebSocket 实时通讯等)以及插件任务系统。
  • 路由与故障转移 – 定义通道优先级、权重、重试机制与亲和性,以自动平衡或切换提供者。
  • 使用量与成本核算 – 追踪 Token 使用量、缓存核算、配额、订阅以及基于表达式的分级定价。
  • 细粒度访问控制 – 支持用户、组、API 密钥范围、OAuth/OIDC、passkeys、2FA 与会话管理。
  • 可扩展任务插件 – JavaScript 插件让您能新增自定义异步任务(例如图像处理、视频生成),并提供状态端点。
  • 网页控制台 – 基于 React 的多语言 UI,用于配置模型、查看仪表板、管理用户与测试 API。

如何开始

  1. 使用 Docker 运行 – 单一指令即可启动 New API 并使用 SQLite 存储数据。
    mkdir -p data
    docker run --name new-api -d --restart unless-stopped \
      -p 127.0.0.1:3000:3000 \
      -e TZ=Asia/Shanghai \
      -v "$(pwd)/data:/data" calciumion/new-api:latest
    
  2. 打开 http://localhost:3000,执行设置向导,添加上游通道(例如您的 OpenAI 密钥),并创建 API 密钥。
  3. 将您的客户端指向 http://localhost:3000/v1,并像使用原始提供者一样使用该密钥。

部署选项

  • Docker-Compose – 包含 PostgreSQL + Redis(或 MySQL/ClickHouse),适用于生产环境的持久化与速率限制。
  • 可配置存储 – 支持 SQLite、MySQL、PostgreSQL,可选的独立日志数据库与 Redis 缓存。
  • 环境变量 – 控制数据库连接、密钥、Cookie 安全性、受信任代理等。
  • 多节点设置可共享主数据库与密钥;Redis 可用于共享速率限制。

开发

  • 后端:Go + Gin 框架。
  • 前端:React 19, TypeScript, Tailwind 4,使用 Bun 构建。
  • relaykit – 一个标准化四大文本协议的 Go 模块。
  • 插件位于 plugins/tasks/;请遵循 Task Plugin API v1 编写 JavaScript 插件。
  • 构建步骤:UI 使用 bun install && bun run build,服务器使用 go run .,或使用提供的 make dev 工作流程。

文档与社区

授权 – AGPL-v3 并附带额外的署名要求。


简而言之,New API 让团队能托管自己的“一站式”LLM 访问服务,在保持熟悉的 OpenAI 风格 API 的同时,掌控成本、安全与提供者选择。

相关

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