通义灵码 - 免费的阿里云 VS code Jetbrains AI 编码辅助工具

系列文章目录


前言

通义灵码,是阿里云出品的一款基于通义大模型的智能编码辅助工具,提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码注释生成、代码解释、研发智能问答、异常报错排查等能力,并针对阿里云 SDK/OpenAPI 的使用场景调优,助力开发者高效、流畅的编码。


一、核心场景

1.1 代码智能生成

经过海量优秀开源代码数据训练,可根据当前代码文件及跨文件的上下文,为你生成行级/函数级代码、单元测试、代码注释等。沉浸式编码心流,秒级生成速度,让你更专注在技术设计,高质高效地完成编码工作。

1.2 研发智能问答

基于海量研发文档、产品文档、通用研发知识、阿里云的云服务文档和 SDK/OpenAPI 文档等进行问答训练,为你答疑解惑,助你轻松解决研发问题。

二、产品优势

  • 跨文件感知让代码生成更贴合业务场景:客户端和模型层同步优化针对代码跨文件上下文感知能力,生成代码更加贴合当前代码库的业务场景。

  • 阿里云服务使用场景友好:专门针对阿里云的云服务使用、SDK/OpenAPI 的使用等场景调优,编码时能够更加便捷地使用阿里云服务;在对阿里云使用有疑问时,智能编码助手的回答也将更加有效。

  • 适配多 IDE 的原生设计,符合开发者使用习惯:适配 IDE 原生主题、交互模式,让开发者感受到 IDE 原生的视觉和交互体验,更符合开发者使用习惯。

  • 研发问答、文档/代码搜索能力,打造沉浸式编码:无需切换工具,IDE 客户端内即可满足开发者编码场景中的技术资料检索、技术难题解答的诉求,打造开发者沉浸式编码体验。

  • 双模引擎,自由切换:支持极速本地模型、云端大模型两种代码补全模型,支持一键切换,满足不同网络环境、不同补全强度的场景诉求。

 

三、功能介绍

3.1 行级/函数级实时续写

根据当前语法和跨文件的代码上下文,实时生成行、函数建议代码。

3.2 自然语言生成代码

通过自然语言描述你想要的功能,可直接在编辑器区生成代码,编码心流不间断。

3.3 单元测试生成

支持根据 JUnit、Mockito、Spring Test、unit test、pytest 等框架生成单元测试。

 

3.4 代码注释生成

一键生成方法注释及行间注释,节省你写代码注释的时间,并能够有效提升代码可读性。

3.5 代码解释

覆盖各种编程语言,选中代码后可自动识别编程语言并生成代码解释。跨越语言的边界,让你阅读代码更高效。

3.6 研发领域自由问答

遇到编码疑问、技术难题时,一键唤起通义灵码,无需离开 IDE 客户端,即可快速获得答案和解决思路。聚焦研发领域知识的问答,帮助开发者快速解决问题。

3.7 异常报错智能排查(Java)

当运行出现异常报错时,一键启动报错排查的智能答疑,可结合运行代码、异常堆栈等报错上下文,快速给出排查思路或修复建议代码。

3.8 双模引擎,一键切换

支持极速离线模型(Java/Python)、云端大模型两种代码补全方式,极速离线模型拥有单行补全的能力,云端大模型具备函数生成的能力。在你需要的时候,可一键切换,满足不同网络环境、不同补全强度的场景诉求。

3.9 支持编程语言

支持 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

 五、安装

5.1 Visual Studio Code

本安装步骤适用于 macOS、Windows 或 Linux 的 Visual Studio Code 中安装和使用通义灵码。

步骤一:准备工作

  • 通义灵码需要登录阿里云后方可使用,如果你尚未拥有一个阿里云账号,可前往注册阿里云账号;

  • 操作系统:Windows 8.1 及以上、macOS、Linux;

  • 下载并安装 Visual Studio Code 1.75.1 及以上版本

步骤二:在 Visual Studio Code 安装通义灵码

方法 1:从插件市场安装

