新闻 发表于 2025-6-11 20:56

AI代码评审CodeReview教程第13节:部署OneAPI统一调用大模型

作者:微信文章
持续内容输出,点击蓝字关注我吧

01

前言

来看一段AI大模型对它的介绍
当我们在企业中实现AI代码评审和相关业务场景的AI大模型应用开发时,不会仅仅对接一个AI大模型服务商、一个AI大模型渠道,可能会对接市场上的不同厂商的大模型,也会对接私有化部署的大模型、也会对接微调的大模型,那么这个时候如果没有个统一的访问入口,可能每个团队都需要自己写一套对接的代码,虽然目前大部分都支持了标签的OpenAI的接口格式,但是在使用的过程中还会遇到令牌管理、负载均衡等等实际的问题,如果有一种办法能够统一大模型的维护和访问那么对于使用AI的项目来说就是福利,对于AI代码评审来说也是如此。

目前就有这样的一个软件:One API

Github的主页为:https://github.com/songquanpeng/one-api

截图如下:



可以看到截至2025年6月11日,这个软件已经有了25.6K的Star数量。

安装成功后的界面如下所示:



通过介绍我们可以知道它具备如下的功能:

支持对接多种大模型。

支持配置镜像以及众多第三方代理服务。

支持通过负载均衡的方式访问多个渠道。

支持 stream 模式,可以通过流式传输实现打字机效果。

支持多机部署

支持令牌管理,设置令牌的过期时间、额度、允许的 IP 范围以及允许的模型访问。

支持兑换码管理,支持批量生成和导出兑换码,可使用兑换码为账户进行充值。

支持渠道管理,批量创建渠道。

支持用户分组以及渠道分组,支持为不同分组设置不同的倍率。

支持渠道设置模型列表。

支持查看额度明细。

支持用户邀请奖励。

支持以美元为单位显示额度。

支持发布公告,设置充值链接,设置新用户初始额度。

支持模型映射,重定向用户的请求模型,如无必要请不要设置,设置之后会导致请求体被重新构造而非直接透传,会导致部分还未正式支持的字段无法传递成功。

支持失败自动重试。

流程图如下:



本文分享这个。
07高峰论坛会02

OneAPI安装

下面先分享分享这个语言的东西,可以仔细看看。
1、在官方的说明中,可以看到可以通过Docker来安装,所以这里我选择基于Docker安装,在搭建好Docker的环境后,我们输入命令拉取镜像并安装:
docker run --name one-api -d --restart always -p 3000:3000   --privileged=true -e TZ=Asia/Shanghai -v /soft/docker/oneapi:/data justsong/one-api
如果无法拉取Docker镜像,可以设置如下的镜像加速地址:
{"registry-mirrors" :["https://docker.m.daocloud.io","https://docker.jianmuhub.com","https://huecker.io","https://dockerhub.timeweb.cloud","https://dockerhub1.beget.com","https://noohub.ru"]}
成功的截图如下:



成功之后,会占用3000端口,然后我们在浏览器中访问该地址:http://localhost:3000/,访问的界面如下所示:



然后我们选择令牌页签,此时会进入登录页,默认的密码是root/123456,登录后的界面如下所示:



然后我们选择渠道,添加上一个智普AI的大模型渠道,在OneAPI中也支持对模型名称重定向,这个是名称的重新自定义也是有用的,截图如下:



然后我们在添加一下ollama这个工具的对接的模型渠道,截图如下:



设置完成后,我们再添加一个令牌,如下所示,可以选择这个令牌用于哪个模型了:



这样通过这样的设置,对于我们企业中的大规模的令牌,就可以统一管理,同时还可以分配到新的令牌信息。


07高峰论坛会03

项目中使用

下面先分享分享这个语言的东西,可以仔细看看。1、在官方的说明中,可以看到可以通过Docker来安装,所以
首先打开我们的AI代码评审项目工程,然后继续在我们的基于TypeScript实现的AI代码评审项目中设置这个新的地址,目前经过了OneAPI的管理,我们的对外地址就变成了:

http://oneapi的地址:3000/v1/chat/completions

我们就可以在程序中修改地址为:http://oneapi的地址:3000/v1。如下所示:



执行一下AI代码项目后,可以看到也是成功的。

在OneAPI中可以给原有的模型名称的进行重定向,我们可以自定义一个模型名称,这样我们就可以用一个名称对接不同大模型服务的不同模型了,非常方便,这也是企业中统一维护大模型的好处,这样以后我们更改代码中的大模型后,只需要更改OneAPI中的配置即可。

