大模型学习笔记 - 第一期 - Milvus向量数据库

大模型学习笔记 - 向量数据库

目录

传统文字检索(无嵌入)面临的困境

1. 用户和商户表述差异

​ 如果商户维护了一个名为"带宠物"的设施服务标签,如果有一部分用户的输入是"能够带宠物",相关的设施服务和酒店就无法被搜索到。


用户和商户表述差异示例图

2. 不同语种的表述差异

  • 当语种不同的时候,相同意思的搜索可能检测不到。


不同语种的表述差异示例图

3. 不同背景下的音译表述差异

  • 由于音译表述的差异,用户可能使用不同的拼写或注音来搜索同一个词或短语,如果搜索引擎无法正确理解用户的音译表述,用户换一种音译翻译词搜索就无法找到相应的结果。


不同背景下的音译表述差异示例图

向量检索

  • 对于上述的这些问题,通常尝试的是对一些词的额外可能会搜索的词也进行维护(也就是各类同义词等等),但是这样的工程量非常大,所以想着尝试一些其他方式。
  • 通过上面的问题分析,可以看到,携程酒店搜索面临着泛化召回和模糊召回的场景需求。为了能够满足需求,团队考虑了使用向量查询 来帮助实现更准确的搜索。向量查询是一种基于向量空间模型 的信息检索方法,其基本思想是将查询和文档表示为向量,通过计算它们之间的相似度来确定匹配程度,以此来召回与查询最相关的文档。


向量检索的测试结果

  • 通过上面的一些测试示例,可以发现,对于计算向量之间的距离(相似度)等方式进行检索,可以做到比较精准的查询,哪怕表述存在不同。

向量化服务

向量化服务主要包含三个方面的工作,即在线向量服务、实体数据离线向量化和向量化召回服务。

在线向量服务:通过文本在线向量化服务,用户可以将文本数据转换为数值向量表示,从而方便进行文本相似度计算等任务。使用的是 multilingual-e5 预训练的文本向量模型,可以直接使用这些模型进行文本向量化,无需自行训练。

实体数据离线向量化:该服务将实体数据转化为向量形式并做持久化,以便后续的向量检索和召回使用。


向量的离线存储示例

向量化召回服务:向量化召回服务会对召回的向量会进行相关的依赖检查,确保召回的实体满足业务需求。最终,该服务会返回 TOPK 个最相似的满足依赖检查的实体。


用户使用召回示例

参考

用户案例分析:用户案例|向量引擎在携程酒店搜索中的应用场景和探索 - Zilliz 向量数据库

b站视频:大模型落地,你必须要懂的Milvus向量数据库_哔哩哔哩_bilibili

相关推荐
YuTaoShao8 小时前
【LeetCode 每日一题】3634. 使数组平衡的最少移除数目——(解法二)排序 + 二分查找
数据结构·算法·leetcode
wangluoqi8 小时前
26.2.6练习总结
数据结构·算法
Q741_1478 小时前
C++ 优先级队列 大小堆 模拟 力扣 703. 数据流中的第 K 大元素 每日一题
c++·算法·leetcode·优先级队列·
倔强的石头_8 小时前
关系数据库替换用金仓:数据迁移过程中的完整性与一致性风险
数据库
Elastic 中国社区官方博客8 小时前
使用 Groq 与 Elasticsearch 进行智能查询
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
一战成名9968 小时前
深度解析 CANN 模型转换工具链:从 ONNX 到 OM
人工智能·学习·安全·开源
木井巳8 小时前
【递归算法】二叉搜索树中第K小的元素
java·算法·leetcode·深度优先·剪枝
失忆爆表症8 小时前
01_项目搭建指南:从零开始的 Windows 开发环境配置
windows·postgresql·fastapi·milvus
铉铉这波能秀8 小时前
LeetCode Hot100 中 enumerate 函数的妙用(2026.2月版)
数据结构·python·算法·leetcode·职场和发展·开发
穿过锁扣的风8 小时前
一文搞懂 SQL 五大分类:DQL/DML/DDL/DCL/TCL
数据库·microsoft·oracle