通义灵码--我的编程好伙伴,让我晋升编程大神,从安装到使用

简介: 作为一名大数据开发工程师,我在编程过程中使用了通义灵码的@workspace与@terminal工具,这些工具极大地提高了我的工作效率,使我在处理新项目代码和实现新需求时更加得心应手。通过这些工具,我能够在不离开IDE的情况下快速解决问题,生成代码,优化现有代码,并通过智能问答功能获取即时帮助。通义灵码不仅支持多种主流编程语言,还提供了丰富的功能,如代码生成、单元测试生成、代码优化等,显著提升了我的编程体验。强烈推荐给所有希望提高编程效率的开发者。

我是一名大数据开发工程师,通义灵码@workspace与@terminal是我编程路上的得力助手。它们助力我快速熟悉新项目代码,高效实现新需求,相较于以往,工作效率提升了75%。这两款工具直观易用,性能稳定,让我在编程过程中始终保持流畅体验。我深感其带来的便利与高效,特此分享使用体验,也诚邀您一同体验,共同提升编程效率。

通义灵码简介

兼容编程工具

JetBrains IDEs

  1. IDE 版本:IntelliJ IDEA、PyCharm、GoLand、WebStorm、Android Studio 等 2020.3 及以上
  2. 操作系统:Windows 7 及以上、macOS、Linux
  3. 暂不支持的系统架构:aarch64 windows

Visual Studio Code

  1. IDE 版本:1.68.0 及以上
  2. 操作系统:Windows 7 及以上、macOS、Linux
  3. 暂不支持的系统架构:aarch64 windows

Visual Studio

  1. IDE 版本:Visual Studio 2022 17.3.0 及以上,或 Visual Studio 2019 16.3.0 及以上
  2. 操作系统:Windows 10 及以上

其他场景

  1. Remote SSH、Docker、WSL 等远程连接开发场景
  2. VS Code 的 WebIDE,并支持 Open VSX 插件市场中下载和使用
  3. HUAWEI DevEco Studio,参考 JetBrains IDEs 安装手册-方法 2:下载安装包安装后使用

功能介绍

行间代码生成

  1. 行级/函数级实时续写:根据当前语法和跨文件的代码上下文,实时生成行、函数建议代码;

  2. 注释生成代码:通过注释描述你想要的功能,可直接在编辑器区生成代码,编码心流不间断。

研发智能问答

  1. 研发问题自由问答:遇到编码疑问、技术难题时,一键唤起通义灵码,无需离开 IDE 客户端,即可快速获得答案和解决思路;

  2. 本地工程问答:通过问答即可快速结合当前仓库进行工程理解、代码查询等,同时可以通过自然语言描述需求,结合当前工程生成简单需求或缺陷的整体修复建议和建议代码;

  3. 企业知识库问答:借助企业知识和数据进行问答,快速构建企业研发知识问答助手,提升团队的工作效率和协作能力。

智能生成

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

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

  3. 代码解释:覆盖各种编程语言,选中代码后可自动识别编程语言并生成代码解释;

  4. 提交信息生成:支持一键生成代码 Git 提交信息,并支持设置生成的语言。

编码问题解决

  1. 代码优化:深度分析代码及其上下文,迅速识别潜在的编码问题,从简单的语法错误到复杂的性能瓶颈,均能够指出问题所在,并提供具体的优化建议代码;

  2. 代码问题修复:针对编码过程中出现的代码问题(Problem),可以一键给出修复建议,助力开发者快速解决代码问题;

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

企业级管理

  1. 统一授权管理:支持统一为企业内开发者的添加使用权限,统一管理企业成员权限;

  2. 统计报表:提供开发者活跃、AI 代码生成占比、问答使用占比等统计数据,帮助企业快速了解使用效果;

  3. 知识管理:高效管理企业私域数据,结合企业数据提供企业知识库问答、企业代码生成增强功能,让编码助手更贴合企业业务场景;

  4. 专属 VPC 部署:企业专属版提供专属 VPC 部署,并支持企业内网连接,全链路保障企业数据安全,满足企业安全合规要求。

支持编程语言

支持 Java、Python、Go、C#、C/C++、JavaScript、TypeScript、PHP、Ruby、Rust、Scala、Kotlin 等主流编程语言。

为什么选择通义灵码

