Amazon Bedrock - Converse API 接続からのデータの選択とロード
接続を作成したら、データを選択して Qlik Sense アプリまたはスクリプトにロードできます。データをデータ ロード エディターまたは スクリプト にロードします。
データ ロード エディター または スクリプト では、分析接続との基本的な通信は、少なくとも次のコンポーネントを含むスクリプトとして定型化されます。
-
Amazon Bedrock に送信するリクエスト項目 (データ項目) を含むテーブル (常駐テーブル)。
-
Amazon Bedrock Load ステートメント。これは、接続を通して Amazon Bedrock と通信します。
高度なセットアップでは、リクエスト項目と関連付け項目は、技術的には他の項目を含むテーブルで定義できます。ただし、リクエスト項目と関連付け項目は同じ入力テーブルに含まれている必要があります。これらの項目をデータ モデルの項目にリンクすると、項目値ごとに応答が生成されることに注意することが重要です。
プロンプト エンジニアリング
生成 AI モデルに送信するリクエスト (プロンプトとも呼ばれる) を記述するときは、相互作用するプラットフォームに固有のガイドラインに従ってください。プロンプト エンジニアリングの詳細と、Amazon Bedrock コネクタのプロンプトを構成する方法に関するガイドラインについては、「プロンプト エンジニアリングのコンセプト」を参照してください。
Amazon Bedrock へ送信するデータのテーブルを作成する
まず、モデルにリクエストとして送信するデータを含むテーブルをロードする必要があります。このテーブルは、各セルがモデルによって完成するテキストを示すデータの単一列で構成されている必要があります。関連項目には 2 つ目の追加項目を設けることができますが、これは構成で指定された項目名と一致する必要があります。これは、Amazon Bedrock に送信されない特別項目ですが、インタラクション データをデータ モデルに統合する目的で応答に添付されます。
データ リクエスト ボリュームに関する注意事項
データをロードすると、リクエスト項目のすべての行が Amazon Bedrock に送信されます。サードパーティのプラットフォームとやり取りする前に、リクエストの数、リクエストに含まれるデータの量、コネクタの構成がサードパーティとの財務契約や請求の取り決めにどのような影響を与えるかを必ず認識してください。外部プラットフォームの使用量が増えると、発生するコストも高くなる可能性があります。
Amazon Bedrock Load ステートメントの作成
また、Amazon Bedrock と通信するために、拡張構文を使って Load ステートメントを作成する必要があります。スクリプトのこの部分は、Amazon Bedrock - Converse API 接続を参照し、リクエスト データを送信するために使用するテーブルと項目の名前を指定します (上のセクションを参照)。これにより別のテーブルがロードされますが、このテーブルには、リクエストの各行に対するモデルのレスポンスやその他のデータが含まれます。
スクリプトのこの部分を生成するには、使用する接続の [データの選択] ウィザードを使うことができます。これは、提供するプロパティの名前を含むテンプレート スクリプトを生成します。
データ ロード エディター または スクリプト の [データ ソース] パネルで使用している接続を見つけて、 をクリックします。これにより、 [データを選択] ウィザードが開きます。
[データの選択] ウィザードを使用している際は、2 つのプロパティを提供する必要があります:
-
常駐テーブルの名前。これは、リクエストが Amazon Bedrock に送信されるテーブルです。
-
データ項目の名前。これは、Amazon Bedrock に送信されるリクエスト データを含む項目です。
または、ウィザードを使わずにスクリプト エディターにこれを手動で追加できます。
[スクリプトの挿入] をクリックすると、新しいテーブルがロード スクリプトに追加されます。データをロードし、結果のデータ モデルを検査し、アプリで分析コンテンツを作成するためにデータを使用することができるようになりました。
例
次のロード スクリプトは、Amazon Bedrock に 3 つの完了を要求します。
プロンプトの作成の詳細については、「プロンプト エンジニアリング」を参照してください。
設定方法は次のとおりです。
-
[常駐テーブル] は QuestionsTable です。
-
プロンプトのある [データ 項目] は Question です。
-
[関連付け項目] は RowId です。
-
Amazon Bedrock の LOAD ステートメントは、Converse という名前のテーブルに含まれています。
QuestionsTable:
Load * Inline [
RowId,Question
1,"show me general ways to help boost a company's sales"
2,"what are the core concepts in accounting?"
3,"how large is the sun?"
];
[Converse]:
LOAD
[text],
[stopReason],
[inputTokens],
[outputTokens],
[totalTokens],
[latencyMs],
[RowId]
EXTENSION endpoints.ScriptEval('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_BedRock_Connection"}}', QuestionsTable);