fdc310/new-api

GitHub: fdc310/new-api

该项目是一个统一的 LLM 网关与 AI 资产管理系统,解决多模型接入、计费计量、权限管控与智能路由问题。

Stars: 0 | Forks: 0

![new-api](/web/default/public/logo.png) # 新 API 🍥 **下一代 LLM 网关与 AI 资产管理系统**

简体中文 | 繁體中文 | English | Français | 日本語

license release docker GoReportCard

QuantumNous%2Fnew-api | Trendshift
Featured|HelloGitHub New API - All-in-one AI asset management gateway. | Product Hunt

快速开始核心功能部署文档帮助

## 📝 项目描述 ## 🤝 信任的合作伙伴

排名不分先后

Cherry Studio Aion UI Peking University UCloud Alibaba Cloud IO.NET

## 🙏 特别感谢

JetBrains Logo

感谢 JetBrains 为本项目提供免费的开源开发许可证

## 🚀 快速开始 ### 使用 Docker Compose(推荐) ``` # Clone the project git clone https://github.com/QuantumNous/new-api.git cd new-api # 编辑 docker-compose.yml 配置 nano docker-compose.yml # 启动服务 docker-compose up -d ```
使用 Docker 命令 ``` # 拉取最新 image docker pull calciumion/new-api:latest # 使用 SQLite(默认) docker run --name new-api -d --restart always \ -p 3000:3000 \ -e TZ=Asia/Shanghai \ -v ./data:/data \ calciumion/new-api:latest # 使用 MySQL docker run --name new-api -d --restart always \ -p 3000:3000 \ -e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi" \ -e TZ=Asia/Shanghai \ -v ./data:/data \ calciumion/new-api:latest ```
🎉 部署完成后,访问 `http://localhost:3000` 即可开始使用! 📖 关于更多部署方式,请参考[部署指南](https://docs.newapi.pro/en/docs/installation) ## 📚 文档
### 📖 [官方文档](https://docs.newapi.pro/en/docs) | [![询问 DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/QuantumNous/new-api)
**快速导航:** | 分类 | 链接 | |------|------| | 🚀 部署指南 | [安装文档](https://docs.newapi.pro/en/docs/installation) | | ⚙️ 环境配置 | [环境变量](https://docs.newapi.pro/en/docs/installation/config-maintenance/environment-variables) | | 📡 API 文档 | [API 文档](https://docs.newapi.pro/en/docs/api) | | ❓ 常见问题 | [FAQ](https://docs.newapi.pro/en/docs/support/faq) | | 💬 社区交流 | [交流渠道](https://docs.newapi.pro/en/docs/support/community-interaction) | ## ✨ 核心功能 ### 🎨 核心功能 | 功能 | 描述 | |------|------| | 🎨 全新 UI | 现代化的用户界面设计 | | 🌍 多语言 | 支持简体中文、繁体中文、英文、法文、日文 | | 🔄 数据兼容 | 完全兼容原版 One API 数据库 | | 📈 数据看板 | 可视化控制台和统计分析 | | 🔒 权限管理 | Token 分组、模型限制、用户管理 | ### 💰 授权使用计量与计费 - ✅ 适用于合法授权场景的内部充值与额度分配(EPay, Stripe) - ✅ 组织级别的按次请求、按使用量及缓存命中的成本核算 - ✅ 支持 OpenAI、Azure、DeepSeek、Claude、Qwen 及受支持模型的缓存计费统计 - ✅ 适用于内部管理或授权企业客户的灵活计费策略 ### 🔐 授权与安全 - 😈 Discord 授权登录 - 🤖 LinuxDO 授权登录 - 📱 Telegram 授权登录 - 🔑 OIDC 统一身份验证 - 🔍 Key 额度查询使用(借助 [new-api-key-tool](https://github.com/Calcium-Ion/new-api-key-tool)) ### 🚀 高级功能 - ⚡ [OpenAI Responses](https://docs.newapi.pro/en/docs/api/ai-model/chat/openai/create-response) - ⚡ [OpenAI Realtime API](https://docs.newapi.pro/en/docs/api/ai-model/realtime/create-realtime-session)(包含 Azure) - ⚡ [Claude Messages](https://docs.newapi.pro/en/docs/api/ai-model/chat/create-message) - ⚡ [Google Gemini](https://doc.newapi.pro/en/api/google-gemini-chat) - 🔄 [Rerank 模型](https://docs.newapi.pro/en/docs/api/ai-model/rerank/create-rerank)(Cohere, Jina) **智能路由:** - ⚖️ 渠道加权随机 - 🔄 失败自动重试 - 🚦 用户级模型速率限制 **格式转换:** - 🔄 **兼容 OpenAI ⇄ Claude Messages** - 🔄 **兼容 OpenAI → Google Gemini** - 🔄 **Google Gemini → 兼容 OpenAI** - 仅支持文本,暂不支持 function calling - 🚧 **兼容 OpenAI ⇄ OpenAI Responses** - 开发中 - 🔄 **Thinking-to-content 功能**
查看详细配置 **OpenAI 系列模型:** - `o3-mini-high` - 高强度推理 - `o3-mini-medium` - 中等强度推理 - `o3-mini-low` - 低强度推理 - `gpt-5-high` - 高强度推理 - `gpt-5-medium` - 中等强度推理 - `gpt-5-low` - 低强度推理 **Claude thinking 模型:** - `claude-3-7-sonnet-20250219-thinking` - 启用 thinking 模式 **Google Gemini 系列模型:** - `gemini-2.5-flash-thinking` - 启用 thinking 模式 - `gemini-2.5-flash-nothinking` - 禁用 thinking 模式 - `gemini-2.5-pro-thinking` - 启用 thinking 模式 - `gemini-2.5-pro-thinking-128` - 启用 thinking 模式,thinking 预算为 128 tokens - 你也可以在任意 Gemini 模型名后追加 `-low`、`-medium` 或 `-high`,以请求相应的推理强度(无需额外的 thinking-budget 后缀)。
### 📡 支持的接口
查看完整接口列表 - [对话接口 (Chat Completions)](https://docs.newapi.pro/en/docs/api/ai-model/chat/openai/createchatcompletion) - [响应接口 (Responses)](https://docs.newapi.pro/en/docs/api/ai-model/chat/openai/createresponse) - [图像接口 (Image)](https://docs.newapi.pro/en/docs/api/ai-model/images/openai/post-v1-images-generations) - [音频接口 (Audio)](https://docs.newapi.pro/en/docs/api/ai-model/audio/openai/create-transcription) - [视频接口 (Video)](https://docs.newapi.pro/en/docs/api/ai-model/audio/openai/createspeech) - [Embedding 接口 (Embeddings)](https://docs.newapi.pro/en/docs/api/ai-model/embeddings/createembedding) - [Rerank 接口 (Rerank)](https://docs.newapi.pro/en/docs/api/ai-model/rerank/creatererank) - [实时对话 (Realtime)](https://docs.newapi.pro/en/docs/api/ai-model/realtime/createrealtimesession) - [Claude 对话](https://docs.newapi.pro/en/docs/api/ai-model/chat/createmessage) - [Google Gemini 对话](https://docs.newapi.pro/en/docs/api/ai-model/chat/gemini/geminirelayv1beta)
## 🚢 部署 ### 📋 部署要求 | 组件 | 要求 | |------|------| | **本地数据库** | SQLite(使用 Docker 时必须挂载 `/data` 目录)| | **远程数据库** | MySQL ≥ 5.7.8 或 PostgreSQL ≥ 9.6 | | **容器引擎** | Docker / Docker Compose | | **系统架构** | 仅支持 64 位(amd64 / arm64);不支持 32 位系统 | ### ⚙️ 环境变量配置
常用的环境变量配置 | 变量名 | 描述 | 默认值 | |--------|------|--------| | `SESSION_SECRET` | Session 密钥(多机部署时必填) | - | | `CRYPTO_SECRET` | 加密密钥(使用 Redis 时必填) | - | | `SQL_DSN` | 数据库连接字符串 | - | | `REDIS_CONN_STRING` | Redis 连接字符串 | - | | `RELAY_IDLE_CONN_TIMEOUT` | 中继 HTTP 客户端的空闲保活超时时间,单位为秒。默认遵循 Go 标准库行为;设为 `0` 则禁用 | `90` | | `STREAMING_TIMEOUT` | 流式传输超时时间(秒) | `300` | | `STREAM_SCANNER_MAX_BUFFER_MB` | 流扫描器的最大单行缓冲区大小(MB);当上游发送巨大的图片/base64 payload 时可适当增大 | `64` | | `MAX_REQUEST_BODY_MB` | 最大请求体大小(MB,**解压后**计算;防止超大请求/zip 炸弹耗尽内存)。超出此限制将返回 `413` | `32` | | `AZURE_DEFAULT_API_VERSION` | Azure API 版本 | `2025-04-01-preview` | | `ERROR_LOG_ENABLED` | 错误日志开关 | `false` | | `PYROSCOPE_URL` | Pyroscope 服务器地址 | - | | `PYROSCOPE_APP_NAME` | Pyroscope 应用名称 | `new-api` | | `PYROSCOPE_BASIC_AUTH_USER` | Pyroscope Basic Auth 用户名 | - | | `PYROSCOPE_BASIC_AUTH_PASSWORD` | Pyroscope Basic Auth 密码 | - | | `PYROSCOPE_MUTEX_RATE` | Pyroscope 互斥锁采样率 | `5` | | `PYROSCOPE_BLOCK_RATE` | Pyroscope 阻塞采样率 | `5` | | `HOSTNAME` | 用于 Pyroscope 的主机名标签 | `new-api` | 📖 **完整配置:** [环境变量文档](https://docs.newapi.pro/en/docs/installation/config-maintenance/environment-variables)
### 🔧 部署方式
方式一:Docker Compose(推荐) ``` # Clone the project git clone https://github.com/QuantumNous/new-api.git cd new-api # 编辑配置 nano docker-compose.yml # 启动服务 docker-compose up -d ```
方式二:Docker 命令 **使用 SQLite:** ``` docker run --name new-api -d --restart always \ -p 3000:3000 \ -e TZ=Asia/Shanghai \ -v ./data:/data \ calciumion/new-api:latest ``` **使用 MySQL:** ``` docker run --name new-api -d --restart always \ -p 3000:3000 \ -e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi" \ -e TZ=Asia/Shanghai \ -v ./data:/data \ calciumion/new-api:latest ```
方式三:宝塔面板 1. 安装宝塔面板(≥ 9.2.0 版本) 2. 在应用商店中搜索 **New-API** 3. 一键安装 📖 [图文教程](./docs/BT.md)
### ⚠️ 多机部署注意事项 ### 🔄 渠道重试与缓存 **重试配置:** `设置 → 运营设置 → 通用设置 → 失败重试次数` **缓存配置:** - `REDIS_CONN_STRING`:Redis 缓存(推荐) - `MEMORY_CACHE_ENABLED`:内存缓存 ## 🔗 相关项目 ### 上游项目 | 项目 | 描述 | |------|------| | [One API](https://github.com/songquanpeng/one-api) | 原始项目基础 | | [Midjourney-Proxy](https://github.com/novicezk/midjourney-proxy) | Midjourney 接口支持 | ### 辅助工具 | 项目 | 描述 | |------|------| | [new-api-key-tool](https://github.com/Calcium-Ion/new-api-key-tool) | Key 额度查询工具 | | [new-api-horizon](https://github.com/Calcium-Ion/new-api-horizon) | New API 高性能优化版 | ### 📖 文档资源 | 资源 | 链接 | |------|------| | 📘 常见问题 | [FAQ](https://docs.newapi.pro/en/docs/support/faq) | | 💬 社区交流 | [交流渠道](https://docs.newapi.pro/en/docs/support/community-interaction) | | 🐛 问题反馈 | [问题反馈](https://docs.newapi.pro/en/docs/support/feedback-issues) | | 📚 完整文档 | [官方文档](https://docs.newapi.pro/en/docs) | ### 🤝 贡献指南 欢迎各种形式的贡献! - 🐛 报告 Bug - 💡 提出新功能 - 📝 改进文档 - 🔧 提交代码 ## 📜 许可证 本项目基于 [GNU Affero General Public License v3.0 (AGPLv3)](./LICENSE) 授权。 适用 AGPLv3 第 7 条下的附加条款。修改后的版本必须在相应的法律声明中,以及在用户界面中任何显眼的关于、法律、页脚或署名位置,保留作者署名通知 `Frontend design and development by New API contributors.`。 提供用户界面的修改版本还必须保留指向原始项目的可见链接:。 这是一个基于 [One API](https://github.com/songquanpeng/one-api)(MIT 许可证)开发的开源项目。 ### 💖 感谢您使用 New API 如果这个项目对您有帮助,欢迎给我们点个 ⭐️ Star! **[官方文档](https://docs.newapi.pro/en/docs)** • **[问题反馈](https://github.com/Calcium-Ion/new-api/issues)** • **[最新发布](https://github.com/Calcium-Ion/new-api/releases)** 由 QuantumNous 用 ❤️ 构建
标签:AI资产管理, API网关, EVTX分析, Go, LLM网关, LLM集成, Ruby工具, Syscall, Web开发, 搜索引擎查询, 日志审计, 测试用例, 请求拦截