如何在云效中使用 DeepSeek 等大模型实现 AI 智能评审

本文涉及的产品
云效 DevOps 流水线,基础版人数 不受限
云效 DevOps 代码管理,基础版人数 不受限
云效 DevOps 制品仓库,基础版人数 不受限
简介: 除了代码智能补全外,AI 代码智能评审是 DevOps 领域受开发者广泛关注的另一场景了。本文,我们将结合云效代码管理 Codeup、流水线 Flow 和 DeepSeek,分享一种企业可快速自主接入,即可实现的 AI 智能评审解决方案,希望给大家一些启发。

作者:崔力强、黄博文


除了代码智能补全外,AI 代码智能评审是 DevOps 领域受开发者广泛关注的另一场景了。本文,我们将结合云效代码管理 Codeup、流水线 Flow 和 DeepSeek,分享一种企业可快速自主接入,即可实现的 AI 智能评审解决方案,希望给大家一些启发。


方案简介


云效流水线 Flow 提供了灵活的集成机制,企业可以在云效 Flow 内开发一个自定义步骤来调用 DeepSeek 等大模型,对云效 Codeup 提交的代码评审进行智能评审,并通过云效的 API,将这些评审意见回写到合并请求中。


同时,结合云效流水线 Flow 的能力还可以对提交的代码进行单元测试、代码扫描等任务,并将这些结果一并展示回云效 Codeup 的提交历史中,反馈每个 commit 的代码质量状态。


image.png


下面我们将会一步步指引您如何实现这个自定义的步骤,并配置流水线来实现代码的智能评审。


实现步骤


1、创建云效组织并获取访问令牌


如您没有云效组织,可访问 https://devops.aliyun.com,并创建您自己的组织。为了能够让大模型调用云效 API[1]获取合并请求详情,并把 Review 的结果写到合并请求中,我们需要创建一个云效 API 的访问令牌。点击右上角的头像-个人设置-新建令牌,并按照下图中设置令牌的权限:代码比较设置为只读,合并请求设置为读写。



image.png

image.png


创建好之后,将令牌保存下来。


image.png


2、创建百炼 APIKey


前往阿里云大模型服务平台百炼,创建 APIKey,保存方便后续调用。


image.png

image.png


🔔 注:百炼为新用户提供了千万免费的 tokens,大家可以放心使用。


3、创建 Flow 自定义步骤调用大模型能力


首先,安装 flow-cli 的最新版本。(需要本地有安装 nodejs。)


# 安装flow-cli最新版本
npm install -g @flow-step/flow-cli --registry=https://registry.npmmirror.com


运行 flow-cli 的登录命令,选择你刚才创建的云效组织。


flow-cli login


https://atomgit.com/flow-example/yunxiao-mr-review-step 克隆代码到本地,修改其中的 step.yaml 文件,修改第 4~5 行,为步骤 id 和 name 添加后缀。


image.png


由于步骤名称是全局唯一的,因此需要添加“组织 ID”的后缀。


组织 IP 获取路径:点击云效页面右上角头像 -> 管理后台,打开后台管理页面,在其中找到“组织 ID”。


image.png


命令行切换到刚才克隆代码的代码库的根目录,执行下面的命令以发布步骤。


flow-cli step publish --auto-version


🔔 注:flow-cli 的详细操作可参见文档:https://help.aliyun.com/zh/yunxiao/user-guide/use-flow-cli-to-customize-development-steps


步骤发布后,访问 flow.aliyun.com,在步骤管理-组织步骤中可以看到 MergeRequestLLMReviewer 步骤,即表示步骤发布成功。


image.png


4、创建进行代码 Review 的示例代码库


访问 codeup.aliyun.com,导入代码库 https://atomgit.com/flow-example/CodeReviewSampleCode.git 到云效 Codeup 中。


image.png


5、创建流水线


在 flow.aliyun.com 中创建流水线,模板选择【Nodejs 测试、构建】模版。


image.png


代码源选择刚才导入的示例代码库,并开启代码源触发,设置触发条件为【合并请求 新建/更新】。


image.png


因为这里我们只做 CodeReview,无需构建,所以我们删除掉模板中的 Nodejs 构建任务。我们添加一个空任务,并在空任务中添加刚才我们创建的自定义步骤,以便调用大模型能力做 CodeReview。


image.png


你可以按需选择模型,支持 deepseek-r1、deepseek-v3、qwen-max,并填入云效 token(前面创建的个人访问令牌)和百炼 APIkey。不过为了安全起见,我们不建议您直接填入这些信息,最好的方式是创建 2 个私密环境变量:${YUNXIAO_TOKEN}、 ${BAILIAN_APIKEY},在环境变量中中配置刚才的私密信息。


image.png

image.png


6、创建合并请求


在前面导入的 CodeReview 示例代码库中,创建合并请求,从 dev1 分支合并到 main 分支。


image.png


当合并请求被创建之后,进入云效 Flow,可以看到流水线被触发,该流水线会运行代码检查和单元测试,并且调用大模型进行智能评审。


image.png


查看自定义步骤的日志输出,可以看到大模型对代码评审的 diff 进行处理,并最终将结果回写到 Codeup 端。