市面上也有很多AI编程工具,我也体验过一些,体验感真是一言难尽呀!但是通义灵码的横空出世给了我不一样的使用体验,不单单是我自己的体验,从通义灵码获取到的荣誉就能看出其有多么的优秀,让我们来简单看一下都有哪些荣誉

入选 2024 世界人工智能大会最高荣誉——镇馆之宝

image.png
镇馆之宝是世界人工智能大会展览的最高荣誉,从科技含量、市场前景、创新性以及社会经济效益等维度综合考量评选,每年入选数量不超过 10 个,获奖产品不仅代表了当前人工智能领域的最新技术成果,还展示了未来的发展趋势和商业潜力。作为国内最受欢迎的辅助编程工具,通义灵码凭借在功能、性能、安全性以及应用落地等方面的优势成功入选。

国内唯一入选 Gartner AI 代码助手魔力象限挑战者象限

image.png
该报告从技术创新性、产品服务能力、商业模式等 15 个维度,全方位评估企业AI代码助手的能力,是迄今为止最权威的 AI 代码助手报告。在关键能力评分中,通义灵码在代码生成、代码解释、代码调试等多项能力领先,其中代码解释能力位列全球第二。

首批通过信通院 AI 代码大模型评估最高评级

image.png
阿里云通义灵码在本次评估中获得4+级评级,是评分最高的代码大模型之一。

信通院评测结果显示:

  • 在通用能力方面,通义灵码在代码转换、代码检查及修复、代码优化等方面表现突出;
  • 在专用场景方面,通义灵码提供网站开发、数据库开发、大数据开发、嵌入式开发等多个场景支持能力;
  • 在应用成熟度方面,通义灵码具备较完善的数据合规及数据分类分级机制,且模型稳定性及可维护性表现优异,在模型推理性能、模型服务风险可控性等方面均表现优秀。

通过可信 AI 智能编码工具评估,获当前最高等级

image.png
经评估,通义灵码智能编码助手的功能完善且具备较高准确性,可为用户提供较为优质流畅的使用体验,且在性能指标方面,其响应速度、并发处理能力、系统的稳定性,均具有优秀表现。同时在模型层和服务层,具备高效稳定的工程化能力,以及知识库检索增强能力,对当前代码工程(Workspace)的理解能力较好。

安装

关于介绍也介绍了很多了,不难看出通义灵码的优秀,那么下面我们来安装一下

通义灵码是能够兼容 Visual Studio Code、Visual Studio、JetBrains IDEs 等主流编程工具的,但是本次我的主要编程工具是Visual Studio Code,所以根据Visual Studio Code的方式跟大家分享。
在Visual Studio Code中安装通义灵码是非常简单的,官方也是有详细的教程,不过我也还是简单的分享一下我的安装过程
官方教程:通义灵码安装教程
帮助文档:通义灵码帮助文档
官网:通义灵码官网

image.png

准备工作

因为使用的是Visual Studio Code来安装,所以要准备好Visual Studio Code 1.68.0 及以上版本。

  • 操作系统:Windows 7 及以上、macOS、Linux;
  • 下载并安装 Visual Studio Code 1.68.0 及以上版本。

第一种方案:从插件商店安装

搜索扩展

打开Visual Studio Code的扩展搜索TONGYI Lingma

image.png

点击信任&安装

image.png

点击登录

安装完成之后,在活动栏中就可以看到通义灵码的图标,然后点击图标之后进行登录,使用阿里云账号登录就可以
image.png

第二种方案:安装包安装

Visual Studio Code 的 VSIX 安装包
下载安装包之后在插件商店中点击右上角的更多,然后点击从CSIX安装就可以了,安装之后正常使用阿里云账号登录就可以

image.png
到这里就已经安装好了,就可以开启我们的智能编码之旅了!

简单使用

接下来我们来简单实用一下通义灵码,看看都能在我们编程过程中起到什么作用。

智能生成代码

  • 采纳单元测试代码建议:支持一键插入、复制、或者新建代码文件,可快速采纳生成的单元测试代码建议;
  • 更换单元测试框架:提供基于 JUnit、Mockito、Spring Test、unit test、pytest 等框架生成单元测试代码建议,在回答完成后,可以根据需要切换框架重新生成;
  • 新建文件:支持一键保存单元测试代码为新文件,方便进行查看和修改。

