Conversational Analytics API 在数据源数量、可视化图表样式和数据集大小方面存在以下已知限制。
数据源限制
本部分介绍了在连接到 Looker 和数据库来源(AlloyDB for PostgreSQL、Cloud SQL for MySQL、Cloud SQL for PostgreSQL 和 Spanner)并查询这些来源时,对话式分析 API 的限制和行为。
Looker 数据源限制
连接到 Looker 数据源时,请注意以下事项:
- 您可以在对话中查询任何包含的探索。
- 代理一次只能查询一个探索。无法同时对多个探索进行查询。
- 在同一对话中,代理可以查询多个探索。
在包含多部分问题的对话中,或者在包含后续问题的对话中,代理可以在一次对话中查询多个探索。
例如:某用户连接了两个探索,一个名为
cat-explore,另一个名为dog-explore。用户输入问题“猫的数量多还是狗的数量多?”这样会创建两个查询:一个用于统计cat-explore中的猫数,另一个用于统计dog-explore中的狗数。在完成两次查询后,代理会比较两次查询的结果。QueryData方法不支持 BigQuery 或 Looker 数据源。
数据库数据源限制
连接到 AlloyDB、Cloud SQL for MySQL、Cloud SQL for PostgreSQL 或 Spanner 数据源时,请注意以下事项:
数据代理使用与数据代理互动的用户的凭据来访问数据。如果用户访问的共享数据代理所配置的表是用户无权访问的,则该数据代理无法访问这些表。
数据代理的表格选择功能可指导代理重点关注哪些表格。选择表格不是安全设置。即使您指定数据源只能从特定表(例如
table1和table2)提取信息,如果运行查询的用户拥有查看同一数据库中table3内容的常规权限,系统仍可能会返回来自意外表 (table3) 的数据。
可视化图表限制
支持以下可视化图表类型:
- 区
- 条形图
- 地理形状
- 热图
- 折线图(时序)
- 饼图
- 散点图
数据处理限制
- 对于 Looker 数据源,Conversational Analytics API 每次查询最多可返回 5,000 行。
- 对于 BigQuery 数据源,Conversational Analytics API 为处理的数据查询设置了 500 GB 字节的限额。
- 对于 AlloyDB、Cloud SQL for MySQL、Cloud SQL for PostgreSQL 和 Spanner 数据源,Conversational Analytics API 每次查询最多可返回 1,000 行。
- Conversational Analytics API 基于 Python 的推理和内容检索功能可处理最多
O(100k)行的时间复杂度。 - 查询大量数据可能会导致数据代理的推理准确性降低。
- Conversational Analytics API 的输出token长度上限为 8,192 个token。查询大量数据可能会返回
MAX_TOKENS错误。 - 系统消息的
DataResult字段中返回的数据受大小限制。数据结果会被截断为最多 3,000,000 字节。此截断过程会在大小限制范围内尽可能保留完整的行。
查询限制
- 不支持 BigQuery 的灵活列名称功能。
- 支持 BigQuery 中的结构体,但相关操作某些情况下可能会失败。
- 对于 Looker 数据源,该 API 无法设置使用 LookML
parameter参数定义的只有过滤条件的字段的值。 - 使用 Conversational Analytics API 通过数据洞察 Pro 连接到专用 IP Looker (Google Cloud Core) 实例时,如果该 Looker (Google Cloud Core) 实例位于 VPC Service Controls 边界内,则该配置不受支持,并且不符合 VPC Service Controls 合规性要求。
- 对于连接到具有专用 IP 配置的 Looker (Google Cloud Core) 实例的应用场景,Conversational Analytics API 不支持配置为使用 CMEK 或 VPC Service Controls 的 Looker (Google Cloud Core) 实例。
- 对于 Conversational Analytics API 资源,CMEK 仅支持 Looker 数据源。
- Conversational Analytics API 无法很好地处理停用了报告中的字段修改功能的 数据洞察 数据源,因为这样设置会阻止 Conversational Analytics 创建计算字段。
如果在查询验证或执行期间发生故障,对话式分析 API 可能会通过生成更正后的查询来自动重试操作。系统将尝试执行此类重试操作,但每个请求最多重试三次。
如果查询因权限或身份验证问题而失败,Conversational Analytics API 不会重试该查询。重试是不确定的;如果错误消息表明查询无法恢复,即使错误次数仍低于每个请求 3 次的限制,Conversational Analytics API 也不会再次尝试该查询。
配额限制
- Conversational Analytics API 对总体请求(包括聊天请求和非聊天请求)有以下限制:
- 每个项目的最大速率为每秒 10 次查询 (QPS),即每分钟 600 次查询 (QPM)。
- 每个项目每个用户的最大速率为 10 QPS,即 600 QPM。
- 不过,聊天请求的限制更为严格:
- 每个项目的速率上限为 30 QPM。
- 每位用户每个项目的速率上限为每分钟 30 次查询。
- 每次聊天请求会消耗 8 个配额单位,而不是标准的 1 个单位。因此, Google Cloud 控制台的配额页面上显示的限制是实际请求限制的 8 倍。例如,240 个单位的限额表示 30 个聊天请求。
- 代理到代理 (A2A) 请求的速率上限为 10 QPS,即每个项目每个代理的 QPM 为 600。
- 针对 AlloyDB、Cloud SQL for MySQL、Cloud SQL for PostgreSQL 和 Spanner 的对话式分析 API 的每个项目限制为 50 QPM。如需提高这些限制,请与Google Cloud 客户服务团队联系。
问题类型限制
Conversational Analytics API 支持可通过单个可视化图表回答的问题,例如:
- 指标随时间变化的趋势
- 指标按维度细分或分布的情况
- 一个或多个维度的唯一值
- 单个指标值
- 维度值排行榜(按指标排序)
Conversational Analytics API 尚不支持只能通过以下类型的复杂可视化图表回答的问题:
- 预测
- 高级统计分析,包括相关性和异常检测