Smart CodeInsight

提供: RAD Studio
移動先: 案内検索

Smart CodeInsight はオープン アーキテクチャであり、好きな AI エンジンを使用した作業を可能にします。RAD Studio はまた、次の実装済み機能に加え、カスタマイズ可能な UI インテグレーションも提供しています。

  • コア AI エンジンと ToolsAPI
  • IDE インテグレーション:
  • オンライン/オフライン LLM プロバイダのサポート:
    • OpenAI、Gemini、Claude(オンライン)
    • Ollama(オフライン)
      ヒント: Ollama は、MIT ライセンスに基づいてオープンソースとして配布されます。Ollama と共に使用する可能性のある個々のモデルは、それぞれ独自のライセンスが適用されます。Codellama の利用規約はこのページでご確認いただけます。
    • style="list-style: none; display: inline"
      
      メモ: ToolsAPI を愛用されている方のために、RAD Studio では独自の API プラグインを作成することができます。詳細については、「AI プラグインの作成と実装」ページを参照してください。
警告: RAD Studio はこれらのエンジンへのアクセスを提供していません。これらの AI サービスを利用するには、特定のベンダーの利用規約に同意し、RAD Studio の設定に入力するための API キーを取得し、AI 企業に所定の料金を支払う必要があります。唯一の例外は Ollama です。Ollama はサービス料金なしでオフラインで使用でき、ローカルまたは任意のサーバーにインストールできます。

構成オプション

RAD Studio では、拡張設定と完全なプライバシ制御を複数の方法で提供しており、次のことが可能です:

  • AI 機能全体を、1つのグローバル設定でオフにする
  • 4 つのエンジンそれぞれを有効/無効にする
  • UI 要素(チャット/エディタのメニュー)のデフォルト エンジンを選ぶ

これらすべての機能は、IDE オプションで設定できます。このトピックの詳細については、ページ「Smart CodeInsight の設定」を参照してください。

  • システムのセキュリティを確保するため、次の対策も実施されています:
  • API キーの暗号化形式での保存
  • ローカル、オフライン エンジンを使用するためのオプションの提供

エディタ メニューのコマンド

エディタ メニューでは、エディタ自身の中で選択されたコードに対して、いくつか事前設定された操作が用意されています。アプリケーションのソース コードの一部を分析および最適化することを目的としています。

出力として、LLM エンジンは、分析されたコードの後のコメントとして、結果をエディタ ウィンドウに返します。(★add a screenshot)

利用可能なコマンド

Smart CodeInsight で利用可能なコマンドを確認しましょう:

450x450px

  • AI チャットチャット ビューを開きます。
  • [バグの検知]: 選択されたコード内で潜在的なバグを検索します。
  • [コードの説明]: 選択されたコードを説明します。
  • [コメントの追加]: 選択されたコードにコメントを追加します。
  • [コードの補完]: 選択されたコードを補完します。
  • [コードの最適化]: 選択されたコードを最適化します。
  • [ユニット テストの追加]:選択されたコードにユニット テストを追加します。
  • [アセンブリに変換]: 選択されたコードをアセンブリ コードに変換します。
  • [Delphi に変換]: 選択されたコードを Delphi コードに変換します(C++ またはアセンブリから)。
  • [C++Builder に変換]: 選択されたコードを C++Builder コードに変換します。
  • [ヘッダーの検索(AI)](C++)または[ユニットの検索](Delphi): 選択されたコードのクラスまたはデータ型の uses 文に、不足しているユニットを追加します。
  • [エディタに結果を表示]: エディタに出力を送ります。
  • [チャット ウィンドウに結果を表示]' ': 出力をマークダウン形式で AI チャット ウィンドウに送信します。

AI チャット ウィンドウ

AI チャット ウィンドウは、IDE のドッキング可能フォームで、LLM チャット ウィンドウのように動作します。 リクエストを入力し、エンジン(デフォルトのエンジンを使用する場合を除く)を選択して、応答を待つことができます。簡単な例を以下に示します:

350px

このチャットウィンドウには、シンプルなコマンドラインのように動作する質問メモがあります。使用可能なコマンドは以下のとおりです:

  • chatgpt> + Enter: アクティブ AI エンジンを ChatGpt に(有効な場合)切り替えます
  • gemini> + Enter: アクティブ AI エンジンを Gemini に(有効な場合)切り替えます
  • claude> + Enter: アクティブ AI エンジンを Claude に(有効な場合)切り替えます
  • ollama> + Enter: アクティブ AI エンジンを Ollama に(有効な場合)切り替えます
  • clear> + Enter: 質問メモをクリアします。
  • stop> + Enter: 停止ボタンをクリックしたときと同じように、回答の生成を停止します。
  • Ctrl + Enter: 開始ボタンをクリックしたときと同じように、回答の生成を開始します。

標準クエリを実行するだけでなく、コード ウィンドウから特定のコード スニペットを選択して、次のコマンドのいずれかを使用して、そのコード スニペットについて、新しい質問をしたり、説明を要求したりすることができます。

450px
  • $COL: アクティブなコード エディタ ウィンドウ内のカーソルが位置する列番号に展開されます。
  • $ROW: エディタ ウィンドウ内のカーソルが位置する行番号に展開されます。
  • $CURTOKEN: アクティブなコード エディタ ウィンドウ内のカーソルが位置する単語に展開されます。 これは、カーソルの位置にある変数、メソッド、識別子を参照する際に便利です。
  • $EDNAME: アクティブなコード エディタ ウィンドウ完全ファイル名に展開されます。これは、現在のパス ファイルの名前(パス付)が必要な場合に便利です。
  • $SELECTION: アクティブなエディタで選択されたコード テキストを説明します。
  • $UNIT: ユニットのコンテンツ全体のコードについて説明します。

さらなる情報と例については、「転送マクロ」を参照してください。

関連項目