给出我们的要求让通义灵码帮我们根据要求生成代码
要求如下:

使用Python生成一个图书管理系统

  1. 要求用户可以查看所有图书(包含图书的状态借出/空闲)
  2. 要求用户可以录入图书
  3. 要求用户可以借书

通义灵码给出的结果

class Book:
    def __init__(self, title, author, status='空闲'):
        self.title = title
        self.author = author
        self.status = status

    def __str__(self):
        return f"{self.title} by {self.author} - {self.status}"
class Library:
    def __init__(self):
        self.books = []

    def add_book(self, title, author):
        new_book = Book(title, author)
        self.books.append(new_book)
        print(f"图书 '{title}' 已添加到系统。")

    def display_books(self):
        if not self.books:
            print("当前没有图书。")
            return
        for book in self.books:
            print(book)

    def borrow_book(self, title):
        for book in self.books:
            if book.title == title and book.status == '空闲':
                book.status = '借出'
                print(f"您已成功借阅 '{title}'。")
                return
        print(f"图书 '{title}' 不可借阅。")
def main():
    library = Library()

    while True:
        print("\n欢迎来到图书管理系统")
        print("1. 查看所有图书")
        print("2. 录入图书")
        print("3. 借书")
        print("4. 退出")

        choice = input("请选择操作: ")

        if choice == '1':
            library.display_books()
        elif choice == '2':
            title = input("请输入图书名称: ")
            author = input("请输入作者名称: ")
            library.add_book(title, author)
        elif choice == '3':
            title = input("请输入要借阅的图书名称: ")
            library.borrow_book(title)
        elif choice == '4':
            print("感谢使用图书管理系统!再见!")
            break
        else:
            print("无效的选择,请重新输入。")

if __name__ == "__main__":
    main()

可以看到效果还是很不错的
image.png

代码解释

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

有时候在编程过程中遇到一些不太理解的函数也可以直接询问通义灵码,让它帮我们做出解释,并解释这段代码的作用,可以对我们编程有很大的作用,节省了很多查资料的时间

image.png
进入刚才通义灵码写出来的代码,选中library = Library()这段话,点击右键使用通义灵码进行代码解释
以下是通义灵码给出的解释:

代码解释
这段代码的功能是创建一个 Library 类的实例,并将其赋值给变量 library。假设 Library 类已经定义好,这个实例可以用来调用 Library 类中的各种方法和属性。

控制流图
由于这段代码非常简单,没有复杂的逻辑,因此控制流图也非常简单:

flowchart TD
    A[创建 Library 实例] --> B[赋值给 library]

详细解释

  • 创建 Library 实例:调用 Library 类的构造函数,创建一个新的 Library 对象。
  • 赋值给 library:将新创建的 Library 对象赋值给变量 library,以便后续使用。

image.png
这里展示举了一个很简单的例子,通义灵码给出了很详细的解释,在实战中遇到比较陌生的函数或者对某一段代码不解的话都可以直接让通义灵码给出回答,非常高效!

生成注释

  1. 采纳代码注释建议:支持一键插入、复制,可快速采纳生成的代码注释建议;
  2. 查看 Diff:单击查看 Diff 按钮,将快速唤起 IDE Diff 查看窗口,快速了解建议和源代码的变更。

直接全部选中刚才的图书管理系统代码,让通义灵码帮我们对项目进行注释,这样可以易于阅读和理解。

image.png

通义灵码给出的结果

class Book:
    """
    图书类,用于表示一本书的信息。

    属性:
    - title (str): 图书的标题。
    - author (str): 图书的作者。
    - status (str): 图书的状态,默认为'空闲'。
    """
    def __init__(self, title, author, status='空闲'):
        self.title = title
        self.author = author
        self.status = status

    def __str__(self):
        """
        返回图书的字符串表示,包含标题、作者和状态。

        返回:
        str: 图书的信息字符串。
        """
        return f"{self.title} by {self.author} - {self.status}"

