OpenAI 分析コネクタ - インタラクティブな例
この例では、事前構成されたアプリを Qlik Cloud にインポートして、OpenAI のデータの使用を制御するためのチャートの数式を作成する方法と、ユーザーがアプリを選択したときに応答を生成する方法を学習できます。
この例は、Qlik Cloud の分析コネクタの基本を理解していることを前提としています。主な概念の詳細については、以前のチュートリアルの例や、その他の OpenAI コネクタのドキュメントを参照してください。
この例では、コネクタの「OpenAI Chat Completions API (GPT-3.5、GPT-4) - 行」構成を使用します。
始める前に:
考慮事項
OpenAI は、API の使用にレート制限を適用します。つまり、使用するコネクタ構成と OpenAI モデルによっては、特定の時間間隔 (例: 1 分) 内に実行できるリクエストの回数が制限される可能性があります。このため、各チャートの数式は使用が必要になるまでコメント アウトされており、一度に評価できるのは 1 つのチャートの数式のみです。詳細については、レート制限に関する OpenAI のドキュメントを参照してください。
準備
この例を完了する前に、次のステップを完了する必要があります。
-
OpenAI プラットフォーム アカウントを作成する
-
OpenAI API キーを取得する
-
分析接続機能を有効にする Qlik Cloud
-
この例では別の接続を作成します (Interactive_Chat_Completions_GPT_3.5_4_Rows)
詳細については、次を参照してください。OpenAI プラットフォームを使い始める および 接続の作成。
アプリのダウンロードとアップロード
ここからサンプル アプリをダウンロードします:
アプリを Analytics アクティビティ センターにアップロードします。
アプリに含まれる内容
このアプリには、さまざまな製品を提供する企業のウェブサイト上の顧客のコメントを含む小さなインライン データセットが含まれています。OpenAI を使用して、アプリで選択した顧客のコメントに基づいてサンプル応答と重大度分析を生成します。
チャートの数式の演習
アプリをアップロードした後、アプリを開き、必要に応じてシートの編集を有効にします。シートをプライベートにする必要がある場合があります。
サンプル シートでは、サーバー サイド エクステンション構文を使用して、チャートの数式で分析コネクタを使用します。チャートの数式は、データ モデルに表示される ComplaintText および ProductDescription という項目を参照します。
これらの演習の目的は、チャートがデータ モデル内の項目を参照するインタラクティブな設定で if ステートメントを使用して、チャートの計算頻度を制御する方法を示すことです。この場合、チャートは 1 つの項目で 1 つの選択が行われた場合にのみ計算されるため、OpenAI から発生するコストを削減できます。
これらの例は、一度に 1 つのチャートの数式のみを評価できるように設定されています。これは、OpenAI サービスにレート制限が適用される可能性があり、同時に複数のチャートの数式を評価できないためです。
例 1
最初のシート Example 1 には、顧客からの一連の苦情の指標を示すチャートの基本レイアウトが含まれています。ソース データには、個々の顧客からの苦情のほか、苦情が寄せられている製品の種類、5 段階評価の重大度スコアなどの軸が含まれます。テーブルから選択された苦情を表示するためのチャート オブジェクトと、カスタマー サービス部門が顧客の問題をどのように解決できるかについての OpenAI の応答を表示するためのチャート オブジェクトがあります。
次の手順を実行します。
-
最初のシート Example 1 を開きます。
-
詳細オプションの編集モードで、OpenAI Possible Starting Points というタイトルの黄色の [テキストと画像] のチャートを選択します。
-
プロパティ パネルの [データ] で、[数式] の をクリックして数式エディタを開きます。
-
数式の先頭から // を削除します。これにより数式がコメント解除され、数式を評価できるようになります。式は次のようになります。
if( count(distinct [ComplaintText]) = 1, endpoints.ScriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"Interactive_Chat_Completions_GPT_3.5_4_Rows","column":"choices.message.content"}}', 'draft generic starting points for ways a customer can fix an issue reported with '& [ProductDescription]))
-
編集モードを終了します。
-
Complaints - Reference Table というタイトルのテーブルで、ComplaintText 列の単一のセル値を選択します。
OpenAI チャートは、選択した苦情に対する応答を計算します。
選択をクリアして、別の苦情を選択してください。チャートは、新しい選択に対する OpenAI の応答で更新されます。
例 2
2 番目のシートの Example 2 には、Example 1 と同様のチャートが含まれています。OpenAI オブジェクトは、ユーザーが選択したコメントの一般的な印象分析を提供するように構成されています。これにより、苦情の深刻さに関する一般的な詳細が提供され、フィードバックの優先順位や対処の開始方法を特定するのに役立つ場合があります。
次の手順を実行します。
-
まだ追加していない場合は、Example 1 シートの OpenAI オブジェクトの数式に // を追加してください。
-
2 番目のシートの Example 2 を開きます。
-
詳細オプションの編集モードで、OpenAI Initial Impression というタイトルの黄色の [テキストと画像] のチャートを選択します。
-
プロパティ パネルの [データ] で、[数式] の をクリックして数式エディタを開きます。
-
数式の先頭から // を削除します。これにより数式がコメント解除され、数式を評価できるようになります。式は次のようになります。
if( count(distinct [ComplaintText]) = 1, endpoints.ScriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"Interactive_Chat_Completions_GPT_3.5_4_Rows","column":"choices.message.content"}}', 'provide a short description of how severe the following customer complaint is: ' & [ComplaintText]))
-
編集モードを終了します。
-
Complaints - Reference Table というタイトルのテーブルで、ComplaintText 列の単一のセル値を選択します。
OpenAI チャートは、選択した苦情に対する応答を計算します。
選択をクリアして、別の苦情を選択してください。チャートは、新しい選択に対する OpenAI の応答で更新されます。