说明

单击立即安装,唤起 Visual Studio Code 插件市场直接安装,安装后请重启 IDE,即可开启智能编码之旅。

  1. 打开 Visual Studio Code 扩展窗口,搜索 TONGYI Lingma,找到通义灵码后单击安装。

  2. 安装完成后,请重启 Visual Studio Code。

方法 2:下载安装包安装
  1. 单击下方链接,下载 Visual Studio Code 的 VSIX 安装包;

    ⇩ TONGYI Lingma-VS Code

  1. 下载完安装包后,打开 Visual Studio Code 后,单击扩展,单击更多按钮,在下拉菜单中单击 从 VSIX 安装,选择下载的 VSIX 文件后安装;

 

  1. 安装完成后,请重启 Visual Studio Code。

步骤三:登录阿里云账号开启智能编码之旅

  1. 重启 Visual Studio Code 后,单击侧边导航的通义灵码,在通义灵码助手的窗口单击登录按钮。

 

 Tips:如果安装后在侧边导航上找不到通义灵码入口,可鼠标聚焦在侧边导航后右键查看,勾选通义灵码后即可插件入口配置在侧边导航上。

 

 

  1. 单击登录后,将前往阿里云官网登录,完成阿里云登录后,即可前往 IDE 客户端开始使用。

 

 

5.2 JetBrains IDEs

本安装步骤适用于 macOS、Windows 或 Linux 的 JetBrains IDEs 中安装和使用通义灵码。

步骤一:准备工作

  • 通义灵码需要登录阿里云后方可使用,如果你尚未拥有一个阿里云账号,可前往注册阿里云账号;

  • 操作系统:Windows 7 及以上、macOS、Linux;

  • 下载并安装兼容的 JetBrains IDEs 2020.3 及以上版本,通义灵码与以下 IDE 兼容:

    • IntelliJ IDEA(旗舰版、社区版、教育版)

    • Android Studio

    • CLion

    • GoLand

    • PhpStorm

    • PyCharm(专业版、社区版、教育版)

    • Rider

    • RubyMine

    • RustRover

    • WebStorm

    • ...

更多详细信息,请参阅JetBrains IDE工具查找器。

步骤二:在 JetBrains IDEs 安装通义灵码

Tips:以在 IntelliJ IDEA 中安装通义灵码为例。

说明

鉴于很多开发者感兴趣我使用的 IDEA 的主题,我也分享一下信息:

我使用的 IDEA 的主题是 JetBrains IDEs 的 New UI,需要将 IDEA 升级到最新版哦,打开设置后,在 Appearance & Behavior 中即可看到 New UI 的配置入口。

方法 1:从插件市场安装
  1. 打开 IntelliJ IDEA 设置窗口,在插件市场中搜索 TONGYI Lingma,找到通义灵码后单击安装。

  2. 安装完成后,请重启 IntelliJ IDEA。

方法 2:下载安装包安装
  1. 单击下方链接,下载 JetBrains IDEs 的 zip 安装包;

    ⇩ TONGYI Lingma - JetBrains

  1. 下载完安装包后,打开 IntelliJ IDEA 后,打开设置,在插件管理的设置下拉菜单中单击从本地安装插件,选择下载的 zip 文件后安装。

 

  1. 安装完成后,请重启 IntelliJ IDEA。

步骤三:登录阿里云账号开启智能编码之旅

  1. 重启 IntelliJ IDEA 后,单击侧边导航的通义灵码,在通义灵码助手的窗口单击登录按钮。

 

  1. 单击登录后,将前往阿里云官网登录,完成阿里云登录后,即可前往 IDE 客户端开始使用。

 

六、使用指南

通义灵码,作为智能编码助手,可以在你进行编码工作时,为你提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码注释生成、代码解释、研发智能问答、异常报错排查等辅助编码工作的功能。

说明

在 IDE 环境中使用通义灵码,必须完成通义灵码插件安装及阿里云账号登录。详细信息可查看快速开始。

代码智能生成

