我的 all-in-rag 学习笔记:初识 RAG—— 让 AI 从 “闭卷考试“ 变 “开卷考“

一、为什么我们需要 RAG?

那天调试公司的智能客服系统时,又遇到了熟悉的尴尬 ------ 用户问最新的产品保修政策,AI 一本正经地回复了去年已经废止的条款。老板在旁边皱着眉说:"这还不如人工客服靠谱。"

这大概就是所有 AI 从业者都会遇到的 "幻觉困境"。直到接触了 RAG 技术,我才找到破解这个困局的钥匙。

想象一下,当你让 AI 回答问题时,它不再只依赖自己脑子里那些可能过时的 "模糊记忆",而是先翻开一本 "实时更新的参考书"------ 这就是 RAG(检索增强生成)的核心逻辑。它就像给 AI 开了场 "开卷考试",既用得上平时积累,又能随时查阅最新资料。

最让我心动的是它解决了三个致命问题:

1. 知识保鲜难题公司产品迭代快,上个月刚发布的新功能,AI 总像失忆一样说错参数。RAG 让知识库像微信公众号一样能随时更新,上午录入的新信息,下午就能被 AI 调用。

2. 专业领域壁垒之前做医疗咨询系统时,法务总担心 AI 乱给诊断建议。现在好了,所有回答都能追溯到权威医学手册的具体章节,出错了能立刻找到源头。

3. 成本控制魔法老板原本计划斥资百万训练专属大模型,试用 RAG 后发现,用普通开源模型加行业知识库,效果竟然不相上下。算下来,每年能省出一个技术团队的预算。

二、从零开始搭建 RAG:准备工作清单

(一)、Deepseek API配置

1.1 API申请

要使用 Deepseek 提供的大语言模型服务,你首先需要一个 API Key。下面是申请步骤:

  1. 访问 Deepseek 开放平台 打开浏览器,访问 Deepseek 开放平台

  2. 登录或注册账号 如果你已有账号,请直接登录。如果没有,请点击页面上的注册按钮,使用邮箱或手机号完成注册。

  3. 创建新的 API 密钥 登录成功后,在页面左侧的导航栏中找到并点击 API Keys。在 API 管理页面,点击 创建 API key 按钮。输入一个跟其他api key不重复的名称后点击创建

  4. 保存 API Key 系统会为你生成一个新的 API 密钥。请立即复制并将其保存在一个安全的地方。

    注意:出于安全原因,这个密钥只会完整显示一次,关闭弹窗后就没法再看到了。

(二)、Cloud Studio 环境配置(国内环境推荐)

1、创建应用 在页面上方的导航栏中找到并点击 创建应用。选择 从 Git 仓库导入 ,在项目地址栏输入 https://github.com/datawhalechina/all-in-rag.git 后回车,将会自动为你创建标题和描述。

2、python环境配置

复制代码
sudo apt update
sudo apt upgrade -y
su ubuntu
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh
bash ~/miniconda.sh
source ~/.bashrc
conda --version

3、 API配置

复制代码
vim ~/.bashrc

4、创建并激活虚拟环境

复制代码
conda create --name all-in-rag python=3.12.7
sudo chown -R ubuntu:ubuntu code models
conda activate all-in-rag
cd code
pip install -r requirements.txt

三、四步实现你的第一个 RAG 系统

通过RAG demo 实现我的第一个RAG系统,主要是利用提供的"01_langchain_example.py"代码来执行

最终执行python 01_langchain_example.py,输出结果如下:

复制代码
content='根据上下文,文中举了以下例子:\n\n1.  **自然界中的羚羊**:羚羊出生后通过试错学习站立和奔跑,适应环境。\n2.  **股票交易**:通过不断买卖股票并根据市场反馈来学习如何最大化奖励。\n3.  **玩雅达利游戏(如Breakout、Pong)**:通过不断试错来学习如何通关。\n4.  **选择餐馆**:利用是去已知喜爱的餐馆;探索是尝试新的餐馆。\n5.  **做广告**:利用是采取已知最优的广告策略;探索是尝试新的广告策略。\n6.  **挖油**:利用是在已知有油的地方开采;探索是在新的地方钻井。\n7.  **玩游戏(如《街头霸王》)**:利用是总是采取某种特定策略(如蹲角落出脚);探索是尝试新的招式。' additional_kwargs={'refusal': None} response_metadata={'token_usage': {'completion_tokens': 183, 'prompt_tokens': 5550, 'total_tokens': 5733, 'completion_tokens_details': None, 'prompt_tokens_details': {'audio_tokens': None, 'cached_tokens': 0}, 'prompt_cache_hit_tokens': 0, 'prompt_cache_miss_tokens': 5550}, 'model_name': 'deepseek-chat', 'system_fingerprint': 'fp_eaab8d114b_prod0820_fp8_kvcache', 'id': '5267de24-6f61-4021-8977-1cc7ac7bb027', 'service_tier': None, 'finish_reason': 'stop', 'logprobs': None} id='run--d3c3e645-1fed-4541-b0ae-ece72d711642-0' usage_metadata={'input_tokens': 5550, 'output_tokens': 183, 'total_tokens': 5733, 'input_token_details': {'cache_read': 0}, 'output_token_details': {}}

我的期待:与RAG共成长,探索无限可能

作为一名RAG技术的学习者,我深感其潜力和魅力。我相信,在未来的日子里,RAG技术将在更多领域发挥重要作用,为我们带来更多惊喜和便利。而我,也将继续与RAG共成长,探索其无限可能。


以上就是我的All-in-RAG学习笔记:初识RAG。

相关推荐
小小8程序员2 小时前
图文排版天花板:Adobe InDesign 2025 安装步骤 高效排版指南:样式 + 自动化,效率翻倍
人工智能
搞机械的假程序猿2 小时前
普中51单片机学习笔记-红外遥控
笔记·学习·51单片机
说私域2 小时前
社交新零售下开源AI智能名片链动2+1模式商城小程序的创新与实践
人工智能·开源·零售
hssfscv2 小时前
JAVAweb学习笔记——JS
javascript·笔记·学习
子午2 小时前
【蔬菜识别系统】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积网络+resnet50算法
人工智能·python·深度学习·蔬菜识别
天***88963 小时前
在线教育小程序定制开发,知识付费系统AI问答网课录播APP
人工智能·小程序
qq7422349844 小时前
VitePress静态网站从零搭建到GitHub Pages部署一站式指南和DeepWiki:AI 驱动的下一代代码知识平台
人工智能·python·vue·github·vitepress·wiki
式5164 小时前
线性代数(五)向量空间与子空间
人工智能·线性代数·机器学习
yiersansiwu123d10 小时前
AI伦理治理:在创新与规范之间寻找平衡之道
人工智能