17.7.3 APEXアシスタントの使用

アプリケーション・ビルダー内のコード・エディタで統合AIチャット機能(APEXアシスタントと呼ばれる)を使用します。

ノート:

APEXアシスタントを使用する前に、生成AIサービスを作成し、「アプリケーション・ビルダーで使用」設定を有効にする必要があります。「生成AIサービスの管理」を参照してください。

APEXアシスタントによって、SQL問合せの作成、コードのデバッグなどを支援するためにすべてのAPEXコード・エディタにAIチャット機能が追加されます。反復的なチャット・エクスペリエンスを有効にするために、チャット・ウィジェットは、「チャットのクリア」ボタンが押されるまでチャットのコンテキストを記憶します。たとえば、次のSQLクエリー・ビルダーのユースケースでは、開発者が'問合せに従業員の部門情報を追加'することを求めるとします。チャットのコンテキストを考慮して、生成AIサービスはこの情報を使用し、開発者から求められた必要な情報を含むように既存の問合せを拡張します。

注意:

AIによって生成されたコードには、エラーやセキュリティ・リスクが含まれている可能性があります。使用する前に、常にすべてのコードを確認および検証することをお薦めします。

APEXアシスタントを使用するには:

  1. 生成AIサービスを作成し、「アプリケーション・ビルダーで使用」設定を有効にします。「生成AIサービスの管理」を参照してください。
  2. コード・エディタにアクセスします。次の例は、ページ・デザイナのコード・エディタを示しています。
  3. メニュー・バーの「APEXアシスタント」をクリックします。


    APEXアシスタントに初めてアクセスしたときには、同意ダイアログが表示されます。ダイアログを慎重に確認し、「同意」をクリックして続行します。APEXアシスタントが右側のペインに表示されます。



    APEXアシスタント・メニューには2つのオプションがあります:

    • クエリー・ビルダー - クエリー・ビルダーを使用して、単純な問合せを取得します。

      「クエリー・ビルダー」モードでは、AIは、すべての質問がデータベース内の顧客スキーマのコンテキストにあると想定します。たとえば、データベースに存在しない表についてAIがSQLを作成するというリクエストの場合、APEXアシスタントのレスポンスはあまり役に立ちません。

    • 一般的なサポート - 一般的な会話、技術的な質問("これを説明してください"や"このコードを改良してください"など)には「一般的なサポート」を使用します。「一般的なサポート」モードでは、APEXアシスタントによって、「使用の選択」「向上の選択」「説明の選択」といったデフォルト・オプションが表示されます。

  4. 「クエリー・ビルダー」の例: 部門別の平均給与を表示します。
    1. メニューから、「クエリー・ビルダー」を選択します(まだ選択していない場合)。
    2. コード・エディタで、問合せを選択し、「使用の選択」をクリックします。
    3. 「ここにメッセージを入力します」に、show average salary of employee by department nameと入力し、「メッセージの送信」をクリックします。
    4. APEXアシスタントは、次の例に示すような問合せで応答します。
    5. 「コピー」または「挿入」をクリックして、コード・エディタにレスポンスをコピーまたは挿入します。
    6. チャット・ウィンドウをクリアするには、「チャットのクリア」をクリックします。

    ヒント:

    問合せでエラーがスローされた場合、APEXアシスタントは「一般的なサポート」モードに切り替わります。「この修正のヘルプ」をクリックします。
  5. 「一般的なサポート」の例: 選択した問合せの説明:
    1. メニューから、「一般的なサポート」を選択します。

      APEXアシスタントに3つのオプションが表示されます:

      • 使用の選択
      • 向上の選択
      • 説明の選択
    2. コード・エディタで、問合せを選択し、「説明の選択」をクリックします。

      APEXアシスタントが応答して、問合せについて説明します。



    3. チャット・ウィンドウをクリアするには、「チャットのクリア」をクリックします。
  6. 「一般的なサポート」の例: SQL問合せのエラーに関するヘルプ:

    問合せでエラーがスローされた場合、APEXアシスタントは問題のトラブルシューティングに役立ちます。

    たとえば、次のような問合せがあり、表名の末尾にある"s"を誤って削除したとします。

    select rowid,
           ID,
           PROJECT,
           TASK_NAME,
           START_DATE,
           END_DATE,
           STATUS,
           ASSIGNED_TO,
           COST,
           BUDGET
    from EBA_DEMO_IR_PROJECT
    where (nvl(:P3_STATUS,'0') = '0' or :P3_STATUS = status)

    表名はEBA_DEMO_IR_PROJECTSである必要があるため、問合せを検証した場合または実行しようとした場合にエラーがスローされます:

    「ORA-20999: SQL問合せの解析に失敗しました。ORA-06550: 行11、列24: ORA-00942: 表またはビューが存在しません。」

    1. エラーで、「この修正のヘルプ」をクリックします。

      APEXアシスタントはコードとエラーを確認し、表名のスペルが正しくない可能性があることを提案します。



    2. チャット・ウィンドウをクリアするには、「チャットのクリア」をクリックします。