开启左侧

什么是向量数据库

[复制链接]
AI小编 发表于 4 小时前 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
作者:Lvan的前端笔记
向量数据库(Vector Database) 是一种专门用来存储和检索**向量(embedding)**的数据系统。它主要解决一个问题:如何在海量数据中找到“语义最相似”的内容
在 AI 时代(特别是大模型时代),它是非常核心的一种基础设施。

一、什么是向量(Embedding)

普通数据库存的是:
数据类型
用户名字符串
年龄数字
时间日期
向量数据库存的是:
  1. [0.123, -0.883, 0.225, ...]
复制代码
这种 几百到几千维的数字数组
这些向量通常由大模型生成,比如:
    OpenAI APISentence TransformersBERT
例如一句话:
  1. “猫在沙发上睡觉”
复制代码
会被转成:
  1. [0.132, 0.443, -0.887, ...]
复制代码
另一句话:
  1. “小猫在椅子上休息”
复制代码
生成的向量会 非常接近
所以就可以通过 向量距离 找到语义相似内容。
常见计算方式:
    余弦相似度欧式距离点积

二、为什么需要向量数据库

普通数据库做不了这种查询:
  1. 找出语义最相似的10条数据
复制代码
SQL数据库只能:
  1. WHERE name = "xxx"
复制代码
但 AI 需要的是:
  1. 查找最相似的文本
复制代码
比如:
用户问:
  1. 退款怎么操作?
复制代码
系统需要找到最接近的知识:
  1. 如何申请退款
  2. 退款流程
  3. 订单退款规则
复制代码
这个过程就是:
  1. 用户问题 -> embedding -> 向量搜索 -> 找到最相关内容
复制代码

三、向量数据库的核心能力

向量数据库主要解决三件事:
1 向量存储

存储:
  1. id
  2. vector
  3. metadata
复制代码
例如:
  1. {
  2. id: "doc1",
  3. vector: [0.11, 0.33, ...],
  4. text: "退款流程..."
  5. }
复制代码

2 相似度搜索

查询:
  1. 找最接近这个向量的K个数据
复制代码
也叫:
  1. KNN Search
复制代码
或者:
  1. ANN (Approximate Nearest Neighbor)
复制代码

3 混合搜索

很多数据库支持:
  1. 向量搜索 + 关键词搜索
复制代码
例如:
  1. 语义相似 AND 标签=技术
复制代码

四、常见向量数据库

目前主流向量数据库主要有这几类:
名称公司特点
MilvusZilliz最流行开源向量数据库
PineconePinecone云原生向量数据库
WeaviateWeaviate支持 GraphQL
QdrantQdrantRust写的,性能高
ChromaChromaLLM应用最常用
FaissMeta向量搜索库(不是完整DB)

国内常见

名称公司
Milvus国内最流行
Elastic Vector SearchElastic
OpenSearch Vector Engine阿里
DashVector阿里云

五、最典型使用场景

1 RAG(AI知识库)

这是 现在最火的场景
RAG =
  1. Retrieval Augmented Generation
  2. 检索增强生成
复制代码
流程:
  1. 文档
  2. 切分 chunk
  3. embedding
  4. 存入向量数据库
复制代码
用户提问:
  1. 问题 -> embedding
  2.       -> 向量搜索
  3.       -> 找到最相关文档
  4.       -> 给大模型
复制代码
最终:
  1. AI根据你的知识库回答
复制代码
典型技术:
    LangChainLlamaIndex

2 AI 搜索引擎

比如:
  1. 语义搜索
复制代码
用户搜索:
  1. 怎么申请退款
复制代码
系统能找到:
  1. 订单退款指南
  2. 退货规则
复制代码
即使没有关键词。

3 推荐系统

电商推荐:
  1. 用户行为 -> 向量
  2. 商品 -> 向量
复制代码
计算相似度:
  1. 用户向量 vs 商品向量
复制代码
推荐最匹配的商品。

4 图片 / 视频检索

例如:
上传一张猫的图片:
  1. 图片 -> embedding
复制代码
向量数据库搜索:
  1. 最相似图片
复制代码
类似:
    Google Images 的反向图片搜索

5 AI代码搜索

比如:
  1. 找一个 websocket reconnect 示例
复制代码
系统能找到语义类似代码。
很多 AI IDE 就是这样做的。

六、一个完整技术流程(AI知识库)

这是现在公司最常见架构:
  1. 文档
  2.   ↓
  3. 切分 chunk
  4.   ↓
  5. Embedding
  6.   ↓
  7. Vector DB
  8.   ↓
  9. 用户提问
  10.   ↓
  11. Embedding
  12.   ↓
  13. 向量搜索
  14.   ↓
  15. 相关内容
  16.   ↓
  17. LLM生成回答
复制代码
用到技术:
    embedding模型向量数据库大模型

七、为什么 AI 时代突然火了

因为所有东西都能变成向量:
数据embedding
文本text embedding
图片image embedding
音频audio embedding
视频video embedding
代码code embedding
所以:
  1. 万物皆可向量
复制代码
向量数据库就成了 AI时代的基础设施

八、如果你是程序员(重点)

你作为前端 / AI开发,其实最可能接触的是:
RAG + 向量数据库
例如:
做一个企业AI助手:
  1. 公司文档
  2. 产品说明
  3. 接口文档
  4. FAQ
复制代码
全部进向量数据库。
用户问:
  1. 接口限流是多少
复制代码
AI可以回答。

“RAG系统完整架构(企业级 AI 知识库怎么做)”
包括:
    文档怎么切 chunkembedding 怎么选向量数据库怎么设计检索怎么优化如何避免 AI 幻觉




原文地址:https://blog.csdn.net/weixin_43972437/article/details/158805250
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题
阅读排行更多+

Powered by Discuz! X3.4© 2001-2013 Discuz Team.( 京ICP备17022993号-3 )