に参加して、VS Code の AI 支援開発について学びましょう。

C# Dev Kit 用 IntelliCode

Visual Studio Code の C# Dev Kit 拡張機能を使用しているユーザーは、IntelliCode サポートを提供する C# Dev Kit 用 IntelliCode 拡張機能を利用できます。C# Dev Kit ユーザーは、コードの行全体にわたる予測、および IntelliSense リストでのメソッドとプロパティのランク付けを利用できます。

行全体の候補

シナリオ 1: 灰色のテキストが表示されている場合、Tab キーを押して予測 (候補) を受け入れます。

Press Tab to accept prediction

シナリオ 2: IntelliSense リストとともに灰色のテキストが表示されている場合、Tab キーを押して IntelliSense リストの選択を受け入れ、さらに Tab キーをもう一度押して、残りの複数トークン予測を受け入れます。このシナリオでは、IntelliSense リストの選択を使用して、IntelliCode が提供する複数トークン予測を制御できます。

Use list selection to steer multi-choice prediction

さらに、モデルが文字列の存在を提案しているが、その文字列の提案がない場合、Tab キーを押すと、カーソルが空の文字列内に配置され、コード行の入力をより簡単に行うことができます。

このモデルは、これまでに入力したコードの豊富な知識に基づいて、次に入力する内容を予測します。これには、以下のものが含まれます。

  • 変数名と位置
  • 使用しているライブラリ
  • 近くのコードの関数
  • IntelliSense リスト

星付きの候補

この拡張機能は、コードコンテキストに推奨される補完項目を補完リストの先頭に表示することで、AI アシスト IntelliSense を提供します。

Ranks methods and properties in the IntelliSense list with stars

オーバーロードに関しては、アルファベット順のメンバーリストを循環するのに時間を費やすのではなく、IntelliCode が最も関連性の高いものを最初に表示します。この拡張機能は、既知のメソッドをランク付けするだけでなく、そのディープラーニングモデルは、独自のコードに特有のメソッドもランク付けします。

IntelliSense リストで AI アシストランク付けを見るには、まずソリューションの一部である C# ファイルを開く必要があります。ソリューションの一部ではない C# ファイルでは、この機能は利用できません。

セキュリティとプライバシー

すべてのコードはローカルに保持され、モデルはコンピューター上で直接実行されるため、カスタムモデルトレーニングのためにコードをリモートサーバーに送信する必要はありません。これは、メモリフットプリントを劇的に削減し、推論速度を向上させた当社の機械学習システム設計によって可能になりました。

IntelliCode 機能のモデルはローカルマシンで実行されるため、オフライン環境やエアギャップ環境でも IntelliCode サポートを利用できます。

他の言語のサポートを取得する

VS Code で Python、JavaScript、TypeScript の IntelliCode 行全体のオートコンプリートを取得するには、汎用 IntelliCode 拡張機能をインストールします。この汎用拡張機能は、行全体のオートコンプリートがサポートされている言語に加えて、Python と SQL の IntelliSense リストのメソッドとプロパティを星でランク付けします。

前提条件

この拡張機能を使用するには、C# Dev Kit と .NET 6 の両方がマシンにインストールされ、有効になっている必要があります。この拡張機能は、次のプラットフォームとオペレーティングシステムをサポートしています。

  • Windows: x64 および ARM
    • Windows 11 22H2 で x64 および ARM をテスト済み
  • macOS: x64 および ARM。
    • OS X Monterey v12.6.5 で x64 をテスト済み
    • OS X v PENDING で ARM をテスト済み
  • Linux: x64 および ARM。
    • Ubuntu 22.04 で x64 をテスト済み

フィードバックと問題の報告方法

VS Code 拡張機能の IntelliCode に関する問題は、GitHub フィードバックリポジトリ に提出できます。

© . This site is unofficial and not affiliated with Microsoft.