当前位置: 首页 > ds >正文

体验RAG GitHub/wow-rag

RAG(检索增强生成)是结合检索与生成式 AI 的技术框架。核心逻辑是先从外部知识库精准检索相关信息,再将其作为上下文输入大模型生成回答。技术上依赖检索引擎(如向量数据库、BM25)、大语言模型(如 GPT、LLaMA)及数据预处理技术。通过检索增强,解决大模型知识滞后、幻觉问题,提升回答准确性。应用广泛,涵盖智能客服、医疗问答、法律检索、教育辅导等场景,能基于特定领域知识提供精准、可控的生成内容。

wow-RAG 是 Datawhale 推出的 RAG 技术实践项目,网址:datawhalechina/wow-rag: A simple and trans-platform rag framework and tutorial

体验一下RAG

步骤一:在vscode里克隆

打开datawhale wow-rag的网址进行git clone

datawhalechina/wow-rag: A simple and trans-platform rag framework and tutorial

点击code,选择HTTPS复制粘贴web URL

打开vscode,点击左上角的图标“资源管理器”

接下来,点击中间的蓝色按钮“克隆仓库”

接下来在屏幕上方会出现一个窗口,在这里粘贴刚才复制的web URL

然后选择自己想要存储的位置就好了,如果克隆失败的话,问题大概率出现在网络连接,可以尝试更换VPN来访问github

步骤二:创建虚拟环境

在 VSCode 中,通过顶部菜单选择 终端 > 新建终端

确保终端的当前路径是仓库根目录(例如 C:\Users\你的用户名\Desktop\wow-rag)

运行以下命令:

python -m venv rag-venv

步骤三:激活虚拟环境

在终端里输入:

.\rag-venv\Scripts\activate

如果运行失败,会出现以下报错:

135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 1
+ .\rag-venv\Scripts\activate
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

此bug出现的原因为遇到了PowerShell 的执行策略限制问题,这是 Windows 系统中常见的安全机制。当执行策略设置为受限模式时,系统会禁止运行未签名的脚本(如虚拟环境的激活脚本)。

推荐的解决方案为在当前 PowerShell 会话中临时放宽执行策略,仅允许运行当前虚拟环境的激活脚本:

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass .\rag-venv\Scripts\activate

代码Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass:将当前 PowerShell 会话的执行策略临时设置为允许所有脚本运行(仅对当前会话有效,关闭后自动恢复默认策略)。执行此命令后,再尝试激活虚拟环境即可成功

如果你不想修改 PowerShell 执行策略,可以使用其他终端(使用 CMD 或 Git Bash)

另外,也可以使用永久解决方案,这需要管理员权限,将执行策略设置为允许本地脚本运行(需谨慎操作,可能影响系统安全性,不推荐)。先以管理员身份打开 PowerShell,在开始菜单中搜索 "PowerShell",右键点击并选择 "以管理员身份运行"。接下来设置执行策略:

Set-ExecutionPolicy RemoteSigned

RemoteSigned 策略允许运行本地创建的脚本,但需要对从网络下载的脚本进行数字签名。这是相对安全且常用的设置。

激活成功后,终端前缀会显示

 这代表着激活成功

步骤四:安装依赖

cd backend

执行后,终端路径会变为 ...\wow-rag\backend

输入:

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

在 backend 目录下运行:

python main.py

如果一切正常,你会看到后端服务启动的日志,通常会显示监听的端口(如 http://localhost:8000)

步骤五:运行前端界面

方法一

在wow-rag/frontend目录下双击chat.html,在文本框中输入问题,然后点击发送按钮即可体验流式对话。 或者,在wow-rag/frontend目录下打开终端,输入这行代码:

python -m http.server 8080 --bind 0.0.0.0

方法二

在 VSCode 中,点击终端面板右上角的 + 号,打开第二个终端

输入:

cd frontend

接下来输入:

python -m http.server 8080 --bind 0.0.0.0

访问应用:在浏览器中打开 http://127.0.0.1:8080/chat.html,即可开始使用流式对话功能

# 步骤1:临时允许当前会话运行脚本
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass# 步骤2:激活虚拟环境
.\rag-venv\Scripts\activate# 步骤3:进入后端目录(激活后执行)
cd backend# 步骤4:启动后端服务
python main.py

在文件目录下打开chat.html文件,就可以进行对话

参考文章

datawhalechina/wow-rag: A simple and trans-platform rag framework and tutorialhttps://github.com/datawhalechina/wow-rag

http://www.xdnf.cn/news/15533.html

相关文章:

  • HTML 文本格式化标签
  • Redis7持久化
  • TextIn:大学生的文档全能助手,让学习效率飙升
  • 【JAVA】监听windows中鼠标侧面键的按钮按下事件
  • React之旅-06 Ref
  • 波兰无人机具身导航基准测试与最新进展!FlySearch:探索视觉语言模型的探索能力
  • python学智能算法(十八)|SVM基础概念-向量点积
  • 深入了解linux系统—— 进程信号的产生
  • 基于Snoic的音频对口型数字人
  • OPC数采服务器软件Takebishi为何比Kepware实施成本更低?
  • I/O 多路复用实现方式
  • kafka的部署
  • 第十二批深度合成算法备案情况
  • 分布式系统中设计临时节点授权的自动化安全审计
  • Codeforces Round 787 (Div. 3)(A,B,C,D,E,F,G)
  • NSSCTF Web 一点学习
  • 【2025/07/14】GitHub 今日热门项目
  • 015 程序地址空间入门
  • muduo面试准备
  • ThreadLocal深度解析:结构、存储机制与最佳实践
  • Linux ACL权限策略
  • 分享三个python爬虫案例
  • Docker搭建Redis分片集群
  • 【PTA数据结构 | C语言版】字符串连接操作
  • Kotlin集合接口
  • 【数据同化案例1】ETKF求解参数-状态联合估计的同化系统(完整MATLAB实现)
  • 问题记录:Fastjson序列化-空值字段处理
  • 跨域中间件通俗理解
  • 日记-生活随想
  • LVS负载均衡集群概述