从文本提示生成 SQL 转换
您可以使用 SQL 助手从文本提示生成 SQL 转换,在文本提示中描述要实现的转换。例如,您可以选择列、联接表或筛选记录。
查询是使用基于文本提示和数据集信息的生成式 AI 生成的,并使用目标数据平台的语法。
文本提示和数据集信息被发送到第三方生成式 AI (GenAI) 模型以生成 SQL 代码。这些信息被视为客户数据,不会用于在 AWS Bedrock 上训练 Qlik Cloud 或 GenAI 模型。有关更多信息,请参阅共享的信息。
可用性
GenAI 模型托管在 AWS Bedrock Anthropic 上,与租户 Qlik Cloud 位于同一地区。以下 Qlik 地区的租户可以使用 SQL 助手:
-
美国东部(北弗吉尼亚州)
-
亚太(悉尼)
-
欧洲(法兰克福)
-
欧洲(爱尔兰)
SQL 助手必须由 管理 中的租户管理员在租户级别启用。
-
在设置 > 功能控制中启用基于生成式 AI 的 SQL 助手。
SQL 助手在 Qlik Cloud 政府 中不可用。
使用 SQL 助手生成 SQL 查询
SQL 助手可用于转换数据任务中的 SQL 转换。您必须至少向 SQL 转换添加一个数据集。
有关 SQL 转换的更多信息,请参阅添加 SQL 转换。
-
单击 SQL 助手。
SQL 助手通过文本提示打开。
-
在提示中键入要实现的转换的描述。
示例:列出销售额超过 500 万的所有客户。包括每个客户的总销售额和总机会。
提示注释在提示中引用列时,请确保它们存在于所选数据集中。 -
单击生成。
-
查看在 SQL 中显示的生成的 SQL 查询。
您可以通过单击 或 对结果进行评分。这将有助于 Qlik 提升 SQL 助手的使用体验。
如果生成的转换似乎不准确,或者您想更改某些内容,请单击编辑提示,对提示进行更改并生成新查询。
-
当您对生成的 SQL 查询感到满意时,单击应用可复制到 SQL 转换。
-
单击提取参数。
-
单击描述表格。
-
在结果中检查所得数据集。您还可以单击查看数据以查看结果的数据示例。
-
如果您对结果满意,请单击“确定”保存并应用 SQL 转换。
共享的信息
以下信息与生成式 AI 模型共享以生成查询。
-
文本提示
-
用于使查询适应目标数据平台的其他生成指令。
示例:以兼容 Snowflake 的语法生成 SQL 查询 -
数据集名称和描述。
-
列名称、数据类型和大小。
-
主键列(唯一标识符)。
-
数据集之间的关系
示例:使用“order_id”键将“order_detail”附加到“order”。
使用限制
以下使用限制适用于 SQL 助手。
-
单次呼叫:18,000 个令牌。
如果超过此值,请删除不需要的数据集,或在提示中提供不太复杂的描述。
-
每日(每个租户):1 百万个令牌
-
每月(每个租户):1 千万个令牌
在计算使用量时,一个令牌代表 6 个字符。对 GenAI 模型的调用包括:
-
生成 SQL 查询的一般说明。此部分为固定大小。
-
文本提示。
-
数据集中元数据的模式表示。如果你选择了大量的数据集,这部分可能会非常大。
限制
-
不支持增量 SQL 生成。有关更多信息,请参阅添加 SQL 转换。
-
您只能转换当前表中的数据。不支持以前的表、更改表和实时视图。有关表格和视图的详细信息,请参见云数据仓库中的数据集架构。
-
不使用独立于平台的功能,例如 $CONCAT)。
最佳实践
-
当相关列具有不同名称时,请检查源数据集中的数据模型是否包括所有必需的关系。一般来说,GenAI 模型将关联同名列,但没有定义关系。
示例:当订单中的 ShipVia 列应与发货人中的 shipper_id 列相关时,您应该在生成 SQL 转换之前在数据模型中创建一个关系。
-
仅选择转换所需的源数据集。过时的源数据可能会导致不正确或不相关的结果,并增加令牌的使用量。
-
您可以在提示中添加描述,以标识名称不明显的列或数据集。
示例:cus_ct 包含客户数据集。