当前位置: 首页
AI教程
阿里云百炼ES AI多模态搜索深度解析

阿里云百炼ES AI多模态搜索深度解析

热心网友 时间:2026-06-03
转载

导读:

在当今搜索场景中,多模态搜索的应用日益广泛,例如通过文字寻找图片、利用图片检索图片,甚至借助图片描述匹配其他描述。本文将以阿里云 Elasticsearch(ES)与千问 VL 大模型为核心,完整演示从图片特征提取到向量检索的实战流程。提供的代码示例覆盖以文搜图、以文搜文、以图搜图、以图搜文四种常见场景,开箱即用。

效果展示>>

背景信息

当图片和文本这类非结构化数据并存时,传统的关键词匹配往往力不从心。更高效的做法是先将它们转换为向量,再通过向量检索快速命中相似内容。本实践使用以下三个工具:

  • Elasticsearch:作为向量存储与检索的核心数据库,此处选用 8.17 及以上版本。

  • 千问 VL 模型:负责从图片中提取描述与关键词,相当于为每张图片生成一段自然语言说明。

  • DashScope Embedding API:将图片和文本分别转化为向量,从而在统一向量空间内实现跨模态匹配。

具体能实现哪些功能?

  • 以文搜图:输入一句话,找出最匹配的图片。

  • 以文搜文:输入一句话,找出最相似的图片描述。

  • 以图搜图:输入一张图片,找出视觉上最相近的图片。

  • 以图搜文:输入一张图片,找出内容描述最接近的文本。

系统架构

下图展示了整个多模态搜索系统的架构概览,从数据录入、向量生成到检索响应,流程一目了然。

前提条件

动手前请确认环境是否准备就绪:

  • 一个 8.17 及以上版本的阿里云 Elasticsearch 实例(创建步骤参见官方文档)。

  • 已开通百炼服务,并获取可用的 API-Key。

  • 本地 Python 版本 ≥ 3.8。

环境准备

安装依赖

执行以下命令,一次性安装所需的库:

pip install elasticsearch dashscope requests streamlit

下载示例数据集

数据集来自公开的图片检索示例包,运行以下命令下载并解压:

wget https://github.com/milvus-io/pymilvus-assets/releases/download/imagedata/reverse_image_search.zip
unzip -q -o reverse_image_search.zip

解压后会得到一个 CSV 文件和多张图片样本。

目录结构

建议将工作目录组织如下:

multi_modal_search/
├── reverse_image_search.csv   # 数据集文件
├── train/                     # 图片目录(解压后生成)
│   └── *.jpg
├── scripts/                   # 脚本目录
│   ├── write.py               # 数据写入脚本
│   ├── read.py                # 查询脚本
│   └── demo.py                # 前端演示脚本

核心代码介绍

写入流程

写入过程分为两步:首先使用千问 VL 模型为每张图片生成一段描述文本,并存入 text_input 字段;然后调用多模态 Embedding 模型,分别将原始图片和描述文本转换为向量,对应 image_embeddingtext_embedding。这样一来,后续无论使用图片还是文字进行查询,都能在同一向量空间内完成比较。

为便于演示,本示例仅处理前 200 张图片。

完整代码可参考官方文档中的 write.py 脚本。请根据实际情况替换以下参数:

  • ES 连接地址、端口、用户名、密码
  • 百炼 API Key

执行 python3 write.py 后,控制台会逐条显示每张图片生成的描述及处理进度。

查询流程

查询脚本定义了四种检索类型。无论查询输入是文本还是图片,都会先调用百炼多模态模型生成对应的向量,然后根据检索类型匹配 image_embeddingtext_embedding 字段,最终返回最相似的结果。

详细代码见 read.py 脚本,其中 ES 配置参数与写入流程保持一致。

前端 Demo

基于 Streamlit 搭建的简易演示界面,可在浏览器中直接交互体验四种搜索模式。代码位于 demo.py 中。

操作流程

步骤一:配置参数

运行脚本前,请打开 write.pyread.py,修改以下配置项:

# ES配置
ES_HOST = ""        # 替换为您的ES实例地址
ES_PORT = 9200
ES_USER = ""        # 替换为您的ES用户名
ES_PASSWORD = "" # 替换为您的ES密码

