选择文本生成函数

本文档对 BigQuery ML ML.GENERATE_TEXTAI.GENERATE 文本生成函数进行了比较。在函数功能重叠的情况下,您可以使用本文档中的信息来帮助您确定要使用哪个函数。

函数相似性

ML.GENERATE_TEXTAI.GENERATE 函数在以下方面类似:

  • 用途:通过将提示传递给大语言模型 (LLM) 来生成文本。
  • 结算:处理数据会产生 BigQuery ML 费用。 如需了解详情,请参阅 BigQuery ML 价格。调用 LLM 时会产生 Vertex AI 费用。如果您使用的是 Gemini 2.0 或更高版本的模型,则相应调用会按批量 API 费率计费。如需了解详情,请参阅 Vertex AI 中构建和部署 AI 模型的费用
  • 可伸缩性:每个 6 小时的查询作业可处理 100 万到 1,000 万行。实际吞吐量取决于输入行中的平均令牌长度等因素。如需了解详情,请参阅生成式 AI 函数
  • 输入数据:支持来自 BigQuery 标准表和对象表的文本数据和非结构化数据。

功能差异

使用下表评估 ML.GENERATE_TEXTAI.GENERATE 函数之间的差异:

ML.GENERATE_TEXT AI.GENERATE
函数签名 一种以表为输入并以表为输出的表值函数。 一种标量函数,接受单个值作为输入,并返回单个值作为输出。
支持的 LLM
  • Gemini 模型
  • 合作伙伴模型,例如 Anthropic Claude、Llama 和 Mistral AI
  • 开源模型
Gemini 模型
函数输出内容

Gemini 模型的函数输出内容:

  • 生成的文本
  • Responsible AI (RAI) 结果
  • Google 搜索接地结果(如果已启用)
  • LLM 调用状态

其他类型模型的函数输出内容:

  • 生成的文本
  • LLM 调用状态
  • 生成的文本
  • 采用 JSON 格式的完整模型响应
  • LLM 调用状态
函数输出格式 生成的价值以单个 JSON 列或单独的表格列的形式返回,具体取决于 flatten_json_output 实参值。 生成的值以 STRUCT 对象中的字段形式返回。
用户体验历程 您必须先创建远程模型,然后才能使用该函数。 您可以直接使用该函数,而无需创建远程模型。
权限设置 您必须手动创建 BigQuery 连接,并向该连接的服务账号授予 Vertex AI User 角色权限。如果您使用的是 BigQuery 默认连接,则可以跳过此步骤。 您必须手动创建 BigQuery 连接,并向该连接的服务账号授予 Vertex AI User 角色权限。
优点 支持更灵活的输入和输出格式。 更易于集成到 SQL 查询中。
扩展函数 您可以使用 AI.GENERATE_TABLE 函数生成根据您指定的 SQL 输出架构进行结构化的输出。 您可以使用 AI.GENERATE_BOOLAI.GENERATE_INTAI.GENERATE_DOUBLE 函数生成不同类型的标量值。