10分钟构建本地RAG应用

准备工作

本地模型

模型分为两种:

1.专有模型:闭源模型

  1. OpenAI GPT4
  2. Cluade

优点:强大的商业支持

缺点:付费、数据的隐私

2.开源模型(学习阶段)

  • 微软:Phi
  • Meta:Llama
  • deepseek

不需要联网

安装Ollama

  • Ollama:模型平台,可以安装各种模型:Qwen、Deepseek、Llama...
  • Llama:模型(最新 Llama)
arduino 复制代码
ollama run <模型的名字>

本身是运行XX模型的意思,如果没有该模型,会先去下载。

启动模型后,ollama 会启动一个服务,坚听 11434 端口。

bash 复制代码
curl http://localhost:11434/api/tags   # 查看本地模型

本地的一个聊天机器人

回头RAG应用基于这个聊天机器人。

RAG基本的理论

大语言模型的缺陷:回答问题基于训练过的数据。

RAG:Retrieval-Augmented Generation,检索增强生成。

RAG 就是临时给大模型外挂一个知识库

整个 RAG 的架构如下:

1. 数据索引

Data Indexing

数据索引主要是做下面几件事情:

  1. 加载文档(你要外挂的知识库)

  2. 切分成一个一个 chunks(块)

  3. 转换为高维度向量

  4. 将结果存储到向量数据库

    这是一只小猫。

csharp 复制代码
[0.71, 0.32, -0.56, ....]

2. 数据查询

Query

复制代码
介绍一下香蕉手机。

首先会把这个 Query 也转换成向量的形式。(方便计算)

拿到这个 Query Embeding 之后,去向量数据库里面找和 Query Embeding 相关的内容,取出相关内容的向量(Vector Embedding),然后将:

markdown 复制代码
1. Vector Embedding
2. 用户的问题

一起交给大模型进行处理。

相关推荐
Java后端的Ai之路2 小时前
RAG 还是 Agent 自主检索?Claude Code 删掉向量库之后,我把选型讲透了
开发语言·人工智能·prompt·agent·rag
泯泷4 小时前
一个小改动,让 Claude 在 SWE-bench 上刷新纪录:工具描述有多重要
llm·agent·claude
Csvn6 小时前
模型挂了全站 502?降级链让它先保住“有响应”(R04)
人工智能·aigc·agent
泯泷8 小时前
模型越聪明越健忘?“上下文腐烂”背后的 3 个解法
人工智能·llm·agent
吴凡wudianmei9 小时前
RAG 别只会向量检索:玄镜为什么加了「特征加权」
llm·agent
Erishen9 小时前
Lume A2A 实战:让 Lume 应用接入分布式 Agent 协作网络
架构·开源·agent
陈随易9 小时前
Cmder 停更 17 个月,2.0 支持 Windows Terminal
前端·后端·程序员
kyriewen9 小时前
我扫了 814 个依赖,97 个还敢要 Node 10
前端·javascript·程序员
陈随易10 小时前
3000 万人在用的翻译插件,重写一遍就是一门生意
前端·后端·程序员
武子康11 小时前
Qwen-Drive 的 91.4 分,究竟选中了什么?
大数据·人工智能·agent