在本平台中,数据集是所有搜索相关功能的数据基础。平台主要支持以下两种核心数据集类型:
此外,无论是物品数据集还是用户行为数据集,同一个数据集都可以被多个不同的应用关联复用,以实现数据共享和高效管理。本文将详细介绍平台所支持的物品数据集和用户行为数据集的定义、数据结构、配置方法和应用方式,帮助您为AI搜索和推荐功能准备高质量的数据基础。
若要让您平台上的商品、内容素材、新闻资讯、视频等各类结构化内容支持精准搜索和智能推荐,物品数据集是构建这一能力的核心基础。物品数据集主要包含以下两种类型的数据:
物品数据为结构化数据,使用标准的JSON格式定义和上传,您可以创建物品数据集来存储任意的结构化搜索对象,比如商品、内容素材、新闻资讯、视频等。用户的标准搜索和对话式搜索行为,本质上都是在这个类型的数据集中查找和匹配信息。 为了实现更高效的召回和更准确的搜索结果,物品数据集支持多模态内容理解;平台会深度分析并结合不同类型的数据信息。例如,针对图文数据,会综合理解图片与文本信息;对于视频数据,则会结合视频文件本身内容及其附带的元信息(如标题、简介、标签、视频时长等)。这种多模态处理方式能够显著提升平台对内容的深度理解,进而优化搜索和推荐的相关性与准确度。
若您希望将平台上的图文内容(如商品信息、新闻资讯、设计素材等)整合进搜索与推荐系统,并实现基于内容的问答与信息提取,图文数据集是理想的解决方案。图文数据集支持您上传包含图片和相关文本描述的数据。系统将自动调用多模态预处理和理解能力,深度解析图像视觉信息与文本语义内容,并将这些图文内容索引,以供用户在对话时进行搜索以及对图文内容的问答。 图文搜索适用于以下场景:
其他图文内容搜索场景,如: 企业内部知识库问答、学术文献的图文内容理解与匹配等。
图文数据集描述允许您为当前数据集添加一段概括性的文字说明,用以阐述其包含的主要数据内容、数据来源、适用领域或关键特征。例如:“笔记本电脑商品信息表,包含商品的基本信息、图片、参数等”。此描述会被AI搜索助手用于理解数据集的主题和范围,从而在执行搜索时做出更佳判断,有助于提升搜索结果的准确度。建议填写清晰、准确的描述。
图文数据集支持自由的schema定义,即我们不限制数据字段名称,您可以自定义JSON结构(字段名、字段类型)来上传任意的图文信息来描述被搜索的数据内容。您可以使用控制台创建AI搜索应用时创建数据集,上传一条或多条JSON数据来进行schema解析,控制台的大模型数据解析功能可为您解析字段结构和字段名称、特殊属性和数据集内容摘要。字段名称:必须以字母开头,且只能包含字母、数字和下划线字段类型:支持JSON schema的以下核心数据类型
字段含义:在智能schema解析阶段,大模型将通过字段名称和采样上传的真实数据来解读字段代表的含义和存储的内容。字段的含义将和字段值一起作为语义信息进入向量表征,可以提升语义搜索过程中更准确地补充字段内容的上下文信息。建议使用中文对字段含义进行简洁的描述。字段属性:配置字段的特殊属性,来进行后续的数据处理。目前支持以下字段属性
属性
是否必需
属性用途和传入要求
唯一标识
必需
一条数据的唯一标识,作为数据集主键,数据集中必须包含且仅包含一个唯一标识
图片URL
配置为图片URL的字段,上传数据后系统将自动拉取图片并提取视觉特征进行多模态理解,如果您希望使用URL上传图片进行多模态搜索,则需要将存储了图片URL的字段标注为图片URL属性。 字段为String或Array 时可配置该属性,请确保URL可公网访问 支持将多个字段配置为图片URL属性。
说明
传入图片需要满足以下条件: 格式:jpeg、png、 webp、bmp、tiff、ico、dib、icns、sgi、jpeg2000。其中,tiff、sgi、icns、jpeg2000 格式图片,需要保证和元数据对齐,如在对象存储中正确设置文件元数据,否则会解析失败。 宽高比(宽/高):在范围[1/100, 100] 。 边长: [10, 6000] px,即短边像素需大于 10 px,长边像素需小于6000 px。
以下是一条图文数据示例:
{ "product_id": "P10092385", "title": "轻薄笔记本电脑", "images": { "primary": "https://example.com/images/laptop_main.jpg", "gallery": [ "https://example.com/images/laptop_angle1.jpg", "https://example.com/images/laptop_angle2.jpg" ] }, "price": { "current": 4999, "original": 5899, "discount_percentage": 15 }, "specs": { "processor": "Intel i7", "memory": "16GB", "storage": "512GB SSD" } }
示例字段
字段类型
字段属性
字段含义
product_id
String
商品的唯一ID
title
商品标题
images
Object
商品包含的图片信息
images.primary
商品主形象图
images.gallery
Array
商品详情轮播图,包含商品的主要信息图片
price
商品的价格信息
price.current
Float
商品当前展示价格
price.original
商品历史价格
price.discount_percentage
商品折扣(百分比)
specs
商品参数
processor
处理器
memory
内存
storage
电脑存储空间和介质
参数名称
参数说明
可被搜索的字段
字段中的语义信息将包含在物品的语义表征中参与检索 建议选择包含商品名称、关键特征、类目等关键可搜索信息,如果您的场景包含图搜,需要将 images 字段选择为搜索匹配字段
图搜图
勾选此选项即可让该字段中的图片支持被“以图搜图”。 您可以选择性地启用此功能,从而精确控制哪些类型的图片能够响应用户的图片搜索请求。您可以根据具体的应用场景来决定:对于数据中所有符合条件的图片链接字段(例如“产品主图”、“用户头像”、“场景照片”等)注意:此字段必须已被标记为“可被搜索的字段”,并且其字段属性需为“图片链接”
用于筛选的字段
调用搜索和对话接口时,可使用选中字段对搜索结果进行筛选 支持数值类字段(Float, Int),布尔值(Bool),字符串(String)和字符串列表(Array) 建议选择类目、价格等
用于搜索补全的字段
每条数据中选中的字段值都会作为联想词进入索引用于调用搜索联想接口的数据源。 支持字符串和字符串列表格式的数据
以前面的示例数据为例,可配置title, images.primary(用于以图搜图),images.gallery(理解图中的商品简介、优势介绍 等信息),price.current(用户可在对话中搜索提问商品价格),specs(商品的全部技术参数可被用于商品搜索,比如搜索”笔记本电脑 1TB SSD“可搜索到符合对应参数的商品)。
若您希望将平台上的视频内容整合进搜索与推荐系统,并实现基于内容的问答,视频数据集是理想的解决方案。视频数据集支持您上传包含视频文件的数据,系统将自动调用视频预处理和理解能力,理解视频音画内容,并将视频内容索引以供用户在对话时搜索、推荐和对视频内容进行问答。视频搜索适用于以下场景:
其他视频内容搜索场景,如:教育平台课程和知识点搜索、视频设计素材搜索等。
数据集描述允许您为当前数据集添加一段概括性的文字说明,用以阐述其包含的主要数据内容、数据来源、适用领域或关键特征。例如:“国产电视剧信息表,包含电视剧、剧集的基本信息、封面图等”。此描述会被AI搜索助手用于理解数据集的主题和范围,从而在执行搜索时做出更佳判断,有助于提升搜索结果的准确度。建议填写清晰、准确的描述。
与图文数据集不同,上传视频数据集前您需要按照上传要求准备媒体数据,其中媒体内容唯一标识、内容类型、视频下载链接、父内容唯一标识和序列编号必须上传且需使用固定的字段名,其他元信息用户可以使用自由字段上传。您在上传视频数据集之前,请注意以下限制:
注意
parent_content_id
sequence_index
字段名称:必须以字母开头,且只能包含字母、数字和下划线字段类型:支持JSON schema的以下核心数据类型
字段含义:在智能schema解析阶段,大模型将通过字段名称和采样上传的真实数据来解读字段代表的含义和存储的内容。字段的含义将和字段值一起作为语义信息进入向量表征,可以提升语义搜索过程中更准确地补充字段内容的上下文信息。建议使用中文对字段含义进行简洁的描述。
为确保您的视频数据能够被系统准确高效地处理和索引,请在上传前特别注意按照我们的特定要求准备媒体数据,您必须使用我们预先定义的字段名称进行提交。
字段名
字段说明
content_id
String 媒体内容的唯一标识每条数据必须有唯一标识
content_type
String 内容类型,支持上传枚举值:
video_url
当媒体作为父内容(如电视剧)时必须为空 当媒体(如电视剧单集、电影)作为子内容时必需
Array<String> 火山引擎可访问的视频下载链接,用于视频理解和处理。 父内容可以没有视频,比如一个电视剧 同一个content_id下上传多个video_url,上传后后台会按列表顺序将视频拼接为一个视频
Array<String>
此字段支持上传一个可公开访问的视频下载链接列表,但不支持通过上传任意网页链接来爬取网页上的视频。在上传前,请确保列表内所有视频文件的总大小不超过 10GB,总时长不超过 3 小时。 此外,在导入视频下载链接前,请确保这些视频的下载 URL 能够被火山引擎的官方接口域名访问。 支持上传以下格式的视频文件: mp4、flv、asf、rm、rmvb、mpeg、mov、avi、mpegts、m4s、m3u8、matroska、wmv、3gp、ts、mpg、webm、mkv、wm、asx、ram、mpe、vob、dat、mp4v、m4v、f4v、mxf、qt
当媒体作为父内容(如电视剧)时必须为空 当媒体作为子内容例如电视剧的单集)时必需
String 如果您的媒体信息具有层级结构(比如电视剧),则需要用此字段标识视频内容的上级内容 子内容的*parent_content_id是父内容的content_id*
当媒体作为父内容(如电视剧)时必须为空 当媒体有父层级媒体(例如电视剧的单集)时强烈建议填写
Integer 非必需 标识多个子内容在父内容中的顺序信息(比如电视剧的集数),用于串联视频内容进行同媒体系列的跨视频理解 不传入则不会做跨视频理解
Integer
除上述固定字段外,您也可以使用自定义字段上传其他元数据(例如:内容标题、视频时长、视频语言等),您可以为其指定任意名称,例如直接使用您数据库中已有的字段名,以简化对接过程。
配置字段的特殊属性,来进行后续的数据处理。目前这些具有字段属性的特殊字段,涵盖了全部的固定字段,以及一部分自由字段,我们强烈建议上传这部分有固定预设属性的自由字段。
属性说明
内容标识
固定字段
String 对应*content_id*字段
视频下载URL
Array<String> 对应*video_url*字段
父内容标识
String 对应*parent_content_id*字段
内容序号
Integer 对应*sequence_index*字段
内容标题
自由字段
String 媒体内容的标题,强烈建议上传
媒体封面图url
String 媒体内容的展示封面图下载链接
媒体页面链接
String 媒体内容的跳转链接,仅做搜索列表预览展示用
视频时长(秒)
Int64 视频时长(按秒)
Int64
视频语言(BCP 47)
Array<String> 符合BCP 47标准的语言标签 例如,中文:zh;英文:en
发布时间
String 媒体内容的发布或上映时间,使用ISO 8601格式(YYYY-MM-DD T HH:MM:SS),支持精确到日,或秒
以下是一条视频数据(电视剧单集)示例:
{ "content_id": "tv_series_67890_episode_01", "video_url": ["https://example.com/tv_series/67890/episode_01.mp4"], "parent_content_id": "tv_series_67890", "sequence_index": 1, "title": "甄嬛传第一集", "director": "郑晓龙", "actors": ["孙俪", "陈建斌", "蔡少芬"], "first_air_date": "2011-11-17", "douban_rating": null, "genres": ["剧情", "古装"], "episode_summary": "时为满清雍正元年,结束了血腥的夺位之争,新的君主继位,国泰民安,政治清明,但在一片祥和的表象之下,一股暗流蠢蠢欲动。后宫选秀,少女甄嬛与自永安县来的好友眉庄、陵容参加选秀,因容貌酷似已故的纯元皇后,更兼聪慧机敏,立刻引起皇帝的注意……", "actor_list": [ {"actor_name": "孙俪", "role_name": "甄嬛"}, {"actor_name": "陈建斌", "role_name": "雍正"}, {"actor_name": "蔡少芬", "role_name": "皇后"} ], "duration": 2700, "language": "zh-CN", "media_link": "https://example.com/tv_series/67890/episode_1/" }
媒体内容的唯一标识
媒体内容下视频的下载链接
媒体内容所属父内容的唯一标识
媒体内容在父内容中的顺序信息
媒体内容的展示标题
director
媒体内容的导演
actors
媒体内容的演员列表
first_air_date
媒体内容的发布时间
douban_rating
媒体内容的豆瓣评分
genres
媒体内容的类型
episode_summary
媒体内容的内容总结
actor_list
媒体内容的演员-角色对照表
duration
媒体内容的时长
language
媒体内容的语言
media_link
媒体内容的跳转链接
为了帮助您更加清晰地管理和区分系列作品与独立作品,AI搜索支持媒体数据按层级上传,支持2层媒体关系,使用*content_id和parent_content_id*字段定义,每个层级的媒体内容可以有自己的元数据。使用层级关系可实现以下业务诉求:
以下是关于内容层级的详细说明:
内容类型
类型说明
示例
父内容
层级的顶层,这类内容通常指系列作品,最典型的例子是电视剧。 其结构特点如下:content_id:内容唯一标识,作为子内容的*parent_content_id*content_type:"collection"video_url:必须为空parent_content_id:必须为空sequence_index:必须为空
{ "content_id": "tv_series_67890", "content_type":"collection", "video_url": null, "parent_content_id": null, "sequence_index": null, "title": "甄嬛传", "director": "郑晓龙", "actors": ["孙俪", "陈建斌", "蔡少芬"], "first_air_date": "2011-11-17", "douban_rating": 9.3, "genres": ["剧情", "古装"], "plot_summary": "时为满清雍正元年,结束了血腥的夺位之争,新的君主继位,国泰民安,政治清明,但在一片祥和的表象之下,一股暗流蠢蠢欲动。后宫选秀,少女甄嬛与自永安县来的好友眉庄、陵容参加选秀,因容貌酷似已故的纯元皇后,更兼聪慧机敏,立刻引起皇帝的注意……", "actor_list": [ {"actor_name": "孙俪", "role_name": "甄嬛"}, {"actor_name": "陈建斌", "role_name": "雍正"}, {"actor_name": "蔡少芬", "role_name": "皇后"} ], "language": "zh-CN", "media_link": "https://example.com/tv_series/67890/" }
子内容
层级中的第2层,代表系列内容中的一部分,例如电视剧的其中一集。每个子内容都明确隶属于一个父内容。 其结构特点如下:content_id:内容唯一标识content_type:"video"video_url:必需,视频文件urlparent_content_id**:父内容的*content_id*sequence_index:标识多个子内容在父内容中的顺序信息
{ "content_id": "tv_series_67890_episode_01", "content_type":"video", "video_url": ["https://example.com/tv_series/67890/episode_01.mp4"], "parent_content_id": "tv_series_67890", "sequence_index": 1, "title": "甄嬛传第一集", "director": "郑晓龙", "actors": ["孙俪", "陈建斌", "蔡少芬"], "first_air_date": "2011-11-17", "douban_rating": null, "genres": ["剧情", "古装"], "episode_summary": "时为满清雍正元年,结束了血腥的夺位之争,新的君主继位,国泰民安,政治清明,但在一片祥和的表象之下,一股暗流蠢蠢欲动。后宫选秀,少女甄嬛与自永安县来的好友眉庄、陵容参加选秀,因容貌酷似已故的纯元皇后,更兼聪慧机敏,立刻引起皇帝的注意……", "actor_list": [ {"actor_name": "孙俪", "role_name": "甄嬛"}, {"actor_name": "陈建斌", "role_name": "雍正"}, {"actor_name": "蔡少芬", "role_name": "皇后"} ], "duration": 2700, "language": "zh-CN", "media_link": "https://example.com/tv_series/67890/episode_1/" }
独立内容
没有层级关系的内容,本身即为一个完整的作品,例如电影。 其结构特点如下:content_id:内容唯一标识content_type:"video"video_url:必需,视频文件urlparent_content_id:必须为空sequence_index:必须为空
{ "content_id": "movie_12345", "content_type":"video", "video_url": ["https://example.com/movies/12345.mp4"], "parent_content_id": null, "sequence_index": null, "title": "流浪地球", "director": "郭帆", "actors": ["屈楚萧", "吴京", "李光洁"], "release_date": "2019-02-05", "douban_rating": 7.9, "genres": ["科幻", "冒险", "灾难"], "plot_summary": "近未来,科学家们发现太阳急速衰老膨胀,地球面临被吞没的灭顶之灾。为了自救,人类提出一个名为“流浪地球”的大胆计划,即倾全球之力在地球表面建造上万座发动机和转向发动机,推动地球离开太阳系,用2500年的时间奔往另外一个栖息之地。", "actor_list": [ {"actor_name": "屈楚萧", "role_name": "刘启"}, {"actor_name": "吴京", "role_name": "刘培强"}, {"actor_name": "李光洁", "role_name": "王磊"} ], "duration": 7740, "language": "zh-CN", "media_link": "https://example.com/movies/12345/details" }
以电视剧《甄嬛传》,《甄嬛传》第一集,电影《流浪地球》为例:
电视剧《甄嬛传》
必须为空
collection
《甄嬛传》第一集
video
电影《流浪地球》
字段中的音画信息或语义信息将包含在的语义表征中参与检索视频下载URL字段(video_url)强制勾选,不能反选,平台默认处理视频;如果您不需要理解视频,只需要搜索媒体内容的元数据信息,建议使用图文数据集 建议选择包含内容标题,视频简介,演员表等,当前暂不支持图搜视频
调用搜索和对话接口时,可使用选中字段对搜索结果进行筛选 支持数值类字段(Float, Int),布尔值(Bool),字符串(String)和字符串列表(Array)content_id,content_type,parent_content_id,sequence_index字段强制可筛选 建议选择视频类型,豆瓣评分等
以前面的示例中的单集数据为例,可配置*video_url*(用于视频情节搜索),episode_summary(对话中可通过剧情简介检索到对应的电视剧),director(可检索到某位导演的全部影视作品),actors(用户可在对话中询问某位演员的作品)。
配置数据集时,这项功能允许您借助 AI 大模型,基于数据集中现有的图文信息,自动生成全新的、有价值的文本字段 。这些新生成的字段随后可以添加到数据集中,并直接参与到搜索、筛选以及搜索补全 环节,有效增强数据的可发现性和应用价值。目前,该功能主要支持三种增强类型:物品描述、关键词和 Query 列表。
增强类型
物品描述
使用物品的文本或图片字段生成一段描述性文本(String类型),用于整合物品的多类信息来丰富可检索数据。
关键词
使用物品的文本或图片字段生成多个关键词(Array),用于丰富可检索数据
Query列表
使用物品的文本或图片字段生成多个query(Array),用于丰富搜索联想数据
用户行为数据集也是一种结构化的数据集合,用于记录和分析用户在应用或平台上的各种交互行为。为了提高长期推荐的效果,为用户提供新型生成式推荐的个性化能力,我们提供了用户行为数据集功能。通过利用丰富且细粒度的用户行为数据,结合用户意图、用户行为顺序、上下文对话记录,提供更好的端到端推荐效果,我们建议您使用用户行为数据上传功能,这将为您提升一些特定场景下长期内容的推荐效果,比如:
该数据集由 5 类必填字段和若干您自定义的可选字段组成,用来表示用户的操作轨迹、交互方式等,可帮助您为后续的产品优化、个性化推荐和用户体验改进提供数据支持。在用户行为数据集中,每一个字段会对应一个行为事件(例如:用户A在首页点击了某个商品),行为表将以事件流(event log)的形式存在。在上传用户行为数据集时,您需要配置5个必填字段,以及自定义数量的自由字段。行为表中5个必填字段为:
若想更详细了解具体行为数据集创建和编辑指引,您可查看创建用户行为数据集。
若您想在应用中使用推荐功能,应用必须关联至少一个图文数据集(推荐物品)和一个行为数据集。单个应用,可支持配置多个图文数据集,但每个应用仅能配置一个行为数据集。
在您开始配置行为数据集之前,请您注意: