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

VS Code で AI を使用して Jupyter Notebook を編集する

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

新しいノートブックのスキャフォールディング

新しいノートブックの開始を高速化するために、VS Code の AI 機能を使用して新しいノートブックをスキャフォールディングできます。追加したい機能や使用したいライブラリに関する詳細を自然言語で提供します。

AI を使用して新しいノートブックを作成するには、次のいずれかのオプションを選択します

  • チャット入力ボックスに /newNotebook スラッシュ コマンドを入力し、続けて作成するノートブックの詳細を入力します。

    プロンプトの例

    • /newNotebook pandas と seaborn を使用して titanic データセットを読み込み、可視化します。データセットから主要な情報を表示してください。
    • /newNotebook /newNotebook housing.csv ファイル内のデータを分析します
  • エージェント モードに切り替えて、新しいノートブックの作成を依頼する自然言語プロンプトを入力します。

    プロンプトの例

    • #housing.csv からデータを読み込み、価格の分布をプロットするノートブックを作成します
    • #housing.csv からデータを読み込む Jupyter Notebook を作成します。すべてのセルを実行してください。

次のスクリーンショットは、プロンプト #housing.csv からデータを読み込む Jupyter Notebook を作成します (このデータセットは 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) を押すか、セルを右クリックして [コードの生成] > [エディターのインライン チャット] を選択します。これにより、インライン チャット ビューが開き、プロンプトを入力できます。

ヒント

チャット プロンプトでカーネル変数を参照できます。# に続けて変数名を入力すると、それを参照できます。たとえば、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 agent mode to the prompt 'Plot a graph of the price distribution'.

オーバーレイ コントロールを使用して、さまざまな編集提案間を移動し、変更を保持または元に戻すことができることがわかります。

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

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

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

  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'.

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

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

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

  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 を使用してインライン編集を行ったり、チャットでフォローアップのリクエストを送信してノートブックを変更したりできます。

次のステップ