项目地址:GitHub - yym68686/uni-api: This is a project that unifies the management of large model APIs. It can call multiple backend services through a unified API interface, convert them to the OpenAI format uniformly, and support load balancing. Currently supported backend services include: OpenAI, Anthropic, DeepBricks, OpenRouter, Gemini, Vertex, etc.
简介
如果个人使用的话,one/new-api 过于复杂,有很多个人不需要使用的商用功能,如果你不想要复杂的前端界面,有想要支持的模型多一点,可以试试 uni-api。这是一个统一管理大模型API的项目,可以通过一个统一的API接口调用多个后端服务,统一转换为 OpenAI 格式,支持负载均衡。目前支持的后端服务有:OpenAI、Anthropic、Gemini、Vertex、Cohere、Cloudflare、DeepBricks、OpenRouter 等。
uni-api 的主要优势
-
无前端,纯配置文件配置 API 渠道。只要写一个文件就能运行起一个属于自己的 API 站,文档有详细的配置指南,小白友好。
-
统一管理多个后端服务,支持 OpenAI、Deepseek、DeepBricks、OpenRouter 等其他 API 是 OpenAI 格式的提供商。支持 OpenAI Dalle-3 图像生成。
-
同时支持 Anthropic、Gemini、Vertex AI、Cohere、Cloudflare。Vertex 同时支持 Claude 和 Gemini API。
-
支持 OpenAI、 Anthropic、Gemini、Vertex 原生 tool use 函数调用。
-
支持 OpenAI、Anthropic、Gemini、Vertex 原生识图 API。
-
支持四种负载均衡。
-
支持渠道级加权负载均衡,可以根据不同的渠道权重分配请求。默认不开启,需要配置渠道权重。
-
支持 Vertex 区域级负载均衡,支持 Vertex 高并发,最高可将 Gemini,Claude 并发提高 (API数量 * 区域数量) 倍。自动开启不需要额外配置。
-
除了 Vertex 区域级负载均衡,所有 API 均支持渠道级顺序负载均衡,提高沉浸式翻译体验。自动开启不需要额外配置。
-
支持单个渠道多个 API Key 自动开启 API key 级别的轮训负载均衡。
-
支持自动重试,当一个 API 渠道响应失败时,自动重试下一个 API 渠道。
-
支持细粒度的权限控制。支持使用通配符设置 API key 可用渠道的特定模型。
-
支持限流,可以设置每分钟最多请求次数,可以设置为整数,如 2/min,2 次每分钟、5/hour,5 次每小时、10/day,10 次每天,10/month,10 次每月,10/year,10 次每年。默认60/min。
已稳定运行 3 个月。期间还在我们论坛压测过,详帖:
经过佬友们的测试,在高并发场景下,运行稳定。
我的其他项目:
uni-api 一直用在我的 Telegram 机器人项目上,所以稳定性大家请放心。
如果各位遇到什么 bug 或者有什么功能需求都可以找我实现。如果觉得不错可以帮我点个免费的 。
280 个赞
无前端的话 我怎么方便地更新/增删查改渠道哩。这个前端还是得有的。
1 个赞
像 zeabur 这样的平台有在线的配置文件编辑器,用起来很方便。
我个人使用主要是本地 vscode 改好,然后用一键脚本上传重新部署。后面有时间也会开发一个简单的前端的。
3 个赞
是的,我有这个想法的时候就有人提到这个项目了。不过我还是自己实现了一下,因为根据我的经验,咱们站很多API站它的请求格式都不规范。依赖别人的项目很多东西改不了,不如自己开发一个,主打一个自主可控。
6 个赞
这个目前没有,但我很想实现,因为看了不少最近站里一些项目,这个检测模型功能是我下一个阶段的开发任务,实现了会在这里通知你的。
4 个赞
Keyman
(Keyman)
14
谢谢分享,我计划等手头工作弄完我就弄一下,我也是觉得api 和key太多,没办法做一个集成,我现在就是记在一个文件上,换来换去也很麻烦,我也很有需求做一个集成端放这些key和api
2 个赞
刚好我的项目就是你需求的完美实现,因为我也有几十个不同渠道。现在运行良好。
3 个赞
billzhen
(billzhen)
18
用过一小段时间佬的项目,后来还是放弃用回new-api了(使用时长不到半天)。主要是站里大佬们提供的公益站有些不太稳定,容易被打,而且赛博囤积癖,想多薅点公益站。所以需要经常重复删删改改yaml。嫌麻烦想用ui调整,就换回占用大点的new-api了。
如果佬能再开发一个简单的web界面解决这个痛点我立即切换
4 个赞
你说的没错,前面回答过一位佬友了:
像 zeabur 这样的平台有在线的配置文件编辑器,用起来很方便。
我个人使用主要是本地 vscode 改好,然后用一键脚本上传重新部署。后面有时间也会开发一个简单的前端的。
1 个赞