DataWorks Copilot 代码编程助手

更新时间:
复制为 MD 格式

DataWorks Copilot 代码编程助手通过自然语言交互,能高效完成SQL/Python代码的生成、优化、解释和测试等任务。支持通过智能编辑器或 Copilot Ask 两种方式使用该功能。本文将围绕代码编程助手的核心能力与使用场景,展开详细说明。

功能概述

DataWorks Copilot 代码编程助手基于大语言模型(LLM),面向数据开发人员提供智能SQL/Python 编程支持。它支持两种交互方式:智能代码编辑器(实时补全、右键快捷操作)和 Copilot Chat(Ask 模式)(自然语言问答式交互)。核心能力覆盖代码生成、改写、纠错、优化、解释、注释生成、测试用例设计、语法问答、Notebook Cell 智能创建及跨引擎“快捷找表”。用户可通过添加表、节点、数据专辑、Rules 或本地文件等上下文提升理解准确性,并支持切换多种大模型。开箱即用,无需编码基础,显著提升数据建模、ETL 开发与调试效率,助力低门槛、高质量、高效率的数据研发。

功能入口

智能代码编辑器

场景1:智能代码补全

使用方法:在您进行代码类节点开发时,Copilot会根据上下文(已输入的代码、引用的表结构等)智能预测并推荐后续代码片段,补全建议会自动出现,按Tab键采纳。

场景2:右键菜单快捷操作

使用方法:在智能代码编辑器中,按需选中代码,单击鼠标右键,在弹出的菜单中选择Copilot

image

Copilot Chat(Ask模式)

Ask模式是Copilot Chat的默认模式,适用于以问答形式解决具体的编码问题。支持用户完成代码生成、代码改写、代码纠错、生成注释、代码解释、代码优化、代码测试、代码问答、 Notebook Cell 智能生成与快捷找表。使用Copilot Chat Ask模式时,支持选中编辑器中的代码作为上下文,进行针对性的操作。

image

快速开始

以 Copilot Chat(Ask 模式)为例,快速上手体验该功能。

步骤1:进入Copilot Chat(Ask模式)

  • 登录 DataWorks控制台,点击左侧菜单数据开发与运维 > 数据开发,选择对应工作空间后点击进入数据开发(Data Studio)。

  • 单击Data Studio页面顶部导航栏右上角的image进入Copilot Chat(Ask模式)。

步骤2:添加上下文(可选)

为了让Copilot更准确地理解您的需求,可选择添加上下文背景信息。您可以通过对话框中输入@或在对话框右下角单击@唤起该功能,从而选择您所需要添加的上下文类型。

image

所支持的类型有:

  • :引用一张或多张表的元数据信息。

  • 节点/代码文件:如引用某个节点中的代码。

  • 数据专辑:引用数据地图中的数据专辑。

  • Rules:临时指定某个或某几个Rules对当前对话生效。

  • 本地文件:上传本地的文档作为背景信息。

步骤3:切换大模型(可选)

Copilot默认使用默认模型,您可以单击对话框底部的image图标,在弹出的菜单中选择其他所支持的大模型。支持的模型如下:

image

步骤4:提交问题并可多轮对话

在对话框中输入您的需求,您可以通过连续追问或补充说明的方式进行多轮对话,逐步修正和细化您的意图,直至 Copilot完全理解并产出您期望的结果。

功能详解

Copilot Chat(Ask模式)支持通过自然语言生成 SQL 与 Python 代码,并提供代码续写、改写、优化、解释、纠错及测试用例生成等功能。核心功能包括:

能力类型

能力说明

示例(您可以这样对Copilot说)

代码生成/SQL生成

根据用户指令生成代码。

“帮我写一个SQL,查询sales表中每个城市销售额最高的前三名产品。”

代码改写/SQL改写

对指定代码按要求进行改写。

“把这段用JOIN实现的SQL改写成使用窗口函数。”

代码纠错/SQL纠错

对指定代码进行错误查找和修正。

“这段SQL执行报错,提示invalid identifier,帮我看看哪里错了。”

生成注释

对指定代码生成注释。

“为这段复杂的SQL逻辑添加中文注释,解释每个CTE的作用。”

代码解释

对指定代码进行解释。

“解释一下这段代码里的PARTITION BYROW_NUMBER()是什么意思。”

代码优化

对指定代码进行优化。

“这段查询很慢,帮我优化一下,看看有没有性能瓶颈。”

代码测试

对指定代码给出测试方案。

“为这段计算用户留存率的SQL设计一些测试用例,需要考虑哪些边界情况?”

代码问答

解答代码的语法、函数等问题。

“MaxComputeexplode函数和lateral view有什么区别?”