行级/函数级实时续写

当你在 IDE 编辑器区进行代码编写时,在开启自动云端生成的模式下,通义灵码会根据当前代码文件及相关代码文件的上下文,自动为你生成行级/函数级的代码建议,此时你可以使用快捷键采纳、废弃、查看不同的代码建议,同时,当你在编码的过程中,也可以通过快捷键  P 手动触发生成代码建议,具体如下:

macOS

Windows

接受行间代码建议

Tab

Tab

废弃行间代码建议

esc

esc

查看上一个行间推荐结果

 [

Alt [

查看下一个行间推荐结果

 ]

Alt ]

手动触发行间代码建议

 P

Alt P

Tips:不同操作系统的快捷键配置可查看配置指南。

自然语言生成代码

通义灵码支持两种通过自然语言描述生成代码的方式:

  1. 在编辑器中,直接通过注释的方式描述你需要的功能,直接在编辑器中生成代码建议,单击 Tab 可直接采纳 ;

  2. 在智能问答中,直接描述你需要的功能,智能问答助手将为你生成代码建议,并支持一键插入或复制代码

生成单元测试、代码注释、代码解释

选中代码后,一键触发功能

当你选中的代码后,支持生成单元测试、代码注释或代码解释,有 3 种触发方式:

  1. 在编辑器中,单击右键找到通义灵码功能操作入口,单击对应功能操作;

  2. 在智能问答中,直接单击对用功能操作;

  3. 在智能问答中,使用 / 查看快捷指令,单击生成单元测试指令。

生成回答后,一键采纳和追问

单击对应功能操作后,在智能问答区中,通义灵码为你所选代码生成相关回答,此时你可以根据诉求进行操作,不同功能的对应操作如下:

  • 生成单元测试:

    • 采纳单元测试代码建议:支持一键插入、复制、或者新建代码文件,可快速采纳生成的单元测试代码建议;

    • 更换单元测试框架:目前提供基于 JUnit、Mockito、Spring Test、unit test、pytest 等框架生成单元测试代码建议,在回答完成后,可以根据需要切换框架重新生成。

  • 生成代码注释:

    • 采纳代码注释建议:支持一键插入、复制,可快速采纳生成的代码注释建议;

    • 查看 Diff:单击查看 Diff 按钮,将快速唤起 IDE Diff 查看窗口,快速了解建议和源代码的变更;

    • 重试、使用英文等与代码注释相关的追问操作。

  • 解释代码:

    • 支持重试、更详细、更简单、中文/英文解释的追问。

函数的行间快捷入口

当需要针对一个方法或功能实现生成单元测试、代码注释、代码解释时,无需选中代码,可直接单击函数上方的快捷入口触发相关功能操作。

Tips:目前该功能 Visual Studio Code 上支持语言:Java、Python、Go、JS/TS、C/C++,JetBrains IDEs 支持语言:Java、Python。

 

 

研发智能问答

使用通义灵码的智能问答时,为了通义灵码与你的对话能够更友好、高效,希望你能够在输入问题时:

  • 选中代码,开始输入你的问题,通义灵码将围绕着选中代码与你开展对话;

  • 精准表达问题,以及给出相对详细的上下文输入, 比如选中的代码、日志、报错信息等;

  • 多多互动,告诉通义灵码,所给出代码建议或回答是否满足你的预期,或生成内容存在的具体瑕疵,通义灵码也会不断改进。

开始自由问答

当你编码遇到问题,缺乏具体解决思路时,可单击 IDE 侧边工具导航或使用  L唤起通义灵码智能问答助手,无需离开 IDE 客户端,即可快速获得答案和解决思路。

多种快捷指令问答

在智能问答输入框中,预置了多个常用快捷指令,输入 / 即可看到相关快捷指令:

  • /help:学习如何使用通义灵码;

  • /explain code:解释选中的代码;

  • /generate unit test:为选中的代码生成单元测试;

  • /generate comment:为选中的代码生成方法注释或行间注释;

  • /clear context:当你在会话中时,单击后将清空上下文记忆;

