参加你附近的 ,了解 VS Code 中的 AI 辅助开发。

在 VS Code 中使用 AI 编辑 Jupyter Notebook

Visual Studio Code 支持原生使用 Jupyter Notebook,以及通过 Python 代码文件。VS Code 中的 AI 功能可以帮助你创建和编辑 Notebook,以及分析和可视化数据。在本文中,你将学习如何使用 VS Code 中的 AI 功能来处理 Jupyter Notebook。

搭建新的 Notebook

为了加快新 Notebook 的上手速度,你可以使用 VS Code 中的 AI 功能来搭建一个新的 Notebook。使用自然语言提供有关你想要添加的功能和你想要使用的库的详细信息。

要使用 AI 创建新的 Notebook,请选择以下任一选项

  • 在聊天输入框中输入 /newNotebook 斜杠命令,然后输入要创建的 Notebook 的详细信息。

    示例提示

    • /newNotebook 使用 pandas 和 seaborn 读取并可视化泰坦尼克号数据集。显示数据集中的关键信息。
    • /newNotebook /newNotebook 分析 housing.csv 文件中的数据
  • 切换到代理模式,然后输入一个自然语言提示,要求创建一个新的 Notebook。

    示例提示

    • 创建一个 Notebook,从 #housing.csv 中读取数据并绘制价格分布图
    • 创建一个 Jupyter Notebook,从 #housing.csv 读取数据。运行所有单元格。

以下截图显示了代理模式对提示“创建一个 Jupyter Notebook,从 #housing.csv 读取数据”的输出(你可以从 Kaggle 获取此数据集)

Screenshot that shows a new notebook created by agent mode that reads the 'housing.csv' file in the workspace.

请注意,创建了一个新的 .ipynb 文件,其中包含用于读取 CSV 文件和显示数据前几行的 Markdown 和代码单元格。

现在,你可以手动进一步编辑 Notebook,或使用 AI 进行内联编辑或发送后续聊天请求来修改 Notebook。

在 Notebook 单元格中进行内联编辑

如果你已经有一个 Notebook 并希望在单元格中进行一些内联更改,你可以使用内联聊天,就像在代码文件中一样。

要在单元格中进行内联编辑,请按 ⌘I (Windows, Linux Ctrl+I)。这将打开内联聊天视图,你可以在其中输入你的提示。

提示

你可以在聊天提示中引用内核变量。输入 # 后跟变量名来引用它。例如,如果你有一个名为 df 的变量,你可以在聊天提示中输入 #df 来引用它。

Screenshot that shows the inline chat view in a notebook cell.

当生成响应时,请注意代码在 Notebook 单元格中已更新。你可以**接受**更改,并决定**接受并运行**单元格的更改。

要使用 AI 生成新单元格,请在 Notebook 视图中选择**生成**按钮,或者在不聚焦任何单元格的情况下按 ⌘I (Windows, Linux Ctrl+I) 为新单元格打开内联聊天视图。

跨多个单元格进行编辑

要进行跨多个单元格的较大编辑,你可以在聊天视图中切换到代理模式。提供一个提示来请求对 Notebook 进行更改,代理模式将迭代完成任务以实现这些更改。

示例提示

  • 绘制价格分布图
  • 在可视化和处理数据之前,请确保数据已经清理
  • 显示数据集中不同特征之间的相关性
  • 使用 matplotlib 而不是 seaborn 来绘制数据
  • 移除数据集信息的显示

Screenshot that shows the response from agent mode to the prompt 'Plot a graph of the price distribution'.

请注意,你可以使用覆盖控件在不同的编辑建议之间导航,并保留或撤销更改。

询问有关 Notebook 内容的问题

你可以使用聊天界面询问有关 Notebook 内容的问题。这对于获取代码、数据或可视化的解释很有用。你可以在聊天请求中添加额外的上下文,例如单元格输出、图表或错误。

以下示例展示了如何询问有关 Notebook 中可视化的问题。

  1. 选择图表旁边的 ...,然后选择**将单元格输出添加到聊天**,将图表作为上下文添加到你的聊天请求中。

    Screenshot that shows the context menu for a graph in a notebook cell.

  2. 在聊天输入字段中输入提示“解释此图表”。

    请注意,你会得到关于图表的详细解释。

    Screenshot that shows the response from chat to the prompt 'Explain this chart'.

执行数据分析和可视化

你可以通过在聊天中使用代理模式,对数据集进行完整的数据分析和可视化 Notebook。代理模式会分析数据集,然后搭建一个新的 Notebook,实现用于执行数据分析的代码,并运行单元格来处理和可视化数据。根据需要,代理模式会调用相关的工具和终端命令来完成其任务。

例如,对住房数据集进行数据分析

  1. 在聊天中打开代理模式

  2. 在聊天输入字段中输入以下提示:对 #housing.csv 中的数据进行数据分析

    请注意,代理模式会迭代完成不同的任务。需要时,请批准工具和命令的调用。

  3. 结果是一个新的 Notebook,其中包含对数据集的完整数据分析,包括数据清理、数据可视化和统计分析。

    Screenshot that shows the response from agent mode to the prompt 'Perform data analysis of the data in housing.csv'.

现在,你可以手动进一步编辑 Notebook,或使用 AI 进行内联编辑或发送后续聊天请求来修改 Notebook。

后续步骤