one-api 完全解析:统一管理大模型API的终极解决方案

项目介绍:AI 接口管理的瑞士军刀

随着大语言模型百花齐放,企业和开发者往往需要同时接入多家服务商的 API——OpenAI、Anthropic、Google、百度文心、阿里通义千问、智谱ChatGLM……每个平台都有自己的 API 密钥、计费方式和调用限制。如何高效管理这些渠道,实现负载均衡、令牌分发、用量监控,成为团队协作和规模化应用的一大挑战。

one-api 正是为解决这一痛点而生的开源项目。它是一个统一的大模型 API 管理平台,支持 40+ 种主流模型提供商,提供渠道管理、令牌管理、负载均衡、用户系统、用量统计等企业级功能。通过 one-api,你可以将所有模型接口聚合到一个统一的 API 入口,像使用 OpenAI 一样调用任何模型,并精细化控制访问权限和额度。

项目由 songquanpeng 开发,在 GitHub 上持续迭代,已成为国内最受欢迎的 AI 接口管理方案之一。

图片

核心功能:企业级 AI 接入的一站式解决方案

海量模型支持

one-api 内置了对几乎所有主流大模型的支持,包括:

  • OpenAI(含 Azure OpenAI)

  • Anthropic Claude(支持 AWS Claude)

  • Google(PaLM2/Gemini)

  • 百度文心一言、阿里通义千问、讯飞星火、智谱 ChatGLM、腾讯混元

  • 字节豆包(火山引擎)、360 智脑、Moonshot AI、百川、MINIMAX

  • DeepSeek、零一万物、阶跃星辰、Coze、Cohere

  • Ollama、Groq、Cloudflare Workers AI、DeepL、together.ai、novita.ai、硅基流动、xAI 等

  • 以及通过镜像和代理服务接入更多第三方渠道

图片

智能负载均衡

支持将多个同模型渠道(如多个 OpenAI 账号)组成一个负载均衡池,自动分配请求,避免单点过载,并支持失败自动重试,提升服务稳定性。

精细化的令牌管理

  • 创建访问令牌,并设置过期时间、额度上限、允许的 IP 范围、允许的模型

  • 支持兑换码系统,批量生成和导出兑换码,用于账户充值。

  • 支持查看额度明细,实时掌握消耗情况。

多用户与分组策略

  • 用户分组和渠道分组:为不同团队或项目分配不同的渠道和倍率,实现成本隔离。

  • 支持多种登录方式:邮箱密码、飞书、GitHub、微信公众号授权等。

  • 新用户初始额度设置、邀请奖励机制。

灵活的自定义与扩展

  • 模型映射:将请求中的模型名重定向到其他模型(如将 gpt-3.5-turbo 映射到自有模型),但需注意会重构请求体。

  • 自定义系统外观:修改系统名称、Logo、页脚,甚至用 HTML/iframe 自定义首页和关于页面。

  • 管理 API:通过系统访问令牌调用管理接口,实现二次开发扩展。

  • Cloudflare Turnstile 人机验证,防止滥用。

部署灵活,性能优异

  • Docker 一键部署:支持 SQLite 和 MySQL,单机和多机部署均可。

  • 多机集群:通过共享数据库和 Redis,实现横向扩展,支持高并发场景。

  • 流式传输:完美支持 SSE 流式响应,实现打字机效果。

  • 绘图接口:支持 DALL·E 等图像生成模型的调用。

快速开始:5分钟搭建自己的 API 网关

Docker 部署(推荐)

# 使用 SQLite
docker run --name one-api -d --restart always -p 3000:3000 -e TZ=Asia/Shanghai -v /path/to/data:/data justsong/one-api

# 使用 MySQL
docker run --name one-api -d --restart always -p 3000:3000 -e SQL_DSN="root:123456@tcp(mysql_host:3306)/oneapi" -e TZ=Asia/Shanghai -v /path/to/data:/data justsong/one-api

启动后访问 http://localhost:3000,使用默认账号 root / 123456 登录。

配置渠道和令牌

  1. 添加渠道:在“渠道”页面,选择模型提供商,填写 API Key 等信息。

  2. 生成令牌:在“令牌”页面,创建一个访问令牌,设置额度、模型权限等。

  3. 开始调用:将你的应用中的 API Base 设置为 http://your-domain/v1,API Key 设置为刚生成的令牌。

使用示例(Python)

import openai

openai.api_base = "http://your-one-api-domain/v1"
openai.api_key = "your-token"

response = openai.ChatCompletion.create(
    model="gpt-3.5-turbo",
    messages=[{"role": "user", "content": "Hello!"}]
)
print(response.choices[0].message.content)

优势对比:为什么选择 one-api?

对比维度

one-api

直接使用官方API

自建简单代理

商业API聚合服务

多模型支持

40+ 种,持续更新

单一服务商

需手动集成

通常有限

负载均衡

✅ 内置,支持重试

需自行开发

部分支持

令牌管理

✅ 精细控制

❌ 仅有简单密钥

部分支持

用户系统

✅ 多用户、分组、邀请

通常是多租户

额度统计

✅ 明细清晰

✅ 官方控制台

部署方式

自托管,数据私有

云端

自托管

云端

成本

免费开源

按量付费

开发成本高

按订阅付费

国产模型支持

✅ 全面覆盖

仅自己

需手动

有限

核心优势

  • 极致全面:几乎覆盖所有主流大模型,包括大量国产模型。

  • 开源可控:自托管确保数据安全,无供应商锁定。

  • 企业级特性:负载均衡、令牌管理、多租户,满足团队协作需求。

  • 部署简单:Docker 一键启动,5 分钟即可投入使用。

总结:AI 接口管理的理想选择

one-api 不仅仅是一个 API 代理,更是一个功能完备的 AI 接口管理平台。它将分散的模型资源整合为统一的入口,提供了从接入、控制到监控的全套工具。无论是个人开发者想管理多个 API 账号,还是企业需要为多个团队提供模型访问能力,one-api 都能以最低的成本和最高的效率满足需求。

现在就通过 Docker 部署你的 one-api,让 AI 模型接入变得前所未有的简单!


项目地址:https://github.com/songquanpeng/one-api
官方文档:https://github.com/songquanpeng/one-api#readme

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