<img align="left" width="150" src="https://yellow-cdn.veclightyear.com/0a4dffa0/5811dde1-e76a-4470-8b47-cc5676ed8518.png" alt="feedgen_logo" /><br>
免责声明:这不是 Google 的官方产品。
FeedGen 最适用于不超过 3 万个商品。想要进一步扩展规模?请加入Product Studio API alpha(联系 hsjd@google.com)或考虑在 BigQuery 中处理您的信息流。
概述 • 开始使用 • 解决的问题 • 工作原理 • 如何贡献 • 社区亮点
gemini-1.5-pro
和 gemini-1.5-flash
的支持structured_title
和 structured_description
替代 title
和 description
。详情请参阅这些说明。gemini-1.5-pro-preview-0409
。请注意,模型名称将来可能会(破坏性地)更改。gemini-1.0-pro
和 gemini-1.0-pro-vision
gemini-pro
和 gemini-pro-vision
)gemini-pro-vision
)v1
,并在 main
分支上切换到 JS/TSFeedGen 是一个开源工具,它使用 Google Cloud 最先进的大型语言模型(LLM)来改进产品标题、生成更全面的描述,并填补产品信息流中缺失的属性。它以简单且可配置的方式帮助商家和广告主使用生成式人工智能发现并修复信息流中的质量问题。
该工具依赖 GCP 的 Vertex AI API,在 GCP 的基础 LLM 上提供零样本和少样本推理能力。通过少样本提示,您可以使用自己购物信息流中最佳的 3-10 个样本来定制模型对您自己数据的响应,从而实现更高质量和更一致的输出。通过使用您自己的专有数据对基础模型进行微调,可以进一步优化这一过程。了解如何使用 Vertex AI 对模型进行微调,以及这样做的好处,请参阅这个指南。
注意:在使用 FeedGen 之前,请检查您的目标信息流语言是否是 Vertex AI 支持的语言 之一,如果不是,请联系您的 Google Cloud 或账户代表。
要开始使用 FeedGen:
Getting Started
工作表中详细说明的说明进行操作优化购物信息流是每个使用 Google 商家中心(MC)的广告主的目标,以改善查询匹配、增加覆盖率,并最终提高点击率(CTR)。然而,在 MC 中筛选产品不通过或手动修复质量问 题是一项繁琐的工作。
FeedGen 使用生成式人工智能解决这个问题 - 允许用户以自动化的方式发现并修复质量问题,并填补信息流中的属性空白。
FeedGen是一个基于Apps Script的应用程序,它作为HTML侧边栏(详见HtmlService)在Google Sheets中运行。关联的Google Sheets电子表格模板是所有神奇操作发生的地方;它包含需要优化的输入源,以及控制内容生成方式的特定配置值。该电子表格还用于(可选的)人工验证和在Google Merchant Center (MC)中设置补充源。
Vertex AI中的生成式语言,以及一般而言,是一个新兴的功能/技术。我们强烈建议手动审查和验证生成的标题和描述。FeedGen通过为标题和描述提供评分(以及详细的组成部分)来帮助用户加快这一过程,该评分代表生成内容的"好坏"程度,同时提供了一种基于Sheets的方式,可以通过数据筛选批量审批生成的内容。
首先,复制模板电子表格并按照入门部分中定义的说明进行操作。第一步是通过下图所示的初始化按钮向Apps Script环境进行身份验证。
<img src='https://yellow-cdn.veclightyear.com/0a4dffa0/78980fe1-fc79-4130-8f23-a7545009bf47.png' alt='入门' />之后,导航到Config工作表以配置源设置、Vertex AI API设置(包括对将产生的成本的估算),以及控制内容生成的设置。
<img src='https://yellow-cdn.veclightyear.com/0a4dffa0/808946d0-e632-4be3-9a1a-e5fdbd139da0.png' alt='配置' />描述生成的工作原理是取Config表中给出的提示前缀,附加Input中的一行数据,并将结果作为提示发送给LLM。这为您塑造措辞、风格和其他可能有的要求提供了极大的灵活性。Input Feed中的所有数据都将作为提示的一部分提供。
如果在输入源中提供了网页链接,您也可以勾选使用落地页信息
复选框,以加载并传递产品网页的净化内容到提示中。从获取的HTML内容中提取所有span
和p
标签并连接在一起,形成一个额外的信息段落,该段落与专门的使用说明一起传递给LLM作为提示的一部分。JSON网络响应将按原样使用,无需额外解析。此外,获取的网页信息会使用Apps Script的CacheService缓存60秒,以避免在生成标题时(这是对Vertex AI API的单独调用)重新获取和重新解析内容。
可选:您还可以在少样本示例部分提供描述示例(见下文)。这些示例将被附加到提示前缀中,并告知模型什么是好的描述。
结果直接输出为生成的描述
由于LLM有产生幻觉的倾向,有一个选项可以要求模型(在同一提示中的后续指令中)判断生成的描述是否符合您的标准。模型评估它刚刚生成的描述,并给出数字分数以及理由。提供了示例验证标准和评分,以给出如何指导模型评估描述的一些提示 - 例如,它包括标准以及示例分数值。
标题使用少样本提示;这是一种从自己的输入源中选择样本的技术,如下所示,以使模型的响应更适合您的数据。为了帮助这个过程,FeedGen提供了一个实用的Google Sheets公式:
=FEEDGEN_CREATE_CONTEXT_JSON('Input Feed'!A2)
可以通过向下拖动来填充少样本提示示例表中的"Context"信息字段,就像其他Sheets公式一样。这个"Context"代表输入源中该项目的整行数据,它将作为提示的一部分发送给Vertex AI API。
之后,您必须手动填写少样本提示示例表的其余列,这些列定义了LLM的预期输出。这些示例非常重要,因为它们为LLM学习如何为输入源的其余部分生成内容提供了基础。最佳的示例选择是那些:
我们建议为您的源中的每个独特类别至少添加一个示例,特别是如果理想的标题组成会有所不同的话。
<img src='https://yellow-cdn.veclightyear.com/0a4dffa0/94db39e8-d55c-4024-b30d-b23775b1b0ed.png' alt='少样本' />FeedGen默认使用输入源中的属性而不是生成的属性值来组成标题,以避免LLM产生幻觉并确保一致性。例如,特定源项目的输入源属性Color中的值Blue
将用于其相应的标题,而不是生成的值,比如Navy
。可以通过标题提示设置的高级设置部分中的首选生成值
复选框来覆盖此行为,这在输入源本身包含错误或质量较差的数据时很有用。
在同一部分中,您还可以指定一个安全词列表,这些词可以在生成的标题中输出,即使它们之前在您的源中不存在。例如,您可以将"Size"一词添加到此列表中,如果您想用它来前缀Size
属性的所有值(即"Size M"而不是"M")。
最后,您还可以通过"使用LLM生成标题"复选框指定是否希望LLM为您生成标题。这允许LLM检查生成的属性值并选择要连接在一起的值 - 避免重复 - 而不是默认逻辑中将所有属性值拼接在一起。这个功能在Gemini模型上比PaLM 2模型效果更好,因为Gemini模型具有更强的推理能力,能更好地遵循提示指令。此外,LLM生成的标题允许您在提示中指定所需的标题长度(商户中心最多150个字符),这在之前是不可能的。
与描述一样,您也可以选择从提供的网页链接加载信息并将其传递给LLM,以生成更高质量的标题。这可以通过"使用落地页信息"复选框来完成。选中后,从网页数据提取的所有特征将列在名为"网站特征"的新属 性下。然后,现有属性未涵盖的新词将被添加到生成的标题中。
现在您已完成配置,准备好优化您的feed了。使用顶部导航菜单启动FeedGen侧边栏,并开始在"生成内容验证"工作表中生成和验证内容。
您通常会在此视图中工作,以理解、批准和/或为每个feed项重新生成内容,具体如下:
完成所有必要的批准并对输出满意后,点击"导出到输出Feed"将所有批准的feed项转移到"输出Feed"工作表。
最后一步是将电子表格作为补充feed连接到MC,对于标准MC账户,可以按照这篇帮助中心文章所述进行操作,对于多客户账户(MCA),可以参考这篇帮助中心文章。
请注意,输出feed中有一个"att-p-feedgen"列。这个列名完全灵活,可以直接在输出工作表中更改。它为补充feed添加了一个自定义属性,用于报告和性能测量目的。
由于Gemini(gemini-pro-vision)是一个多模态模型,我们能够额外检查产品图像并利用它们生成更高质量的标题和描述。这是通过在现有的标题和描述生成提示中添加额外的指令来从提供的图像中提取可见的产品特征实现的。
对于标题,提取的特征有两种用途:
对于描述,模型使用提取的特征生成更全面的描述,突出产品的视觉方面。这对于视觉吸引力至关重要的领域特别相关;在这些领域中,产品的关键细节是通过视觉而不是feed中的结构化文本格式传达的。这包括时尚、家居装饰和家具、香水和珠宝等。
最后,请注意以下限制(这些信息在Gemini的"公开预览"期间有效):
得分低于"最小评估批准分数"的描述将不会被预先 批准。您可以通过在"生成验证"标签中筛选"描述分数"并删除"状态"值来重新生成这些描述。
FeedGen为生成的标题提供一个介于-1和1之间的分数作为质量指标。正分表示不同程度的良好质量,而负分则代表对生成内容的不确定性。与描述一样,您可以指定一个最低分数(默认为0),FeedGen将预先批准达到该分数的内容。
让我们通过一些虚构的例子来更好地理解标题的评分:
让我们看看同一产品的另一个例子:
<品牌> <性别> <类别> <产品类型>
<品牌> <性别> <类别> <产品类型> <尺码>
产品类型
属性的组成部分发生了不利变化,因此得到负分。FeedGen在评分时较为保守;只要有任何词被删除,即使这些词是像"立即购买"或"限量供应"这样的促销短语,它也会给出-0.5的分数。根据商户中心(MC)概述的最佳实践,这些短语不应该出现在标题中。
那么,什么才是好的标题呢?让我们看另一个例子:
最后,什么是理想情况?让我们看最后一个例子:
总结一下,评分系统的工作原理如下:
是否有幻觉? | 是否删除了任何词? | 完全没有变化? | 是否优化了标题? | 是否填补了缺失的空缺或提取了新属性? |
---|---|---|---|---|
-1 | -0.5 | 0 | 加0.5 | 加0.5 |
FeedGen还应用了一些基本的MC合规性检查,例如标题和描述的长度分别不得超过150和5000个字符。如果生成的内容未通过这些检查,状态列中将输出未通过合规性检查
。如上所述,每当点击生成按钮时,FeedGen将首先尝试重新生成失败
的项目。
FeedGen不仅填补您信息中的空缺,还可能创建输入信息中未提供的全新属性。这可以通过配置表中的少量示例提示来控制;通过在这些示例中提供输入中不存在的"新"属性,FeedGen将尝试从输入信息中的其他值中提取这些新属性的值。让我们看一个例子:
原始标题 | 原始标题中的产品属性 | 生成标题中的产品属性 | 生成的属性值 |
---|---|---|---|
ASICS女士高性能跑步七分紧身裤 | 品牌、性别、产品类型 | 品牌、性别、产品类型、合身度 | ASICS、女士高性能、跑步七分、紧身 |
注意这里如何从产品类型中提取出合身度属性。FeedGen现在将尝试对信息中的所有其他产品执行相同操作,例如,它将从标题"Agave男士牛仔裤Waterman宽松"中提取"宽松"作为合身度。如果您不想创建这些属性,请确保在少量示例提示中只使用输入信息中存在的属性。此外,这些全新的信息属性在输出信息中将以**feedgen-**为前缀(例如feedgen-合身度),并会被排序到表格末尾,以便您更容易定位和删除(如果您不想使用它们)。
根据您的业务领域,我们建议标题遵循以下模式:
领域 | 推荐的标题结构 | 示例 |
---|---|---|
服装 | 品牌 + 性别 + 产品类型 + 属性(颜色、尺码、材质) | Ann Taylor 女士黑色毛衣(6号码) |
消耗品 | 品牌 + 产品类型 + 属性(重量、数量) | TwinLab Mega 辅酶Q10,50毫克,60粒 |
硬质商品 | 品牌 + 产品 + 属性(尺寸、重量、数量) | Frontgate 藤编露台椅套装,棕色,4件套 |
电子产品 | 品牌 + 属性 + 产品类型 | 三星88英寸智能LED电视,4K 3D曲面屏 |
图书 | 书名 + 类型 + 格式(精装、电子书)+ 作者 | 《1000道意大利菜谱》,精装版,作者Michele Scicolone |
你可以依靠这些模式来生成FeedGen Config
工作表中定义的少样本提示示例,从而相应地引导模型生成的值。
我们还建议以下几点:
请参阅Vertex AI的定价和配额和限制指南以获取更多信息。
截至2024年4月9日,根据更新的商家中心产品数据规范,用户需要披露是否使用生成式AI来策划标题和描述的文本内容。
这方面的主要挑战在于用户不能在同一个数据源中同时发送title
和structured_title
,或description
和structured_description
,因为原始列值将始终优先于structured_
变体。
因此,用户需要在将批准的生成内容导出到FeedGen的Output Feed标签后执行一系列额外步骤:
title
和description
列分别重命名为structured_title
和structured_description
。trained_algorithmic_media:
。
<br/><img src='https://yellow-cdn.veclightyear.com/0a4dffa0/6ca2e32d-c81e-437e-9d4f-eb6c98cc37d6.png' width="300px" /><br/>
有关更多信息,请参阅详细的structured_title和structured_description属性规范。我们将很快为您自动完成步骤#3和#4 - 敬请关注!<br/> 感谢Glen Wilson和Solutions-8团队提供的详细信息和图片。
除了我们的贡献指南中概述的信息外,您还需要遵循以下额外步骤在本地构建FeedGen:
npm install
。npx @google/aside init
并点击提示。
Script ID
。您可以通过在目标表格的顶部导航菜单中单击扩展程序 > Apps Script
,然后在结果Apps Script视图中导航到项目设置
(齿轮图标)来找到这个值。npm run deploy
以构建、测试和部署(通过clasp)所有代码到目标电子表格/Apps Script项目。一键生成PPT和Word,让学习生活更轻松
讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。
深度推理能力全新升级,全面对标OpenAI o1
科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。
一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型
Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。
字节跳动发布的AI编程神器IDE
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。
AI助力,做PPT更简单!
咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支 持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。
选题、配图、成文,一站式创作,让内容运营更高效
讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。
专业的AI公文写作平台,公文写作神器
AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。
OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。
openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。
高分辨率纹理 3D 资产生成
Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。
一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关 项目。
3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。
最新AI工具、AI资讯
独家AI资源、AI项目落地
微信扫一扫关注公众号