概述
通义灵码是阿里云开发的一个编码助手,基于AI大模型,提供代码智能生成,智能问答等功能,旨在加快编码,提高开发效率。
功能
- 帮你续写代码
- 帮你写代码注释
- 帮你写单元测试
- 解释代码
- 生成代码
- 代码优化
- 答疑解惑
- 排查异常原因
特性
- 多语言支持:java,python,go,JavaScript等
- 多IDE支持:VSCode,JetBrains IDES
- 多网络环境:支持极速本地模型、云端大模型两种代码补全模型,支持一键切换,满足不同网络环境、不同补全强度的场景诉求
- 标准版面向个人开发者免费使用,企业版面向企业用户(当前免费,支持1000个授权),面向保密单位的私有化部署
- 不存储用户代码
安装
准备工作
- VSCode编辑器(1.75.1 及以上)
- JetBrains IDEs 任意一款 (2020.3 及以上)
- 阿里云账号,注册地址:https://www.aliyun.com/
VSCode安装
- 直接在左侧插件市场搜索
通义灵码
或者TONGYI
点击安装即可 - 离线安装,通过在插件市场网站搜索关键词获取
IDEA安装
- 插件市场安装:file--->settings--->plugins,点击Marketplace ,然后输入
通义灵码
或者TONGYI
点击安装即可 - 离线安装:先下载安装包(https://tongyi.aliyun.com/lingma/download ),然后file--->settings--->plugins,点击齿轮,选择 Install Plugin from Disk
安装完成后,在右侧工具栏将出入同义灵码对话框入口图标,同时在编辑器右键菜单中有一个常用功能的快捷入口。如图:
使用指南
以IDEA为例
续写代码
安装插件之后,通义灵码会扫面整个项目的代码,分析并学习。当我们在编写代码的时候给出续写建议。
- 根据注释续写
- 根据代码上下文续写
如下示例演示了续写功能:
代码本意是通过判断 param.getAdCode() 是否有值,没有则使用param的经纬度结合行政区划电子围栏计算出param所属行政区划编码。
当我们写完注释信息“通过事件经纬度结合行政区划电子围栏进行计算”后,给出了提示.
可以通过快捷键 ALT+] 切换到其它的提示(如果它可以给出多个提示的情况下)。
可以通过快捷键 TAB 选择一个提示,此时续写完成了。
可以通过快捷键 ESC 取消提示,此时退出续写。
根据代码上下文续写:
代码注释
通义灵码实时检测我们编写的方法名称,并自动给出可能的方法注释信息
- 当我们输入java doc 注释关键字的时候提示
- 当我们选中一个方法,右键调出通义灵码菜单的时候选中
代码注释
如下示例演示了写注释的功能:
当我们编写完方法名称和参数定义后,给出了方法注释的提示。
写单元测试
在IDEA编辑器界面右键有一个通义灵码的菜单,选中方法,点击菜单中的生成单元测试代码,将唤起对话框,并生成相关的测试代码样例,如图:
解释代码含义
选中需要被解释的代码,右键点击解释代码,将唤起对话框,并生成相关的解释结果。如图:
这个功能的好处:
- 便于理解别人写的代码
- 变相解决了程序员不爱写注释的问题
- 对于特别拗口的逻辑,可以借助通义灵码进行分析
优化代码
选中需要优化的代码,右键点击生成优化建议,将唤起对话框,并生成相关的优化建议。
问答
在IDEA中安装了通义灵码插件后,右侧(maven图标位置)将有一个对话框唤起的入口,在此对话框中可以进行智能问答和搜索。
- 智能问答类似 ChatGPT ,可以发起各种问答
- 搜索,搜索阿里云开发者社区、github、StackOverflow中的相关内容
- 无需离开IDE,专属的开发者搜索引擎
排查异常
仅java
当程序发生异常,控制台中的异常log中将嵌入通义灵码图标,点击图标将打开对话框,在对话框中将给出异常可能的原因,并提供相应的修复建议。如图:
此处是因为JDBC连接信息不正确导致MP自动配置发生异常。当点击图标后,通义灵码给出了分析和解决办法,并对结果提供中英翻译功能。
总结
- 确有帮助,提高了开发人员的工作效率
- 对于编码规范,帮助很大
- 通义灵码也会给出错误的信息,不可全信
- 缺点:占机器资源