新建会话

在智能问答窗口中,单击右上角的新建按钮即可新建会话窗口,单击后会话窗口将会到默认状态。

异常报错排查(IntelliJ IDEA

当运行出现异常报错时,在运行标准输出窗口中,即可看到通义灵码的快捷操作按钮,单击后,通义灵码将结合运行代码、异常堆栈等报错上下文,快速给出排查思路或修复建议。

 

IntelliJ IDEA 中技术文档和代码片段搜索

在 IntelliJ IDEA 客户端内,如果你在编码过程中有需要进行技术资料检索、代码片段搜索的诉求,无须离开 IDE,单击侧边导航的通义灵码,单击搜索,即可开始搜索。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/617533.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

最强联网Chat GPT 火爆全网高速 永久免费

🔴高速联网 秒响应支持语音通话🎈 首先介绍一下她的功能吧😁 女友消息代回机👌🏻 朋友圈文案👌🏻 聊天话术👌🏻 高情商回复👌🏻 脱单助…

redis缓存雪崩、穿透和击穿

缓存雪崩 对于系统 A,假设每天高峰期每秒 5000 个请求,本来缓存在高峰期可以扛住每秒 4000 个请求,但是缓存机器意外发生了全盘宕机或者大量缓存集中在某一个时间段失效。缓存挂了,此时 1 秒 5000 个请求全部落数据库,…

Salesforce财务状况分析

纵观Salesforce发展史和十几年财报中的信息,Salesforce从中小企业CRM服务的蓝海市场切入,但受限于中小企业的生命周期价值和每用户平均收入小且获客成本和流失率不对等,蓝海同时也是死海。 Salesforce通过收购逐渐补足品牌和产品两块短板&am…

golang 记录一次协程和协程池的使用,利用ants协程池来处理定时器导致服务全部阻塞

前言 在实习的项目中有一个地方遇到了需要协程池的地方,在mt推荐下使用了ants库。因此在此篇记录一下自己学习使用此库的情况。 场景描述 此服务大致是一个kafka消息接收、发送相关。接收消息,根据参数设置定时器进行重发。 通过这里新建kafka服务&a…

阿尔泰科技——PXIe8912/8914/8916高速数据采集卡

阿尔泰科技PXIe8912/8914/8916高速数据采集卡是2通道同步采样数字化仪,专为输入信号高达 100M 的高频和高动态范围的信号而设计。 与Labview无缝连接,提供图形化API函数。模拟输入范围可以通过软件编程设置为1V 或者5V。配备了容量高达 2GB的板载内存。…

【抓包教程】BurpSuite联动雷电模拟器——安卓高版本抓包移动应用教程

前言 近期找到了最适合自己的高版本安卓版本移动应用抓HTTP协议数据包教程,解决了安卓低版本的问题,同时用最简单的办法抓到https的数据包,特此进行文字记录和视频记录。 前期准备 抓包工具:BurpSuite安卓模拟器:雷…

Redis重点总结补充

Redis重点总结 1.redis分布式锁 2.redission实现分布式锁 注意:加锁、设置过期时间等操作都是基于lua脚本完成. redisson分布式锁,实现可重入(前提是同一个线程下 3.redis主从集群 实现主从复制 ( Master-slave Replication)的工作原理 : …

HTTP数据请求

文章目录 1 概述2 什么是HTTP3 如何发起HTTP请求4 参考链接 1 概述 日常生活中我们使用应用程序看新闻、发送消息等,都需要连接到互联网,从服务端获取数据。例如,新闻应用可以从新闻服务器中获取最新的热点新闻,从而给用户打造更…

机器学习降维技术全面对比评析

简介 在机器学习领域,处理高维数据带来了与计算效率、模型复杂性和过度拟合相关的挑战。降维技术提供了一种解决方案,将数据转换为低维表示,同时保留基本信息。本文旨在比较和对比一些突出的降维技术,涵盖线性和非线性方法。 线性…

有道云笔记编辑 Markdown 文件 - GitHub README.md

有道云笔记编辑 Markdown 文件 - GitHub README.md 1. 新建 -> Markdown2. GitHub README.mdReferences 1. 新建 -> Markdown ​ 2. GitHub README.md ​​​ References [1] Yongqiang Cheng, https://yongqiang.blog.csdn.net/

066:vue中实现二维数组的全选、全不选、反选、部分全选功能(图文示例)

第061个 查看专栏目录: VUE ------ element UI 专栏目标 在vue和element UI联合技术栈的操控下,本专栏提供行之有效的源代码示例和信息点介绍,做到灵活运用。 (1)提供vue2的一些基本操作:安装、引用,模板使用,computed,watch,生命周期(beforeCreate,created,beforeM…

Vue3+Vite连接高德地图JS API——地图显示、输入搜索

1 开通高德地图Web端JS API服务 1、进入高德地图API官网(https://lbs.amap.com/): 2、注册登录。 3、进入控制台。 4、点击“应用管理”,点击“我的应用”,创建新应用。 5、添加Key,服务平台选择“Web端&…

BikeDNA(六)参考数据的内在分析2

BikeDNA(六)参考数据的内在分析2 1.数据完整性 见链接 2.网络拓扑结构 见链接 3.网络组件 断开连接的组件不共享任何元素(节点/边)。 换句话说,不存在可以从一个断开连接的组件通向另一组件的网络路径。 如上所述…

基于Hadoop的网上购物行为大数据分析及预测系统【flask+echarts+机器学习】前后端交互

有需要本项目或者部署的系统可以私信博主,提供远程部署和讲解 本研究基于淘宝用户行为的开源数据展开大数据分析研究,通过Hadoop大数据分析平台对阿里天池公开的开源数据集进行多维度的用户行为分析,为电商销售提供可行性决策。 首先我们将大…

如何配置Kafka账号密码

背景 我们需要与第三方系统进行数据同步,需要搭建公网Kafka,Kafka默认是没有用户密码校验的,所以我们需要配置用户名密码校验。 配置 新增JAAS配置文件 在conf目录下新增kafka_server_jaas.conf文件,文件内容如下:…

python统计分析——小提琴图(sns.violinplot)

参考资料:用python动手学统计学,帮助文档 使用seaborn.violinplot()函数绘制箱线图 sns.violinplot()的做出来的小提琴图比plt.violinplot()更像小提琴。 import numpy as np import pandas as pd from matplotlib import pyplot as plt import seabo…

Spark的内核调度

目录 概述 RDD的依赖 DAG和Stage DAG执行流程图形成和Stage划分 Stage内部流程 Spark Shuffle Spark中shuffle的发展历程 优化前的Hash shuffle 经过优化后的Hash shuffle Sort shuffle Sort shuffle的普通机制 Job调度流程 Spark RDD并行度 概述 Spark内核调度任务: 1…

强化学习应用(四):基于Q-learning的无人机物流路径规划研究(提供Python代码)

一、Q-learning简介 Q-learning是一种强化学习算法,用于解决基于马尔可夫决策过程(MDP)的问题。它通过学习一个价值函数来指导智能体在环境中做出决策,以最大化累积奖励。 Q-learning算法的核心思想是通过不断更新一个称为Q值的…

jetson orin nano 使用yolov8导出engine

1. 导出onnx 经过前面训练,得到了best.pt模型,现在想要使用tensorrt进行推理,需要先导出为onnx格式,再转化为engine格式。 yolo export modelbest.pt formatonnx opset12 simplifyTrue2.解决错误 在导出过程中,可能…

Android代码混淆

Android之代码混淆 代码混淆的作用设置混淆1. 在模块目录下的 build.gradle 文件中配置以下代码2. 在 proguard-rules.pro 文件中添加混淆规则 通用混淆规则常用匹配符常用命令注意事项如何查看是否已混淆 代码混淆的作用 1.令 APK 难以被逆向工程,即很大程度上增加…