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

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

目录

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

1. 用户和商户表述差异

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


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

2. 不同语种的表述差异

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


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

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

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


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

向量检索

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


向量检索的测试结果

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

向量化服务

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

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

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


向量的离线存储示例

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


用户使用召回示例

参考

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

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

相关推荐
gsfl2 分钟前
双指针算法
算法·双指针
郝学胜-神的一滴3 分钟前
矩阵的奇异值分解(SVD)及其在计算机图形学中的应用
程序人生·线性代数·算法·矩阵·图形渲染
专业软件系统开发2 小时前
药品说明书查询系统源码 本地数据库 PHP版本
数据库·查询系统源码·说明书查询源码
电子_咸鱼5 小时前
LeetCode——Hot 100【电话号码的字母组合】
数据结构·算法·leetcode·链表·职场和发展·贪心算法·深度优先
仰泳的熊猫5 小时前
LeetCode:785. 判断二分图
数据结构·c++·算法·leetcode
rit84324995 小时前
基于MATLAB实现基于距离的离群点检测算法
人工智能·算法·matlab
冉冰学姐6 小时前
SSM足球爱好者服务平台i387z(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·ssm 框架·足球爱好者服务平台
大飞记Python6 小时前
部门管理|“编辑部门”功能实现(Django5零基础Web平台)
前端·数据库·python·django
递归不收敛6 小时前
大语言模型(LLM)入门笔记:嵌入向量与位置信息
人工智能·笔记·语言模型
冷雨夜中漫步7 小时前
高级系统架构师笔记——数据库设计基础知识(5)Armstrong公理系统、无损连接和有损连接
笔记·系统架构