AI创想

标题: 一文让你搞懂向量数据库!结合大模型Agent,简直不要太好用,大模型入门到精通,收藏这篇就足够了! [打印本页]

作者: dayaoxianren    时间: 5 小时前
标题: 一文让你搞懂向量数据库!结合大模型Agent,简直不要太好用,大模型入门到精通,收藏这篇就足够了!
作者:CSDN博客
在最近两年的时间里,我们正处于人工智能革命浪潮中。
(, 下载次数: 0)


以 ChatGPT 为代表的大语言模型问世,它在带来巨大震撼的同时,其天然缺陷和诸多限制也让开发者颇为困扰,比如存在输入上下文 token 限制、不具备记忆能力等问题。
于是,向量数据库应运而生,解决了大模型长时记忆的问题,同时开发者还发现不止于此,向量数据库还有助于解决大模型幻觉问题(即胡说八道)
下面,让我们一起来了解一下究竟什么是向量数据库,向量数据库的原理是什么?
一、什么是向量数据库

一句话概括:向量数据库的核心是把文本转换为向量,然后存储在向量数据库中,并提供向量相似性检索
当用户输入问题时,将问题也转化为向量,在向量数据库中查找最相似的上下文向量,最后将文本返回给用户。
举个例子:
当有一份文档需要 GPT 处理时,假设这份文档是客服培训资料或操作手册,可先将这份文档的所有内容转化为向量,并存储到向量数据库中。
然后当用户提出相关问题时,把用户的搜索内容转换为向量,在向量数据库中搜索最相似的上下文向量,再返回给 GPT。
这样不仅能大幅减少 GPT 的计算量,提高响应速度,更重要的是能降低成本,并避开 GPT 的 tokens 限制。
(, 下载次数: 0)


再举个例子:
当和 ChatGPT 之间有一段很长的对话时,可以将过去的对话以向量的形式保存起来。
当向 ChatGPT 提问时,将问题转化为向量,对过去所有的聊天记录进行语义搜索,找到与当前问题最相关的 “记忆”,一起发送给 ChatGPT,从而极大提高 ChatGPT 的输出质量。
二、向量数据库的技术原理

前面简单介绍了什么是向量数据库,接下来,让我们一起来了解一下向量数据库的技术原理!
2.1 词嵌入技术

传统数据库一般通过不同的索引方式(如 B Tree、倒排索引)和关键词匹配等方法实现,本质上基于文本精确匹配,语义搜索功能较弱。
例如,搜索 “小狗”,只能获取带有 “小狗” 关键词的结果,无法得到 “柴犬”“哈士奇” 等结果。
因为 “小狗” 和 “柴犬” 是不同关键词,传统数据库无法识别它们的语义关系。
可以使用模型提取不同关键词的特征,得到特征向量,不同向量之间可通过内积或余弦判断其相似关系,这样就可以使用特征向量进行语义搜索。
(, 下载次数: 0)


我们将关键词转换为特征向量的过程称为Embeding。
2.2 距离度量

下面,我们来了解一下如何度量两个向量的相似度。目前常见的向量相似性的度量方法有三种:
欧式距离

欧式距离表示两个向量的距离,计算公式如下:

(, 下载次数: 0)


欧式距离可以反应两个向量之间的绝对距离,适用于需要考虑向量长度的相似度计算。
例如,在推荐系统中,需要根据用户的历史行为来推荐相似的商品,这种情况下,需要考虑用户历史行为的数量,而不仅仅是用户历史行为相似度。
(, 下载次数: 0)


余弦相似度

余弦相似度表示两个向量之间夹角的余弦值,计算公式如下:

(, 下载次数: 0)


其中,和表示两个向量的模长,和表示向量,表示点积。
余弦相似度因为对向量做了归一化,所以对长度并不敏感,适合计算文档相似性。
(, 下载次数: 0)


点积

点积是指两个向量之间的点积值,计算公式如下:

(, 下载次数: 0)


其中和表示向量,和表示向量的第个元素。
点积的有点是计算速度快,元素相乘并相加即可,同时兼顾了长度和方向,适用于图像识别、语义检索等场景。将归一化后的向量做点积,实际上就是余弦相似度。
(, 下载次数: 0)


2.3 相似性检索

我们知道,可以通过比较向量之间的距离来判断他们相似度,那么如何将其应用到真实场景中呢?
想要在海量的向量中找到和查询向量最相似的向量,最朴素的方法是:查询向量和数据库中的所有向量都进行一次计算,然后从中找出来距离最小的TopK个向量。
朴素方法的好处是,召回的向量一定是全局最相似的,缺点也很明显,就是计算量太大,太耗时。
所以,我们需要一种高效的算法来解决这个问题。
目前,业界主流的方法是通过构建图索引的方式来时间最近邻检索,比较有名的是Hierarchical Navigable Small Word(HNSW)算法。
HNSW是一种基于图的近似最近邻搜索算法,主要用于在极大量的候选集中快速找到与查询点(Query)最近邻的K个元素。其结构如下:
(, 下载次数: 0)


下面简述一下HNSW算法步骤:
建库(构建索引)

检索(最近邻检索)

HNSW 算法具有高效性,通过构建多层超平面将高维数据点组织成层次化结构,降低查找最近邻时间复杂度至O(log n)。
具有近似性,采用小世界导航图结构使搜索结果有近似性且可通过调整参数平衡近似程度与搜索性能。
同时还具有可扩展性,能轻松支持新增、删除数据点及高维空间搜索。
三、总结

本文主要介绍向量数据库的原理与实现,内容涵盖向量数据库的基本概念、相似性搜索算法、相似性测量算法。
向量数据库是一个新兴领域,当前大部分向量数据库公司的估值因 AI 和 GPT 的发展而快速增长。
然而,在实际业务场景中,向量数据库的应用场景目前还较少。
去除浮躁因素,向量数据库的应用场景有待开发者和业务专家挖掘。
想入门 AI 大模型却找不到清晰方向?备考大厂 AI 岗还在四处搜集零散资料?别再浪费时间啦!2025 年 AI 大模型全套学习资料已整理完毕,从学习路线到面试真题,从工具教程到行业报告,一站式覆盖你的所有需求,现在全部免费分享!





欢迎光临 AI创想 (https://www.llms-ai.com/) Powered by Discuz! X3.4