通义灵码,解决程序员最讨厌的两件事:1、自己写注释;2、别人不写注释

简介: 通义灵码推出@workspace新功能,基于本地代码库的RAG技术,深度感知代码库。本文通过为openGauss开源项目贡献代码,展示了@workspace的功能,包括解释代码、生成单元测试、生成注释、生成优化建议等,帮助开发者快速理解项目架构和优化代码。最终,通过删除无效代码并提交合并请求,展示了该功能的实际应用效果。

近期,通义灵码上线新能力:@workspace,基于本地代码库的 RAG 技术,让灵码深度感知代码库。接下来我们就使用灵码的workspace能力为openGauss开源项目贡献一些代码,以展示workspace的能力。

第一步,先下载openGauss项目,使用vscode打开文件夹,安装通义灵码并登录。这时候在任意代码文件中右键,就可以使用灵码的常规功能了:

  • 解释代码
  • 生成单元测试
  • 生成注释
  • 生成优化建议

image.png
通过这些功能,我们可以快速的了解函数或代码块的逻辑。

第二步,可以在智能问答窗口中通过 @ 唤起 @workspace,然后就可以基于代码库循环关于整个项目的问题,以快速的理解整个项目架构。
image.png

第三步,对有疑惑的代码逐步深入提问,并找到问题和解决方案,这里我们以优化ExecuteSqlQueryForSingleRow函数为例,先是使用@workspace功能理解ngettext宏在整个项目中作何使用
image.png
然后使用解释代码、生成优化建议等功能理解代码,寻找可优化的点
image.png
image.png
从问答中得知,当ntups == 1时,ngettext会选择单数形式的字符串。格式化后的字符串将是"query returned 1 row instead of one: <query>"。而这段代码前面有if判断if (ntups != 1),由此可以推定,ngettext永远不会选择单数形式的字符串,单数形式字符串是永远都执行不到的无效代码。

第四步,根据以上问答,删除无效代码,并提交合并请求 https://gitee.com/opengauss/openGauss-server/pulls/6547 给社区。
image.png

相比通义灵码的常规功能,@workspace功能结合了对代码库的分析对问题作答,提升了答案的准确性。

相关文章
|
13天前
|
消息中间件 人工智能 Cloud Native
|
1月前
|
人工智能 IDE 程序员
期盼已久!通义灵码 AI 程序员开启邀测,全流程开发仅用几分钟
在云栖大会上,阿里云云原生应用平台负责人丁宇宣布,「通义灵码」完成全面升级,并正式发布 AI 程序员。
1324 10
|
1月前
|
人工智能 IDE 程序员
通义灵码 AI 程序员正式上线!
在云栖大会上,阿里云云原生应用平台负责人丁宇宣布,「通义灵码」完成全面升级,并正式发布 AI 程序员。
270 4
|
1月前
|
人工智能 架构师 IDE
阿里云通义灵码重磅升级,能自主修BUG、开发应用的AI程序员来了
通义灵码AI编程能力再进化,说几句话就能开发网页
|
11月前
|
Go
通义灵码在给golang "fmt.Sprintf()"生成代码注释时存在bug
通义灵码在给golang "fmt.Sprintf()"生成代码注释时存在bug
|
2月前
|
人工智能 IDE 测试技术
一文教会你如何用好通义灵码,让这款 AI 编码工具帮你做更多工作,更高效
如何用好通义灵码?欢迎收藏最佳使用指南。本文提供通义灵码使用指南,涵盖快捷键、配置调整、跨文件索引及上下文管理等内容,帮助用户更高效地使用通义灵码。
|
23小时前
|
人工智能 自然语言处理 IDE
|
3月前
|
人工智能 IDE 程序员
一文梳理我们是如何打造出国内领先的 AI 编程助手「通义灵码」
大语言模型的革命性突破使智能编程成为了可能,通义灵码正是基于通义大模型打造的 AI 编程助手,通过 IDE 插件的形式提供代码补全、单元测试生成等功能,能达到毫秒级的响应速度。目前,通义灵码已在阿里云内部及多家企业中应用,阿里云也在探索多智能体产品,即 AI 程序员,助力数字世界的蓬勃发展,颠覆 IT 生产力。
14000 143
|
1月前
|
消息中间件 人工智能 运维
|
2月前
|
人工智能 自然语言处理 开发者
通义灵码助力开学第一课!百万开发者首选的 AI 编码工具通义灵码是如何炼成的?
我们非常高兴的宣布,通义灵码插件下载量突破400万啦!
1449 1
通义灵码助力开学第一课!百万开发者首选的 AI 编码工具通义灵码是如何炼成的?