生成式 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
。
支持的模型
支持以下 Vertex AI 模型:
gemini-2.0-flash-exp
(预览版)gemini-1.5-flash
gemini-1.5-pro
gemini-1.0-pro
gemini-1.0-pro-vision
(预览版)text-bison
text-bison-32k
text-unicorn
- 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
函数分析对象表中的图片或视频内容,并将您提供的提示用作函数参数。 - 对于基于
gemini-1.0-pro
、text-bison
、text-bison-32k
或text-unicorn
模型的远程模型,您可以对您在查询中提供的提示或某个标准表的某一列中的提示使用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
函数生成视频嵌入 - 生成和搜索多模态嵌入
- 执行语义搜索和检索增强生成
后续步骤
- 如需详细了解如何对机器学习模型执行推理,请参阅模型推理概览。