class Library:
    """
    图书馆类,用于管理多本图书。

    属性:
    - books (list): 包含所有图书的列表。
    """
    def __init__(self):
        self.books = []

    def add_book(self, title, author):
        """
        向图书馆添加一本新书。

        参数:
        - title (str): 图书的标题。
        - author (str): 图书的作者。
        """
        new_book = Book(title, author)
        self.books.append(new_book)
        print(f"图书 '{title}' 已添加到系统。")

    def display_books(self):
        """
        显示图书馆中所有图书的信息。
        如果没有图书,则显示提示信息。
        """
        if not self.books:
            print("当前没有图书。")
            return
        for book in self.books:
            print(book)

    def borrow_book(self, title):
        """
        借阅一本图书。

        参数:
        - title (str): 要借阅的图书标题。

        遍历图书列表,如果找到状态为'空闲'的图书,则将其状态更新为'借出'。
        如果没有找到可借阅的图书,则显示提示信息。
        """
        for book in self.books:
            if book.title == title and book.status == '空闲':
                book.status = '借出'
                print(f"您已成功借阅 '{title}'。")
                return
        print(f"图书 '{title}' 不可借阅。")

def main():
    """
    主函数,用于运行图书管理系统的命令行界面。
    提供添加图书、显示所有图书、借阅图书和退出系统等功能。
    """
    library = Library()

    while True:
        print("\n欢迎来到图书管理系统")
        print("1. 查看所有图书")
        print("2. 录入图书")
        print("3. 借书")
        print("4. 退出")

        choice = input("请选择操作: ")

        if choice == '1':
            library.display_books()
        elif choice == '2':
            title = input("请输入图书名称: ")
            author = input("请输入作者名称: ")
            library.add_book(title, author)
        elif choice == '3':
            title = input("请输入要借阅的图书名称: ")
            library.borrow_book(title)
        elif choice == '4':
            print("感谢使用图书管理系统!再见!")
            break
        else:
            print("无效的选择,请重新输入。")

if __name__ == "__main__":
    main()

image.png
可以看到,通义灵码直接把每行代码的详细含义都通过注释标注到代码上了,而且可以直接覆盖到原来的python文件上。
而且还可以通过diff按钮快速唤起 IDE Diff 查看窗口,快速了解建议和源代码的变更。
image.png

代码优化建议

  1. 采纳代码优化建议:针对优化建议中的建议代码,支持一键插入、复制,快速采纳生成的建议代码;
  2. 查看 Diff:单击查看 Diff 按钮,将快速唤起 IDE Diff 查看窗口,快速了解建议和源代码的变更;

选中代码,然后点击生成优化建议,哪怕你是小白,也可以写出非常优秀的代码

image.png

智能问答

@workspace 本地工程问答

当你需要快速了解一个工程、查找工程内的实现逻辑,或有新的诉求需要进行代码变更时,可以在智能问答窗口中通过 @ 可唤起 @workspace,选中后输入你的问题或诉求,通义灵码可快速结合当前仓库进行工程理解、代码查询、代码问答等,同时可以通过自然语言描述需求,结合当前工程生成简单需求或缺陷的整体修改建议和相关建议代码。

下面是我使用@workspace对自己本地的代码库进行的一个分析
image.png
可以让我们很快的就基本了解当前代码库的一个基本作用,在工作中具有重要意义

@terminal 问答

当你遇到执行指令不知道如何写,或者不清楚某个指令的意思时,可以在智能问答窗口中通过 @ 可唤起 @terminal,选择后使用自然语言描述你的需要指令诉求,通义灵码将可以生成你需要的命令。生成指令后,你可以一键插入到 terminal 中进行执行或让通义灵码继续解释。当然,你也可以在选择 @terminal 后,输入指令让通义灵码生成指令解释。

image.png

#teamDocs 知识库问答(企业版)

当你需要结合企业内私域知识信息让通义灵码进行回答时,可以在智能问答窗口中通过 # 唤起 #teamDocs,并输入问题,通义灵码将结合企业知识库(当前用户有权限的知识库)对问题进行回答,在回复中也可以单击查看引用的企业知识库内容。

image.png

总结

自己使用通义灵码也有一段时间了,对我自己而言感觉通义灵码已经是我编程过程中不可或缺的伙伴了,有了它自己的变成效率和质量大大提高,减少了很多去查资料的时间,而且还可以帮助自己去优化代码,所以非常推荐大家去使用一下,希望大家工作顺利!