我们也可以在部署一个Nginx,通过域名和反向代理和负载均衡的方式访问OneAPI,配置样例如下所示:
server{   server_name openai.justsong.cn;# 请根据实际情况修改你的域名   location / {          client_max_body_size64m;          proxy_http_version 1.1;          proxy_pass http://localhost:3000;# 请根据实际情况修改你的端口          proxy_set_header Host $host;          proxy_set_header X-Forwarded-For $remote_addr;          proxy_cache_bypass $http_upgrade;          proxy_set_header Accept-Encoding gzip;          proxy_read_timeout 300s;# GPT-4 需要较长的超时时间,请自行调整   }}Part.01自动化未来01秋季疾病预防秋季是呼吸道疾病的高发季节,如感冒、咳嗽、支气管炎等。这是因为气温的变化使得人体的呼吸道黏膜抵抗力下降,病毒和细菌更容易侵入。02胃肠道疾病秋季是胃肠道疾病的多发期。经过炎热的夏季,人们的脾胃功能相对较弱,再加上气温适宜,细菌繁殖加快,食物容易变质。03心脑血管疾病秋季早晚温差较大,血管收缩和舒张的变化较为明显,容易导致血压波动,从而增加心脑血管疾病的发病风险。07高峰论坛会04

总结

在企业进行AI代码评审和AI大模型应用开发时,通常需要对接多种大模型服务,包括不同厂商的大模型、私有化部署的大模型以及微调的大模型。这种情况下,如果没有统一的访问入口,每个团队可能都需要单独编写对接代码,这不仅增加了工作量,还带来了令牌管理、负载均衡等实际问题。为了简化这些复杂性,OneAPI 提供了一个统一的解决方案。通过OneAPI的使用,企业可以统一管理和访问各种大模型,提高代码的可维护性和灵活性。

最近也看到有人问如何学习AI,这里分享几个资料如下:

1、通往AGI之路的知识库飞书云文档:

https://waytoagi.feishu.cn/wiki/QPe5w5g7UisbEkkow8XcDmOpn8e

2、掘金的AI知识库的飞书云文档

https://agijuejin.feishu.cn/wiki/UvJPwhfkiitMzhkhEfycUnS9nAm?table=blk3RfZtR7Nh73tO

3、极客时间的AI知识库的飞书云文档

https://geek-agi.feishu.cn/wiki/B9rYwwg6xidZYJkbrlscxTQFnOc

4、LangGPT社区的飞书云文档(结构化提示词等等):
https://langgptai.feishu.cn/wiki/RXdbwRyASiShtDky381ciwFEnpe
5、一站式AI产品经理飞书知识库:

https://v11enp9ok1h.feishu.cn/wiki/KiIvwdFOciiqqNkwKzTcmn88ndL

喜欢本文的,可以关注、收藏、点赞、转发、分享到朋友圈哦。

本专题系列文章:

AI代码评审CodeReview教程第1节:基本介绍

AI代码评审CodeReview教程第2节:私有化部署开源AI大模型

AI代码评审CodeReview教程第3节:智普AI申请与代码评审体验

AI代码评审CodeReview教程第4节:AI大模型API接口的基本格式

AI代码评审CodeReview教程第5节:企业级Gitlab环境安装与CI环境配置

AI代码评审CodeReview教程第6节:基于Gitlab API与CI的AI代码评审实现

AI代码评审CodeReview教程第7节:基于MergeRequest变更代码AI评审实现

AI代码评审CodeReview教程第8节:项目的思考与Gitlab CI的内容分离

AI代码评审CodeReview教程第9节:Gitlab提交API的评审实现与飞书消息通知

AI代码评审CodeReview教程第10节:集成DeepSeekR1实现AI评审代码

AI代码评审CodeReview教程第11节:手写TypeScript的AI大模型接口对接

AI代码评审CodeReview教程第12节:TypeScript的Gitlab仓库代码评审设计实现

近期MCP系列文章:

MCP学习第1节之基于TypeScript开发Stdio模式的天气MCP Server

MCP学习第2节之基于TypeScript开发HTTP SSE模式的天气MCP Server

MCP学习第3节之开发Streamable HTTP模式的MCP Server

MCP学习第4节之Supergateway实现Stdio转换SSE模式的MCP Server

MCP学习第5节之改造开源SequentialThinking顺序思考MCP为SSE模式

MCP学习第6节之基于SpringAI 1.0搭建顺序思考MCP Server,实现规划

近期AI相关分享文章:

开发个火车票查询MCP Server项目,结合Qwen3效果真不错

当AI学会"抄近道":大模型自主决策的核心技能--工具调用解析

使用SpringAI1.0.0-M7开发猫眼电影MCP Server体验

Prompt Optimizer:释放AI生产力的终极提示词优化神器

最新DeepSeek-R1-0528推理模型也可以玩MCP服务了

教你用AutoDL+Ollama部署AI大模型DeepSeekR1教程

近期AI智能客服分享文章:

AI实现智能客服第1节:基于FastGPT知识库的AI客服搭建与使用

AI实现智能客服第2节:借助RAG实现常见问题的同程旅行AI客服

AI实现智能客服第3节:AI客服的核心能力RAG介绍

AI实现智能客服第4节:开源N8N编排采集同城旅行网数据知识

AI实现智能客服第5节:RAG优化之指代消解/查询重写增强同城旅行客服

- END -

喜欢的可以加入我的免费知识星球:觉醒的新世界程序员,或者我的付费知识星球:AI技术&MCP落地实践,随时与我沟通,交流技术与想法。



喜欢的也可以关注我的公众号:无处不在的技术,与我一起学习成长、共同进步,在技术的道路上越走越远。

喜欢就点个 在看 呗 👇
页: [1]
查看完整版本: AI代码评审CodeReview教程第13节:部署OneAPI统一调用大模型