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

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

目录

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

1. 用户和商户表述差异

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


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

2. 不同语种的表述差异

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


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

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

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


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

向量检索

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


向量检索的测试结果

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

向量化服务

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

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

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


向量的离线存储示例

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


用户使用召回示例

参考

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

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

相关推荐
لا معنى له6 分钟前
学习笔记:卷积神经网络(CNN)
人工智能·笔记·深度学习·神经网络·学习·cnn
蒙奇D索大10 分钟前
【数据结构】考研408 | 冲突解决精讲: 拉链法——链式存储的艺术与优化
数据结构·笔记·考研·改行学it
一直都在57210 分钟前
数据结构入门:二叉排序树的构建与相关算法
数据结构·算法
他是龙55120 分钟前
43:SQL注入进阶(请求类型、方法与格式实战)
数据库·sql
_Minato_21 分钟前
数据结构知识整理——复杂度的计算
数据结构·经验分享·笔记·算法·软考
listhi52023 分钟前
针对燃油运输和车辆调度问题的蚁群算法MATLAB实现
前端·算法·matlab
x_lrong34 分钟前
交叉验证笔记
笔记
木卫二号Coding37 分钟前
affine+docker+postgresql+备份数据库
数据库·docker·容器
月明长歌38 分钟前
【码道初阶】【LeetCode 102】二叉树层序遍历:如何利用队列实现“一层一层切蛋糕”?
java·数据结构·算法·leetcode·职场和发展·队列
云和数据.ChenGuang1 小时前
openEuler系统下安装MongoDB的技术教程
运维·数据库·mongodb·压力测试·运维工程师·运维技术