Notebook Cell 智能生成

Notebook中智能生成一个代码单元。

“创建一个cell,用pandas读取/data/users.csv文件,并显示前5行。”

快捷找表

输入关键字查找目标表。

“查找所有和‘用户’或‘user’相关的表。”

代码生成/SQL生成

功能说明:通过自然语言交互,根据用户指令生成代码。

操作说明:支持以下两种方式:

  • 在代码编辑器中,右键空白处,选择Copilot > SQL生成,进入Copilot功能界面,然后输入自然语言请求大模型返回所需代码。

  • 在代码编辑器中,单击Data Studio页面顶部导航栏右上角的image进入Copilot Chat(Ask模式)。在对话输入框中,输入/,选择代码生成,然后输入自然语言请求大模型返回所需代码。

    image

代码改写/SQL改写

功能说明:通过自然语言交互,对指定代码进行改写。

操作说明:支持以下两种方式:

  • 在代码编辑器中,选中目标代码,右键空白处,选择Copilot > SQL改写,进入Copilot功能界面,并输入改写要求。

  • 在代码编辑器中,选中目标代码,单击Data Studio页面顶部导航栏右上角的image进入Copilot Chat(Ask模式)。在对话输入框中,输入/,选择代码改写,并输入改写要求,单击发送,等待Copilot返回结果。

    image.png

代码纠错/SQL纠错

功能说明:DataWorks Copilot支持查找指定代码片段的错误并修复。

操作说明:支持以下两种方式:

  • 在代码编辑器中,选中目标代码,右键空白处,选择Copilot > SQL纠错,进入Copilot功能界面。

  • 在代码编辑器中,选中目标代码,单击Data Studio页面顶部导航栏右上角的image,进入Copilot Chat(Ask模式)。在对话输入框中,输入/,选择代码纠错,单击发送,等待Copilot返回结果。

    image.png

生成注释

功能说明:DataWorks Copilot支持对指定的SQL内容生成注释,提升SQL的可读性。

操作说明:支持以下两种方式:

  • 在代码编辑器中,选中目标代码,右键空白处,选择Copilot > 生成注释,进入Copilot功能界面。

  • 在代码编辑器中,选中目标代码,单击Data Studio页面顶部导航栏右上角的image,进入Copilot Chat(Ask模式)。在对话输入框中,输入/,选择生成注释,单击发送,等待Copilot返回结果。

    image.png

代码解释

功能说明:DataWorks Copilot支持对指定的SQL内容进行解释,提升SQL的可读性。

操作说明:在代码编辑器中,选中目标代码,单击Data Studio页面顶部导航栏右上角的image,进入Copilot Chat(Ask模式)。在对话输入框中,输入/选择代码解释,单击发送,等待Copilot返回结果。

image

代码优化

功能说明:DataWorks Copilot支持对选中的SQL代码进行优化,帮助简化代码逻辑,提升代码运行效率,并降低数据库的负载。

操作说明:在代码编辑器中,选中目标代码,单击Data Studio页面顶部导航栏右上角的image,进入Copilot Chat(Ask模式)。在对话输入框中,输入/选择代码优化,单击发送,等待Copilot返回结果。

image

代码测试

功能说明:DataWorks Copilot支持根据选中的SQL代码,给出测试方案,帮助生成测试代码,逐步验证任务代码的每个部分是否按预期工作。

操作说明:单击Data Studio页面顶部导航栏右上角的image,进入Copilot Chat(Ask模式)。在对话输入框中,输入/选择代码测试,然后在编辑窗口选中目标代码,单击发送,等待Copilot返回结果。

image

代码问答

功能说明:DataWorks Copilot支持对提出的SQL语法或者MaxCompute函数给出解释和用法示例,帮助加深对SQL语法及函数的理解。

操作说明:单击Data Studio页面顶部导航栏右上角的image,进入Copilot功能界面(Ask模式)。在对话输入框中,输入指令,单击发送,等待Copilot返回结果。

image

Notebook Cell 智能生成

功能说明:输入关键词,直接生成一个Notebook。

操作说明:单击Data Studio页面顶部导航栏右上角的image,进入Copilot功能界面(Ask模式)。在对话输入框中,输入/选择Notebook Cell 智能生成,然后在编辑窗口输入关键词并发送,Copilot即可生成对应的Notebook节点。

image

快捷找表

功能说明:输入关键词,跨引擎和数据源全量查找目标表。

操作说明:单击Data Studio页面顶部导航栏右上角的image,进入Copilot功能界面(Ask模式)。在对话输入框中,输入/选择快捷找表,然后在编辑窗口输入关键词并发送,Copilot即可返回各绑定计算引擎和数据源中关键词匹配的表。

image