参考链接:
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:当你在会话中时,单击后将清空上下文记忆
发表评论