# テキストプロンプトから SQL 変換を生成する

SQL アシスタントを使用すると、実現したい変換を記述するテキスト プロンプトから SQL 変換を生成できます。たとえば、列を選択したり、テーブルを結合したり、レコードをフィルタリングしたりできます。

クエリは、テキスト プロンプトとデータセット情報に基づいて生成 AI を使用し、ターゲット データ プラットフォームの構文を使用して生成されます。

情報メモQlik は生成された出力を制御しません。GenAI の性質上、レビューや編集が行われずにいると、要件を満たす SQL が生成されない場合があります。生成されたクエリは、Qlik 顧客契約の条件に基づいて「コンテンツ」とみなされます。

SQL アシスタントは、管理 アクティビティ センターのテナント管理者によって、テナント レベルで有効にされる必要があります。

* [設定] &gt; [機能コントロール] で、 [Data Integration での生成 AI ベースのアシスタント] を有効にします。

情報メモ

AI SQL アシスタントを使用するには、クロスリージョン推論にオプトインする必要があります。これにより、Qlik Cloud はテナントのリージョン外に推論リクエストを送信できます。

推論処理場所の詳細および最新情報については、「[クロスリージョン推論の有効化](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/Admin/cross-region-data-processing.htm)」を参照してください。

テキスト プロンプトとデータセット情報は、サード パーティの生成 AI (GenAI) モデルに送信され、SQL コードが生成されます。この情報は顧客データとして扱われ、AWS Bedrock 上の Qlik Cloud または GenAI モデルのトレーニングには使用されません。

可用性と共有される情報の詳細については、「[Data Integration での生成 AI ベースのアシスタント](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/Admin/mc-manage-DI-features.htm#Generati)」を参照してください。

Qlik Cloud Government に関する注意

SQL assistant は Qlik Cloud Government では使用できません。

## SQL アシスタントを使用して SQL クエリを生成する

SQL アシスタントは、データの変換タスクの SQL 変換で使用できます。SQL 変換に少なくとも 1 つのデータセットを追加する必要があります。

SQL 変換の詳細については、「[SQL 変換の追加](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Transformation/Adding-SQL-based-tables.htm)」を参照してください。

1. [SQL アシスタント] をクリックします。

   SQL アシスタントはテキスト プロンプトとともに開きます。

2. プロンプトに、実現したい変換の説明を入力します。

   例: 売上高が 500 万を超えるすべての顧客をリストします。各顧客の総売上高と総機会数を含めます。

   ヒント メモプロンプトで列を参照する場合は、選択したデータセットにその列が存在することを確認してください。

3. [Generate] (生成)をクリックします。

4. SQL に表示される生成された SQL クエリを確認します。

   [the 高評価 icon] または [the 低評価 icon] をクリックして結果を評価できます。これにより、Qlik は SQL アシスタントのエクスペリエンスを向上させることができます。

   生成された変換が正確でないと思われる場合、または何かを変更する場合は、[プロンプトの編集] をクリックし、プロンプトに変更を加えて新しいクエリを生成します。

5. 結果の SQL クエリに満足したら、[適用] をクリックして SQL 変換にコピーします。

6. [パラメーターの抽出] をクリックします。

7. [テーブルの説明] をクリックします。

8. 結果のデータセットを結果で確認します。[データの表示] をクリックして、結果のデータサンプルを表示することもできます。

9. 結果に満足したら、[OK] をクリックして SQL 変換を保存し、適用します。

## 共有される情報

次の情報は、クエリを生成するために生成 AI モデルと共有されます。

* テキスト プロンプト

* クエリをターゲット データ プラットフォームに適応させるための追加の生成手順。  
  例: Snowflake 互換の構文で SQL クエリを生成する

* データセット名と説明。

* 列名、データ型、サイズ。

* 主キー列 (一意の識別子)。

* データセット間のリレーションシップ

  例: 「order\_detail」は、「order\_id」キーを使用して「order」に添付されます。

## 使用制限

SQL アシスタントには次の使用制限が適用されます。

* 1 回の呼び出し: 18,000 個のトークン。

  この値を超える場合は、不要なデータセットを削除するか、プロンプトでより簡単な説明を入力してください。

* 1 日あたり (テナントあたり): 100 万個のトークン

* 1 月あたり (テナントあたり): 1,000 万個のトークン

使用量を計算する場合、トークンは 6 文字を表します。GenAI モデルへの呼び出しは、次のもので構成されます。

* SQL クエリを生成するための一般的な手順。この部分は固定サイズです。

* テキスト プロンプト。

* データセット内のメタデータのスキーマ表現。多数のデータセットを選択した場合、この部分は非常に大きくなる可能性があります。

## 制限事項

* 増分 SQL 生成はサポートされていません。詳細については、「[SQL 変換の追加](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Transformation/Adding-SQL-based-tables.htm#top)」を参照してください。

* 現在のテーブル内のデータのみを変換できます。以前のテーブル、変更テーブル、ライブ ビューはサポートされていません。テーブルとビューの詳細については、[クラウド データ ウェアハウスのデータセット アーキテクチャ](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Storage/dataset-tables.htm) を参照してください。

* プラットフォームに依存しない関数は使用されません。例: `$CONCAT)`

## ベスト プラクティス

* 関連する列の名前が異なる場合は、ソース データセットのデータ モデルに必要なすべてのリレーションシップが含まれていることを確認します。一般に、GenAI モデルは、定義されたリレーションシップなしに同じ名前の列を関連付けます。

  例: Orders の ShipVia 列を Shippers の shipper\_id 列に関連付ける必要がある場合、SQL 変換を生成する前にデータ モデルでリレーションシップを作成する必要があります。

* 変換に必要なソース データセットのみを選択します。ソース データが古くなると、不正確な結果や無関係な結果が発生し、トークンの使用量が増える可能性があります。

* 名前がわかりにくい列やデータセットを識別するために、プロンプトに説明を追加できます。

  例: cus\_ct には顧客データセットが含まれます。