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

本文涉及的产品
云效 DevOps 流水线,基础版人数 不受限
云效 DevOps 代码管理,基础版人数 不受限
云效 DevOps 项目协作,基础版人数 不受限
简介: 如何在云效中使用 DeepSeek 等大模型实现 AI 智能评审

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

方案简介




Cloud Native

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

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

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

实现步骤




Cloud Native


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

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

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

🔔 注:百炼为新用户提供了千万免费的 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 添加后缀。

由于步骤名称是全局唯一的,因此需要添加“组织 ID”的后缀。组织 IP 获取路径:点击云效页面右上角头像 -> 管理后台,打开后台管理页面,在其中找到“组织 ID”。

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


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 步骤,即表示步骤发布成功。

4、创建进行代码 Review 的示例代码库访问 codeup.aliyun.com,导入代码库 https://atomgit.com/flow-example/CodeReviewSampleCode.git 到云效 Codeup 中。

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

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

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

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

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

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

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

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

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

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

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

相关链接:

[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客户端插件的配置与使用,并且在讲解之中着重讲解了冲突的产生于解决。
相关文章
|
8天前
|
人工智能 搜索推荐 自然语言处理
大模型落地的关键:如何用 RAG 打造更智能的 AI 搜索——阿里云 AI 搜索开放平台
本文分享了大模型落地的关键:如何用阿里云 AI 搜索开放平台 打造更智能的 AI 搜索。
大模型落地的关键:如何用 RAG 打造更智能的 AI 搜索——阿里云 AI 搜索开放平台
|
7天前
|
人工智能 自然语言处理 算法
阿里云 AI 搜索开放平台:从算法到业务——AI 搜索驱动企业智能化升级
本文介绍了阿里云 AI 搜索开放平台的技术的特点及其在各行业的应用。
|
1天前
|
人工智能 自然语言处理 JavaScript
测试工程师要失业?Magnitude:开源AI Agent驱动的端到端测试框架,让Web测试更智能,自动完善测试用例!
Magnitude是一个基于视觉AI代理的开源端到端测试框架,通过自然语言构建测试用例,结合推理代理和视觉代理实现智能化的Web应用测试,支持本地运行和CI/CD集成。
60 15
测试工程师要失业?Magnitude:开源AI Agent驱动的端到端测试框架,让Web测试更智能,自动完善测试用例!
|
1天前
|
机器学习/深度学习 人工智能 供应链
让AI真正懂生产的工业智能体长啥样?一个评测告诉你答案
本文探讨了工业互联网平台与大模型技术融合的趋势,重点介绍卡奥斯COSMOPlat平台。该平台通过智能体应用构建,提升生产效率、优化流程并降低开发成本。文章还分析了工业大模型在知识引擎、智能应用开发等方面的应用价值,并通过案例展示其在设备管理、供应链优化中的成效。随着政策推动和市场需求增长,“人工智能+工业互联网”模式正加速产业升级,为工业企业提供新生产力工具,助力数字化转型与智能化发展。
29 5
让AI真正懂生产的工业智能体长啥样?一个评测告诉你答案
|
4天前
|
存储 人工智能 Java
Spring AI与DeepSeek实战四:系统API调用
在AI应用开发中,工具调用是增强大模型能力的核心技术,通过让模型与外部API或工具交互,可实现实时信息检索(如天气查询、新闻获取)、系统操作(如创建任务、发送邮件)等功能;本文结合Spring AI与大模型,演示如何通过Tool Calling实现系统API调用,同时处理多轮对话中的会话记忆。
100 1
|
6天前
|
机器学习/深度学习 人工智能 运维
AI为网络可靠性加“稳”——从断网烦恼到智能运维
AI为网络可靠性加“稳”——从断网烦恼到智能运维
52 2
|
7天前
|
存储 人工智能 JSON
AI智能体内战终结者!A2A:谷歌开源的首个标准智能体交互协议,让AI用同一种“语言”交流
A2A是谷歌推出的首个标准化智能体交互协议,通过统一通信规范实现不同框架AI智能体的安全协作,支持多模态交互和长时任务管理,已有50多家企业加入生态。
77 0
AI智能体内战终结者!A2A:谷歌开源的首个标准智能体交互协议,让AI用同一种“语言”交流
|
8月前
|
敏捷开发 缓存 前端开发
阿里云云效产品使用合集之前端打包时npm安装卡住一般是什么导致的
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
8月前
|
敏捷开发 弹性计算 持续交付
阿里云云效产品使用合集之同一个主机部署是否支持下载多个制品
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
8月前
|
敏捷开发 监控 Java
阿里云云效产品使用合集之Codeup WebIDE环境下,如何使用通义灵码
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。

热门文章

最新文章