image.png


在 Codeup 的代码评审侧可以看到回写的评审意见。


image.png


点击自动化检查标签可以看到流水线的代码扫描和单元测试结果。


image.png


以上即是方案的全部内容。


点击此处,体验完整流程,前 100 位可获得积木拼图、阿里云代码马克杯等实物奖品。


image.png


相关链接:


[1] 云效 API

https://help.aliyun.com/zh/yunxiao/developer-reference/api-reference-standard-proprietary/

相关实践学习
2分钟自动化部署2048小游戏到ECS
在短短2分钟内,即可实现2048小游戏的ECS自动化部署
SVN版本控制系统
SVN是现在软件开发之中的主流软件版本控制工具,在工作之中利用SVN可以有效的解决多人开发的代码管理问题,本课程将为读者讲解SVN服务器的配置以及基于MyEclipse的SVN客户端插件的配置与使用,并且在讲解之中着重讲解了冲突的产生于解决。
目录
打赏
0
17
17
0
12681
分享
相关文章
Manus再遭复刻!开源多智能体协作工具,实时查看每个AI员工的"脑回路"
LangManus 是一个基于分层多智能体系统的 AI 自动化框架,支持多种语言模型和工具集成,能够高效完成复杂任务,适用于人力资源、房产决策、旅行规划等多个场景。
293 0
从大规模恶意攻击 DeepSeek 事件看 AI 创新隐忧:安全可观测体系建设刻不容缓
唯有通过全行业的协同努力,加强整体、完善的网络安全可观测建设,才能为 AI 技术的创新和发展构建一个安全而稳固的环境。我们期盼并相信,在攻克这些网络安全难题之后,AI 创新将迎来更加安全、灿烂的未来。
AI战略丨拓展智能边界,大模型体系全面升级
阿里云在基础模型体系和生态、模型工程化落地路径、端云协同解决方案等多维度上都在快速迭代。
9.9K star!大模型原生即时通信机器人平台,这个开源项目让AI对话更智能!
"😎高稳定、🧩支持插件、🦄多模态 - 大模型原生即时通信机器人平台"
Java也能快速搭建AI应用?一文带你玩转Spring AI可落地性
Java语言凭借其成熟的生态与解决方案,特别是通过 Spring AI 框架,正迅速成为 AI 应用开发的新选择。本文将探讨如何利用 Spring AI Alibaba 构建在线聊天 AI 应用,并实现对其性能的全面可观测性。
325 10
从零开始即刻拥有 DeepSeek-R1 满血版并使用 Dify 部署 AI 应用
本文介绍了如何使用阿里云提供的DeepSeek-R1大模型解决方案,通过Chatbox和Dify平台调用百炼API,实现稳定且高效的模型应用。首先,文章详细描述了如何通过Chatbox配置API并开始对话,适合普通用户快速上手。接着,深入探讨了使用Dify部署AI应用的过程,包括选购云服务器、安装Dify、配置对接DeepSeek-R1模型及创建工作流,展示了更复杂场景下的应用潜力。最后,对比了Chatbox与Dify的输出效果,证明Dify能提供更详尽、精准的回复。总结指出,阿里云的解决方案不仅操作简便,还为专业用户提供了强大的功能支持,极大提升了用户体验和应用效率。
1086 19
从零开始即刻拥有 DeepSeek-R1 满血版并使用 Dify 部署 AI 应用
AI程序员:通义灵码 2.0应用VScode前端开发深度体验
AI程序员:通义灵码 2.0应用VScode前端开发深度体验,在软件开发领域,人工智能技术的融入正深刻改变着程序员的工作方式。通义灵码 2.0 作为一款先进的 AI 编程助手,与广受欢迎的代码编辑器 Visual Studio Code(VScode)相结合,为前端开发带来了全新的可能性。本文将详细分享通义灵码 2.0 在 VScode 前端开发环境中的深度使用体验。
148 2
牛逼,这款开源聊天应用竟能一键召唤多个AI助手,跨平台通话神器!
`JiwuChat`是一款基于Tauri2和Nuxt3构建的轻量化多平台即时通讯工具,仅约8MB体积却集成了**AI群聊机器人**、**WebRTC音视频通话**、**屏幕共享**等前沿功能。一套代码适配Windows/macOS/Linux/Android/iOS/Web六大平台,堪称开发者学习跨端开发的绝佳样板!
一键轻松打造你的专属AI应用!
函数计算提供免运维、Serverless GPU,具备极致弹性与按量付费优势,助您一键部署AI大模型,加速业务创新。
容器化浪潮下的AI赋能:智能化运维与创新应用
近年来,容器技术以其轻量、高效、可移植的特性成为云原生时代的基石,推动应用开发和部署方式革新。随着容器化应用规模扩大,传统运维手段逐渐力不从心。AI技术的引入为容器化生态带来新活力,实现智能监控、自动化故障诊断与修复及智能资源调度,提升运维效率和可靠性。同时,AI驱动容器化创新应用,如模型训练、边缘计算和Serverless AI服务,带来更多可能性。未来,AI与容器技术的融合将更加紧密,推动更智能、高效的运维平台和丰富的创新应用场景,助力数字化转型。

相关产品