生成式 AI 概览
本文档介绍 BigQuery ML 支持的生成式人工智能 (AI) 功能。借助这些功能,您可以使用预训练的 Vertex AI 模型在 BigQuery ML 中执行 AI 任务。支持的任务包括:
通过在 BigQuery ML 中创建表示 Vertex AI 模型端点的远程模型,您可以访问 Vertex AI 模型以执行其中一个函数。基于您要使用的 Vertex AI 模型创建远程模型后,您可以通过对远程模型运行 BigQuery ML 函数来访问该模型的功能。
通过此方法,您可以在 SQL 查询中使用这些 Vertex AI 模型的功能来分析 BigQuery 数据。
工作流程
您可以将基于 Vertex AI 模型的远程模型和基于 Cloud AI 服务的远程模型与 BigQuery ML 函数结合使用,以便完成复杂的数据分析和生成式 AI 任务。
下图显示了您可以结合使用这些功能的一些典型工作流:
文本生成
文本生成是一种生成式 AI,其中文本是根据提示或数据分析生成的。您可以同时使用文本和多模态数据执行文本生成。
文本生成的一些常见应用场景如下:
- 生成创造性内容。
- 生成代码。
- 生成聊天或电子邮件回复。
- 头脑风暴,例如为未来的产品或服务建议途径。
- 内容个性化,例如产品建议。
- 通过为内容添加一个或多个标签来对数据进行分类,以便将内容归类。
- 识别内容中表达的主要情感。
- 总结内容传达的主要想法或印象。
- 在文本或视觉数据中识别一个或多个突出实体。
- 将文本或音频数据的内容翻译成其他语言。
- 生成与音频数据中的口头内容相匹配的文本。
- 根据视觉数据添加标注或执行问答。
数据丰富化是生成文本后的常见后续步骤,您可以通过将最初分析的分析洞见与其他数据相结合来丰富分析洞见。例如,您可以分析家居用品图片,为 design_type
列生成文本,以便家居用品 SKU 具有关联的说明,例如 mid-century modern
或 farmhouse
。
支持的模型
如需执行生成式 AI 任务,您可以使用 BigQuery ML 中的远程模型来引用部署到 Vertex AI 或托管在 Vertex AI 中的模型。您可以创建以下类型的远程模型:
基于以下预训练 Vertex AI 模型之一的远程模型:
基于 Anthropic Claude 模型(预览版)的远程模型。
如需就预览版模型提供反馈或请求支持,请发送电子邮件至 bqml-feedback@google.com。
使用文本生成模型
创建远程模型后,您可以使用 ML.GENERATE_TEXT
函数与该模型交互:
- 对于基于 Gemini 1.5 或 2.0 模型的远程模型,您可以使用
ML.GENERATE_TEXT
函数分析对象表中的文本、图片、音频、视频或 PDF 内容,并将您提供的提示用作函数参数;也可以根据您在查询中提供的提示或标准表的某一列中的提示生成文本。 - 对于基于
gemini-1.0-pro-vision
模型的远程模型,您可以使用ML.GENERATE_TEXT
函数分析对象表中的图片或视频内容,并将您提供的提示用作函数参数。 - 对于所有其他类型的远程模型,您可以将
ML.GENERATE_TEXT
函数与您在查询中提供的提示或标准表的某一列中的提示搭配使用。
当您将 Gemini 模型与 ML.GENERATE_TEXT
函数搭配使用时,可以使用接地和安全属性,前提是您将标准表用于输入。通过接地功能,Gemini 模型可以使用互联网上的其他信息来生成更具体的真实回答。借助安全属性,Gemini 模型可以根据您指定的属性过滤其返回的回答。
创建引用以下任一模型的远程模型时,您可以视情况选择同时配置监督式调优:
gemini-1.5-pro-002
gemini-1.5-flash-002
gemini-1.0-pro-002
(预览版)
所有推理都在 Vertex AI 中进行。结果存储在 BigQuery 中。
使用以下主题尝试在 BigQuery ML 中生成文本:
- 使用 Gemini 模型和
ML.GENERATE_TEXT
函数生成文本。 - 使用 Gemini 视觉模型分析图片。
- 将
ML.GENERATE_TEXT
函数与您的数据结合使用来生成文本。 - 使用数据调优模型。
- 使用
text-bison
模型和ML.GENERATE_TEXT
函数生成文本。
嵌入
嵌入是一种表示给定实体(如一段文本或音频文件)的高维数值向量。通过生成嵌入,您可以捕获数据的语义,从而更轻松地推断和比较数据。
嵌入生成的一些常见应用场景如下:
- 使用检索增强生成 (RAG) 通过引用来自可信来源的更多数据来增强模型对用户查询的回答。RAG 可提高事实准确率和回答一致性,还可让您访问比模型训练数据更新的数据。
- 执行多模态搜索。例如,使用文本输入搜索图片。
- 执行语义搜索,以便找到用于推荐、替换和记录去重的相似项。
- 创建要与 k-means 模型搭配使用的嵌入以进行聚类。
支持的模型
支持以下型号:
- 如需创建文本嵌入,您可以使用 Vertex AI
text-embedding
和text-multilingual-embedding
模型。 - 如需创建可以将文本、图片和视频嵌入同一语义空间的多模态嵌入,您可以使用 Vertex AI
multimodalembedding
模型。 - 如需为结构化独立同分布随机变量 (IID) 数据创建嵌入,您可以使用 BigQuery ML 主成分分析 (PCA) 模型或自动编码器模型。
- 如需为用户或项数据创建嵌入,您可以使用 BigQuery ML 矩阵分解模型。
对于较小的轻量级文本嵌入,请尝试使用预训练的 TensorFlow 模型,例如 NNLM、SWIVEL 或 BERT。
使用嵌入生成模型
创建模型后,您可以使用 ML.GENERATE_EMBEDDING
函数与其交互。对于所有类型的受支持模型,ML.GENERATE_EMBEDDING
适用于标准表中的数据。对于多模态嵌入模型,ML.GENERATE_EMBEDDING
也适用于对象表中的视觉内容。
对于远程模型,所有推理都在 Vertex AI 中进行。对于其他模型类型,所有推理都在 BigQuery 中进行。结果存储在 BigQuery 中。
使用以下主题尝试在 BigQuery ML 中生成文本:
- 使用
ML.GENERATE_EMBEDDING
函数生成文本嵌入 - 使用
ML.GENERATE_EMBEDDING
函数生成图片嵌入 - 使用
ML.GENERATE_EMBEDDING
函数生成视频嵌入 - 生成和搜索多模态嵌入
- 执行语义搜索和检索增强生成
价格
您需要为用于针对模型运行查询的计算资源付费。远程模型会调用 Vertex AI 模型,因此针对远程模型的查询也会产生 Vertex AI 费用。
如需了解详情,请参阅 BigQuery ML 价格。
后续步骤
- 如需详细了解如何对机器学习模型执行推理,请参阅模型推理概览。