当您需要从海量图片或视频中快速定位视觉语义匹配的内容(如“红色消防车在十字路口”),传统关键词检索失效。PolarDB for AI提供基于多模态Embedding的向量检索能力,支持对已上传媒体文件执行文本驱动的语义搜索,并返回带缩略图的可视化结果。该能力直接集成于PolarDB MySQL版集群控制台,无需部署独立向量数据库或管理模型服务。
方案架构
原始数据增强:为提升系统对视觉内容的深度理解能力,特别是针对非典型场景(corner cases),系统集成了知识图谱本体库对原始图像数据进行增强。该过程通过为图像附加更精确、更丰富的语义标签,将泛化的描述(如“图中有一个行人”)细化为更具信息量的具体描述(如“图中有一个蹲着的行人”),从而显著提高后续数据召回的精准度。
查询扩写、Embedding与Rerank:检索过程采用三阶段优化策略以平衡召回率与准确率。首先,通过查询扩写(Query Expansion)技术,利用知识图谱本体库将用户的输入查询(如“倒地锥桶”)扩展为语义上更丰富的形式(如“倒地的交通锥”)。其次,基于扩展后的查询生成Embedding向量,这能扩大搜索范围以提高召回率。最后,引入一个Rerank模型对初步召回的结果集进行二次排序和精选,确保最终输出结果的高准确率。
Bad Case闭环与模型迭代:系统建立了一套Bad Case闭环反馈机制,用于持续优化模型表现。当出现不符合预期的结果时,这些Bad Case会经过人工标注和语义扩展,并被添加回基础数据集与知识图谱本体库中,以丰富原始多模态数据。在此基础上,系统会周期性地进行离线迭代,利用更新后的数据集对Embedding和Rerank模型进行微调,从而使模型能够从错误中学习,不断提升其准确性和鲁棒性。
准备工作
您需先开启PolarDB for AI功能并设置AI节点的数据库账号。
创建并初始化媒体数据集
创建数据集:
在页签内的数据集管理列表,单击创建数据集。
输入自定义数据集名称和描述完成创建数据集。

导入数据:
重要目前暂不支持自动授权,请提交工单与我们联系,以便为您的指定RAM用户进行授权。您需首先按照以下步骤授予指定的RAM用户相关权限,以便我们进行授权。
给指定RAM用户授权
PolardbaiOpenapiAccessPolicy、AliyunPolardbFullAccess以及指定的OSS Bucket权限(您也可以直接授予AliyunOSSFullAccess权限)。
单击刚才创建的数据集,操作列的导入数据。
填写需要导入的OSS路径,格式为
https://<您的OSS外网访问Bucket域名>/<您的文件夹路径>。例如,https://<your_bucket_name>.oss-cn-beijing.aliyuncs.com/path/to/directory。
执行Embedding:
单击刚才创建的数据集,操作列的执行embedding。
选择Embedding模型版本与向量化模式。
查看Embedding任务进度:等待您的数据集Embedding处理完成,实际执行时间与您的数据量相关。您可以在目标数据集下查看当前Embedding任务进度。

执行语义检索任务
对已向量化的数据集执行文本查询,获取语义最匹配的图片。
创建检索任务:在页签内的检索列表,可自定义筛选条件进行检索。单击检索后,会在生成指定的检索任务。

查看检索任务:您可检索任务列表中查看指定的检索任务的状态与进度。

查看检索结果:等待任务状态为成功完成后,您可以单击任务ID查看当前检索结果。
支持单击缩略图查看原图/放大图。
支持全选/单选指定的图片,或保存前N张图片为新的数据集,进行更精细化的数据集分类与检索。

(可选)导出元数据:等待任务状态为成功完成后,您可以单击导出元数据查看检索结果的明细(具体图片路径与Score)。

优化模型(模型微调)
为提升在您特定业务场景下的检索效果,您可以使用自己的数据对模型进行微调。模型微调的数据集与用于检索的数据集是相互独立的。
创建微调数据集并导入数据:
进入页签内的模型调优列表,在微调数据集区域中单击创建微调数据集。
输入自定义数据集名称和描述完成创建微调数据集。

导入数据:
单击刚才创建的数据集,操作列的导入数据。
填写需要导入的OSS路径,格式为
https://<您的OSS外网访问Bucket域名>/<您的文件夹路径>。例如,https://<your_bucket_name>.oss-cn-beijing.aliyuncs.com/path/to/directory。
部署打标服务:
数据导入后,您需要通过数据打标来告诉模型需要学习的内容。打标前,需先部署打标服务。
准备工作:请确认您已设置了AI节点的数据库账号。
在打标服务区域中单击部署。

在部署打标服务对话框中,设置服务的账号与密码,并选择为全部或部分微调数据集创建服务。
说明用户名需为任意邮箱格式。例如,
username@db4ai.com。密码长度需为8位数以上。

服务部署后,会显示在下方的服务列表中。您可以查看服务状态,并进行配置白名单(添加可访问该服务的IP网段)或删除打标服务操作。

配置服务访问权限:单击配置白名单,填写您本地环境的IP地址或地址段以支持访问打标服务。
说明白名单支持配置多个 IP(使用英文逗号
,分隔)以及CIDR格式的IP网段(如192.168.100.0/24)。
数据打标:当打标服务的状态变为正常后,即可开始数据打标。
在微调数据集列表中,先单击刷新按钮,刷新当前列表。
找到目标数据集,在其操作列单击打标,页面将跳转至Label Studio打标服务页面。

首次访问需要登录,请填写您之前设置的用户名和密码进行登录。

登录后,您会看到项目列表,单击您的微调数据集项目,进入项目页面将加载数据集中的所有图片。

在打标界面,您可以在项目设置(Project Settings)中添加与管理标签(Labels),并对图片进行标注。
添加与管理标签:
单击项目右上角的Settings,进入项目设置页面。

单击左侧导航栏中的Labeling Interface页面,您可以自定义标签或导入模板。
自定义模板:详细信息,请参考Label Studio Tags介绍。

导入模板:单击Browse Templates,可根据您的业务需求选择合适的模板。

对图片进行标注:例如,单击下方标签(如cat或dog),并使用矩形框工具框选目标对象。随后单击Submit提交标注。














