参考链接:
-
通义灵码产品介绍_智能编码助手_AI编程_云效(Apsara Devops)-阿里云帮助中心
-
【IDEA如何使用通义灵码?】_idea 通义灵码-CSDN博客
1. 简介
1.1 定义
通义灵码,是阿里云出品的一款基于通义大模型的智能编码辅助工具,提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码注释生成、代码解释、研发智能问答、异常报错排查等能力,并针对阿里云 SDK/OpenAPI 的使用场景调优,助力开发者高效、流畅的编码。
1.2 功能介绍
-
行级/函数级实时续写;
-
自然语言生成代码;
-
单元测试生成;
-
代码注释生成;
-
代码解释;
-
研发领域自由问答;
-
异常报错智能排查(Java);
-
双模引擎,一键切换
-
支持 Java、Python、Go、C#、C/C++、JavaScript、TypeScript、PHP、Ruby、Rust、Scala、Kotlin 等主流编程语言。
-
支持 IDE 及操作系统
-
JetBrains IDEs
-
IDE 版本:IntelliJ IDEA、PyCharm、GoLand、WebStorm 等 2020.3 及以上
-
操作系统:Windows 7 及以上、macOS、Linux
-
-
Visual Studio Code
-
IDE 版本:1.75.1 及以上
-
操作系统:Windows 8.1 及以上、macOS、Linux
-
-
详见:通义灵码产品介绍_智能编码助手_AI编程_云效(Apsara Devops)-阿里云帮助中心
2. 安装
注意:通义灵码需要登录阿里云后方可使用,如果你尚未拥有一个阿里云账号,可前往注册阿里云账号
2.1 在线版安装
(1)打开IDEA,File-->Settings...
(2)找到Plugins,切换到Marketplace选项卡下,输入“TONGYI ”或“TONGYI Lingma”进行搜索,找到TONGYI Lingma插件,Install安装即可
(3)Install完成后会变成Installed,此时只需要点击OK,无需重启IDEA,等待插件安装完成即可
(4)点击“登录”,出现“通义灵码协议”对话框,选择“同意并登录”,它会默认打开阿里云的登录地址:
使用阿里云主账号或者RAM子账号登录均可:
登录成功页面如下:
再切换回IDEA,在右下角点击通义灵码图标,出现已登录,表示账号登录成功了,接下来就可以使用啦:
退出:通义灵码登录说明_智能编码助手_AI编程_云效(Apsara Devops)-阿里云帮助中心
3.2 离线版安装
参考:通义灵码下载和安装手册_智能编码助手_AI编程_云效(Apsara Devops)-阿里云帮助中心
3. 使用
3.1 行级/函数级实时续写
根据当前语法和跨文件的代码上下文,实时生成行、函数建议代码。
当你在 IDE 编辑器区进行代码编写时,在开启自动云端生成的模式下,通义灵码会根据当前代码文件及相关代码文件的上下文,自动为你生成行级/函数级的代码建议,此时你可以使用快捷键采纳、废弃、查看不同的代码建议,同时,当你在编码的过程中,也可以通过快捷键 ⌥
P
手动触发生成代码建议,具体如下:
示例:
实操:
按下Tab键,即可将生成的代码应用到自己编写代码的位置。
其他调整代码语法如下:
macOS | Windows | |
---|---|---|
接受行间代码建议 | Tab | Tab |
废弃行间代码建议 | esc | esc |
查看上一个行间推荐结果 | ⌥ [ | Alt [ |
查看下一个行间推荐结果 | ⌥ ] | Alt ] |
手动触发行间代码建议 | ⌥ P | Alt P |
3.2 自然语言生成代码
通过自然语言描述你想要的功能,可直接在编辑器区生成代码,编码心流不间断。即用自己的语言描述出要实现的功能,通义灵码会按照功能进行代码自动补全。
通义灵码支持两种通过自然语言描述生成代码的方式:
-
在编辑器中,直接通过注释的方式描述你需要的功能,直接在编辑器中生成代码建议,单击
Tab
可直接采纳 ; -
在智能问答中,直接描述你需要的功能,智能问答助手将为你生成代码建议,并支持一键插入或复制代码。
示例:
实操:
3.3 单元测试生成
支持根据 JUnit、Mockito、Spring Test、unit test、pytest 等框架生成单元测试。
示例:
实操:
3.4 代码注释生成
一键生成方法注释及行间注释,节省你写代码注释的时间,并能够有效提升代码可读性。
示例:
实操:
3.5 代码解释
覆盖各种编程语言,选中代码后可自动识别编程语言并生成代码解释。跨越语言的边界,让你阅读代码更高效。
示例:
实操:
总结:
A. 选中代码后,一键触发功能
当你选中的代码后,支持生成单元测试、代码注释或代码解释,有 3 种触发方式:
-
在编辑器中,单击右键找到通义灵码功能操作入口,单击对应功能操作;
-
在智能问答中,直接单击对用功能操作;
-
在智能问答中,使用 / 查看快捷指令,单击生成单元测试指令。
B.生成回答后,一键采纳和追问
单击对应功能操作后,在智能问答区中,通义灵码为你所选代码生成相关回答,此时你可以根据诉求进行操作,不同功能的对应操作如下:
-
生成单元测试:
-
采纳单元测试代码建议:支持一键插入、复制、或者新建代码文件,可快速采纳生成的单元测试代码建议;
-
更换单元测试框架:目前提供基于 JUnit、Mockito、Spring Test、unit test、pytest 等框架生成单元测试代码建议,在回答完成后,可以根据需要切换框架重新生成。
-
-
生成代码注释:
-
采纳代码注释建议:支持一键插入、复制,可快速采纳生成的代码注释建议;
-
查看 Diff:单击查看 Diff 按钮,将快速唤起 IDE Diff 查看窗口,快速了解建议和源代码的变更;
-
重试、使用英文等与代码注释相关的追问操作。
-
-
解释代码:
-
支持重试、更详细、更简单、中文/英文解释的追问。
-
C. 函数的行间快捷入口
当需要针对一个方法或功能实现生成单元测试、代码注释、代码解释时,无需选中代码,可直接单击函数上方的快捷入口触发相关功能操作。
Tips:目前该功能 Visual Studio Code 上支持语言:Java、Python、Go、JS/TS、C/C++,JetBrains IDEs 支持语言:Java、Python。
3.6 研发领域自由问答
遇到编码疑问、技术难题时,一键唤起通义灵码,无需离开 IDE 客户端,即可快速获得答案和解决思路。聚焦研发领域知识的问答,帮助开发者快速解决问题。
使用通义灵码的智能问答时,为了通义灵码与你的对话能够更友好、高效,希望你能够在输入问题时:
-
选中代码,开始输入你的问题,通义灵码将围绕着选中代码与你开展对话;
-
精准表达问题,以及给出相对详细的上下文输入, 比如选中的代码、日志、报错信息等;
-
多多互动,告诉通义灵码,所给出代码建议或回答是否满足你的预期,或生成内容存在的具体瑕疵,通义灵码也会不断改进。
开始自由问答
当你编码遇到问题,缺乏具体解决思路时,可单击 IDE 侧边工具导航或使用⌘
⇧
L
唤起通义灵码智能问答助手,无需离开 IDE 客户端,即可快速获得答案和解决思路。
多种快捷指令问答
在智能问答输入框中,预置了多个常用快捷指令,输入 /
即可看到相关快捷指令:
-
/help:学习如何使用通义灵码;
-
/explain code:解释选中的代码;
-
/generate unit test:为选中的代码生成单元测试;
-
/generate comment:为选中的代码生成方法注释或行间注释;
-
/clear context:当你在会话中时,单击后将清空上下文记忆
新建会话
在智能问答窗口中,单击右上角的新建按钮即可新建会话窗口,单击后会话窗口将会到默认状态。
异常报错排查(IntelliJ IDEA)
当运行出现异常报错时,在运行标准输出窗口中,即可看到通义灵码的快捷操作按钮,单击后,通义灵码将结合运行代码、异常堆栈等报错上下文,快速给出排查思路或修复建议。
IntelliJ IDEA 中技术文档和代码片段搜索
在 IntelliJ IDEA 客户端内,如果你在编码过程中有需要进行技术资料检索、代码片段搜索的诉求,无须离开 IDE,单击侧边导航的通义灵码,单击搜索,即可开始搜索。
示例:
实操:
3.7 异常报错智能排查(Java)
当运行出现异常报错时,一键启动报错排查的智能答疑,可结合运行代码、异常堆栈等报错上下文,快速给出排查思路或修复建议代码。
示例:
实操:
3.8 双模引擎,一键切换
支持极速离线模型(Java/Python)、云端大模型两种代码补全方式,极速离线模型拥有单行补全的能力,云端大模型具备函数生成的能力。在你需要的时候,可一键切换,满足不同网络环境、不同补全强度的场景诉求。
示例:
3.9 配置指南
查看快捷键
操作 | macOS | Windows |
---|---|---|
打开/关闭智能问答窗口 | ⌘ ⇧ L | Ctl Shift L |
接受行间代码建议 | Tab | Tab |
废弃行间代码建议 | esc | esc |
查看上一个行间推荐结果 | ⌥ [ | Alt [ |
查看下一个行间推荐结果 | ⌥ ] | Alt ] |
手动触发行间代码建议 | ⌥ P | Alt P |
重新绑定快捷键
步骤 1:打开 JetBrains IDE 偏好设置(实际IDEA:File->Settings...),如下图以 IntelliJ IDEA 为例:
步骤 2:在设置窗口中单击快捷键,输入面板(英文:Panel)后搜索,找到TONGYI Lingma 快捷键,右键后单击修改键盘快捷键。在弹出的窗口中输入用于命令的按键后,单击确定即可。
启用或禁用行间生成
方法 1:单击状态栏的通义灵码图标,在弹出的窗口中可快速启用或禁用行间生成功能:
-
可以配置本地离线模型、云端大模型是否启用;
-
开启本地离线模型、云端大模型同时开启的情况下,行间生成时优先推荐云端大模型的代码建议;
方法 2:打开插件设置页面,支持启用或禁用行间生成,以及设置生成的长度。
启用或禁用函数的行间快捷入口
打开插件设置页面,支持启用或禁用函数的行间快捷入口。
3.10 查看帮助和分享反馈
查看使用帮助
通义灵码的智能问答窗口中,可以通过 2 种方式查看使用帮助:
-
通过智能问答的
/help
指令快捷查看使用帮助;
-
单击智能问答窗口的帮助文档入口,可以快速来到当前帮助文档知识库。
反馈回答质量
在智能问答中,你可以对通义灵码所生成的回答内容进行评价,支持点赞和点踩,以不断优化回答效果。
使用问题反馈
当你在使用的过程有任何疑问、优化建议、功能诉求等,均可在通义灵码的智能问答窗口单击提交反馈,即可前往阿里云开发者社区-通义灵码问答专区向我们提出问题。
参与体验调研
为了给你提供更好的智能编码体验,我们也期待收到你的使用体验反馈、优化建议以及你的期待,我们会不断努力和优化产品体验。
3.11 常见问题
详见:通义灵码常见问题_智能编码助手_AI编程_云效(Apsara Devops)-阿里云帮助中心
4. 总结
4.1 打开工具
-
IDEA操作页面右下角
-
IDEA右侧插件栏
-
Ctrl+Shift+L:唤起只能问答
-
Ctrl+Shift+S:搜索代码/文档
4.2 快捷键
操作 | macOS | Windows |
---|---|---|
打开/关闭智能问答窗口 | ⌘ ⇧ L | Ctl Shift L |
接受行间代码建议 | Tab | Tab |
废弃行间代码建议 | esc | esc |
查看上一个行间推荐结果 | ⌥ [ | Alt [ |
查看下一个行间推荐结果 | ⌥ ] | Alt ] |
手动触发行间代码建议 | ⌥ P | Alt P |
4.3 快捷指令
-
/help:学习如何使用通义灵码;
-
/explain code:解释选中的代码;
-
/generate unit test:为选中的代码生成单元测试;
-
/generate comment:为选中的代码生成方法注释或行间注释;
-
/clear context:当你在会话中时,单击后将清空上下文记忆