# 百炼API配置(仅write.py需要)
DASHSCOPE_API_KEY = ""  # 替换为百炼平台中可用的API Key

步骤二:加载数据集

进入 scripts 目录,执行数据写入脚本:

cd scripts
python3 write.py

成功执行后,您会看到类似下面的输出:

INFO - [1/7] 创建 ES 客户端...
INFO - ES连接状态: xxx...
INFO - 处理第 1/200 张图片: xxx
INFO - 描述: xxx
...
INFO - 处理完成!成功: 200, 失败: 0

步骤三:验证数据写入(可选)

运行查询脚本确认数据已正确写入:

python3 read.py

以“以文搜图”为例,搜索关键词“狮子”,结果类似:

以文搜图 - 搜索关键词"狮子"
✓ 得分: 0.8077 - 一只狮子坐在倒下的树干上,周围是茂密的灌木和树枝
✓ 得分: 0.7732 - 雄壮的狮子站在草地上,鬃毛在阳光下威武宁静
✓ 得分: 0.7566 - 雄狮特写,鬃毛浓密,眼神锐利

步骤四:启动前端演示

streamlit run demo.py

浏览器会自动打开 http://localhost:8501,界面直观易用。

步骤五:多模态向量检索

在搜索设置中选择检索类型(以文搜图、以文搜文、以图搜图、以图搜文),输入文字或上传图片,点击搜索即可查看匹配结果。

来源:https://juejin.cn/post/7646633153139359787

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
2026实测解析GPT-5.5模型能力详解与国内合规使用规范

2026实测解析GPT-5.5模型能力详解与国内合规使用规范

2026年,AI大模型迎来了又一次迭代升级。GPT-5 5凭借在多模态精细化处理能力上的跨越式突破,正逐步成为职场办公、内容创作、代码开发以及数据优化等领域的核心生产力工具。然而,对国内多数用户而言,当前仍面临不少现实难题:渠道杂乱、合规边界模糊、账号频繁被封、数据泄露风险——各类非正规镜像站、共享

时间:2026-06-03 21:20
分时操作系统和实时操作系统的主要区别

分时操作系统和实时操作系统的主要区别

分时操作系统和实时操作系统区别 ?️ 操作系统家族里,有两类系统经常被放在一起比较:分时操作系统和实时操作系统。它们虽然都叫“操作系统”,但设计哲学、工作机制和应用场景可以说是天差地别。一个追求“公平共享”,一个追求“确定性响应”。这篇文章打算从定义、核心机制、调度策略、实际应用等维度,把这两者的本

时间:2026-06-03 21:20
企业AI智能体从零搭建实战踩坑经验全记录

企业AI智能体从零搭建实战踩坑经验全记录

去年开始用腾讯云智能体开发平台(ADP)跑了几个企业项目,从最基础的客服Bot一路干到多Agent协同系统,中间踩的坑不少,但积累下来的经验价值也相当可观。这篇文章就聊聊实际落地过程里的那些关键节点和教训,给同样在腾讯云上折腾AI Agent的朋友做个参考。为什么选腾讯云ADP而不是从零搭建做第一个

时间:2026-06-03 21:20
Selenium自动化测试入门:从环境搭建到首个可维护用例

Selenium自动化测试入门:从环境搭建到首个可维护用例

Selenium 入门的核心不在于记住多少 API,而在于把三件事想清楚:环境别装错版本、等待机制别用 sleep、用例结构别写成流水账。下面按照“装环境 → 跑通第一个脚本 → 理解等待 → 选对定位器 → 拆成 Page Object”的顺序走一遍,每一步都附上代码,踩过的坑直接标出来。 Sel

时间:2026-06-03 21:20
专业表格魔法师 QoderWork CN 让脏数据秒变仪表盘神器

专业表格魔法师 QoderWork CN 让脏数据秒变仪表盘神器

使用案例 今天聊聊怎么用阿里巴巴的 QoderWork CN 桌面应用智能体,把 Excel 里那堆乱糟糟的原始数据清洗干净,再做成可视化的看板。整个过程基本不需要写代码,全靠自然语言对话就能搞定。下面就用一个实际案例,把操作步骤拆开来讲。 步骤一:安装并注册 QoderWork CN 账号 先到

时间:2026-06-03 21:20
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全
  • 日榜
  • 周榜
  • 月榜