VS Codeのエージェントモードを拡張するには、を試してください!

VS CodeでJupyterノートブックをAIで編集する

Visual Studio Codeは、Jupyter ノートブックをネイティブで、またPython コード ファイルを介して操作することをサポートしています。VS Code の AI 機能は、ノートブックの作成と編集、およびデータの分析と視覚化に役立ちます。この記事では、VS Code の AI 機能を使用して Jupyter ノートブックを操作する方法について説明します。

新しいノートブックをスキャフォールドする

新しいノートブックでの作業を加速するために、VS Code の AI 機能を使用して新しいノートブックをスキャフォールドできます。追加したい機能や使用したいライブラリの詳細を指定できます。

AI を使用して新しいノートブックを作成するには、チャット モードを選択し、チャット ビューにプロンプトを入力します。

チャットの質問モードでは、チャット入力フィールドで/newNotebookコマンドを使用して、新しいノートブックをスキャフォールドしたいことを示します。

エージェント モードは、より自律的なエクスペリエンスを提供し、ノートブックに変更を加えたり、セルを実行したり、潜在的な実行時問題を監視および解決したりできます。

プロンプトの例

  • #housing.csv からデータを読み込む Jupyter ノートブックを作成する
  • #housing.csv からデータを読み込む Jupyter ノートブックを作成し、データをクリーンアップする手順を追加する
  • #housing.csv からデータを読み込み、価格の分布をプロットするノートブックを作成する
  • /newNotebook pandasとseabornを使用してtitanicデータセットを読み込み、視覚化します。データセットの主要な情報を表示してください。 (質問モード)
  • #housing.csv からデータを読み込む Jupyter ノートブックを作成します。すべてのセルを実行してください。 (エージェント モード)

次のスクリーンショットは、エージェント モードがプロンプト「#housing.csv からデータを読み込む Jupyter ノートブックを作成する」に対して出力した結果を示しています(このデータセットはKaggleから入手できます)。

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

新しい.ipynbファイルがワークスペースに作成され、CSV ファイルを読み込み、データの最初の数行を表示するためのMarkdownおよびコードセルが含まれていることに注意してください。

これで、ノートブックを手動でさらに編集したり、AI を使用してインライン編集を行ったり、フォローアップのチャットリクエストを送信してノートブックを変更したりできます。

ノートブックでインライン編集を行う

すでにノートブックがあり、セル内でインライン変更を行いたい場合は、コードファイルで行うようにインラインチャットを使用できます。

セルでインライン編集を行うには、⌘I (Windows、Linux の場合はCtrl+I) を押すか、セルを右クリックしてCopilot > Editor Inline Chat を選択します。これによりインラインチャットビューが開き、プロンプトを入力できます。

ヒント

チャットプロンプトでカーネル変数を参照できます。#の後に変数名を入力すると参照できます。たとえば、dfという名前の変数がある場合、チャットプロンプトで#dfと入力して参照できます。

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

応答が生成されると、ノートブックセル内のコードが更新されることに注意してください。変更を承認したり、セル変更を承認して実行したりできます。

AI で新しいセルを生成するには、ノートブック ビューで生成ボタンを選択するか、セルにフォーカスせずに⌘I (Windows、Linux の場合はCtrl+I) を押して、新しいセルのインライン チャット ビューを開きます。

複数のセルにわたって編集を行う

複数のセルにわたってより大きな編集を行うには、編集モードまたはエージェント モードのチャット インターフェースを使用できます。

プロンプトの例

  • 価格分布のグラフをプロットする
  • データを視覚化および処理する前に、データがクリーンアップされていることを確認してください
  • データセット内の異なる特徴間の相関関係を表示する
  • データプロットにseabornの代わりにmatplotlibを使用する
  • データセット情報の表示を削除する

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

オーバーレイコントロールを使用して、異なる編集候補間を移動したり、変更を保持したり、元に戻したりできることに注意してください。

ノートブックの内容について質問する

チャットインターフェースを使用して、ノートブックの内容について質問できます。これは、コード、データ、または視覚化の説明を得るのに役立ちます。チャットリクエストに、セルの出力、グラフ、エラーなどの追加のコンテキストを含めることができます。

次の例は、ノートブック内の視覚化について質問する方法を示しています。

  1. チャットで質問モードに切り替えます。

  2. グラフの横にある...を選択し、Add Cell Output to Chat を選択して、チャートをチャットリクエストのコンテキストとして追加します。

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

  3. チャット入力フィールドにプロンプト「このチャートを説明してください」を入力します。

    チャートの詳細な説明が得られることに注意してください。

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

データ分析と視覚化を実行する

チャットでエージェント モードを使用すると、データセットの完全なデータ分析および視覚化ノートブックを作成できます。エージェント モードはデータセットを分析し、新しいノートブックをスキャフォールドし、データ分析を実行するコードを実装し、セルを実行してデータを処理および視覚化します。必要に応じて、エージェント モードは関連するツールとターミナル コマンドを呼び出してタスクを完了します。

たとえば、住宅データセットのデータ分析を実行するには

  1. チャットでエージェント モードを開きます。

  2. チャット入力フィールドに次のプロンプトを入力します: #housing.csv のデータのデータ分析を実行してください

    エージェント モードがさまざまなタスクを反復処理していることに注意してください。必要に応じて、ツールとコマンドの呼び出しを承認してください。

  3. その結果、データクリーンアップ、データ視覚化、統計分析を含む、データセットの完全なデータ分析が行われた新しいノートブックが作成されます。

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

これで、ノートブックを手動でさらに編集したり、AI を使用してインライン編集を行ったり、フォローアップのチャットリクエストを送信してノートブックを変更したりできます。

次のステップ