相关文章
|
6天前
|
机器学习/深度学习 数据采集 自然语言处理
通义灵码开发者社区的重要性 —— 知识共享与学习
通义灵码开发者社区是技术交流与学习的重要平台,支持开发者分享经验、技巧,解决编程难题,并提供丰富的学习资源,如教程、文档和案例分析,助力开发者提升技能,推动通义灵码的广泛应用与发展。
通义灵码开发者社区的重要性 —— 知识共享与学习
|
4天前
|
自然语言处理 算法 开发者
通义灵码开发者社区的重要性——反馈与改进
通义灵码开发者社区是用户反馈的重要平台,用户可直接反馈使用中遇到的问题、建议和需求,如代码错误或性能问题。社区还支持通义灵码团队主动征求用户意见,通过调查问卷等形式收集反馈,以优化产品功能和用户体验,解决兼容性和性能等潜在问题,推动产品的持续改进和发展。
通义灵码开发者社区的重要性——反馈与改进
|
13天前
|
自然语言处理 小程序 IDE
只要几句话,通义灵码帮你创建专属健康管理小程序
数字时代的大潮中,编程不再高深莫测,而是每个人都可以尝试并享受的乐趣。今天,就让我们一起探索如何利用通义灵码的自然语言生成代码功能,轻松打造你的专属健康管理小程序,说不定在这个过程中,不管是身材管理,还是编程学习,都能让你离目标更近一步。
|
2月前
|
人工智能 运维 IDE
通义灵码初体验:创新与惊喜并存
作为一名DevOps开发运维人员,我使用通义灵码个人版(v1.4.5)进行代码生成和补全,显著提升了50%的工作效率。安装过程简单,通过VS Code插件市场安装并登录。主要功能包括代码解释、自动生成单元测试代码和根据需求生成新代码。这些功能操作简便、响应迅速、准确性高,极大地提高了代码质量和开发效率。总体评分9分,期待未来更多实用功能。
通义灵码初体验:创新与惊喜并存
|
18天前
|
人工智能 开发者
通义灵码融入南京大学 AI 编程创新课,让大学生释放想象力
南京大学软件学院副教授钦老师将通义灵码引入了 X 层级课程《人工智能驱动编程》中,通过将通义灵码智能编码实践与传统编程语言教学融合的方式,让学生切身体会人工智能、大模型技术对编程学习方式带来的改变。
|
21天前
|
自然语言处理 算法 开发工具
阿里云通义灵码:开启高效编程之门的神奇工具
阿里云通义灵码,基于先进的人工智能技术,为开发者提供高效、高质量的代码生成服务。它简化了软件开发流程,降低了编程门槛,使开发者能够更快捷地实现创意,无论是新手还是资深人士,皆能从中受益,享受编程的乐趣。通过阿里云平台轻松注册、安装插件,即可体验其强大的功能,开启智能化编程新时代。
|
27天前
|
编解码 Java Android开发
通义灵码:在安卓开发中提升工作效率的真实应用案例
本文介绍了通义灵码在安卓开发中的应用。作为一名97年的聋人开发者,我在2024年Google Gemma竞赛中获得了冠军,拿下了很多项目竞赛奖励,通义灵码成为我的得力助手。文章详细展示了如何安装通义灵码插件,并通过多个实例说明其在适配国际语言、多种分辨率、业务逻辑开发和编程语言转换等方面的应用,显著提高了开发效率和准确性。
|
27天前
|
人工智能 自然语言处理 数据可视化
比 Copilot 快两倍以上,在我的开源项目 AI Godot 桌宠中用通义灵码解决问题
在我的开源项目 AI Godot 桌宠中用通义灵码解决问题。
|
2月前
|
人工智能 Python
AI师傅和通义灵码合作助力你学编程
湖北的一位股民通过AI学习了使用通义灵码制作股票浮动止盈点计算器,大幅提升了效率。通过描述需求、编写代码、解释代码和纠错等步骤,实现了从获取股票最高价到计算止盈价的全过程,简化了操作流程,提高了投资决策的准确性。
|
2月前
|
自然语言处理 IDE 测试技术
通义灵码史上最全使用教程:秀一秀AI编程新肌肉
通义灵码是阿里云推出的一款智能编码辅助工具,基于通义大模型,提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码优化、注释生成、代码解释、研发智能问答、异常报错排查等功能。它支持 Visual Studio Code 和 JetBrains IDEs,适配多 IDE 原生设计,帮助开发者高效、流畅地编码。官方提供了详细的下载和安装指南,以及丰富的功能介绍和使用指南。
339 3