wow-rag
RAG(Retrieval Augmented Generation)是一种结合了检索和生成的AI技术框架。它通过从知识库中检索相关信息来增强大语言模型的生成能力,可以帮助模型生成更准确、更可靠的回答。本项目旨在探索和实现RAG技术,包括文档处理、向量检索、prompt engineering等核心模块,帮助开发者更好地理解和应用RAG技术。
秉持着自塾(zishu.co)学用合一的理念,有教程必有产品,wow-rag会同时打造RAG的教程和产品。学到的知识用来打造产品,打造产品用到的知识总结进教程。我们将会为企业打造一个系列的极简、跨平台、易定制的RAG产品。
快速体验RAG
第一步:克隆仓库到本地,克隆后,可以麻烦给我们点个star吗?鼓励我们做得更好!
git clone https://github.com/datawhalechina/wow-rag.git
第二步:用python自带的venv模块创建虚拟环境
推荐使用python3.9以上版本。
在wow-rag目录下打开终端,运行以下命令:
python -m venv rag-venv
第三步:激活Windows虚拟环境
在第二步的终端环境中,运行以下命令:
.\rag-venv\Scripts\activate
第四步:安装依赖
输入cd backend
,进入到wow-rag/backend目录下,运行以下命令:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
第五步:运行后端服务
在wow-rag/backend目录下打开终端,运行以下命令:
python main.py
第六步:运行前端页面
在wow-rag/frontend目录下双击chat.html,在文本框中输入问题,然后点击发送按钮即可体验流式对话。
或者,在wow-rag/frontend目录下打开终端,输入这行代码:
python -m http.server 8080 --bind 0.0.0.0
然后在浏览器中输127.0.0.1:8080/chat.html即可体验流式对话。
课程内容
- 第1课:手搓一个土得掉渣的RAG
- 第2课:正式上路搞定模型
- 第3课:初步体验问答引擎
- 第4课:最脏最累的文档管理
- 第5课:流式部署
项目附属文件
- base.py 可以用来替换Lib\site-packages\llama_index\embeddings\openai\base.py这个文件。其实就是修改了四行代码。懒人专用。我们不要做一个懒人,而是动动手自己照着教程找到源代码的文件修改指定的四行即可。希望你永远不要用到这个文件。
- 本项目的前端页面chat.html,直接双击打开。在文本框中输入问题,然后点击发送按钮即可体验流式对话。
- 问答手册.txt 本项目第一课的那些文本。懒人专用。我们不要做一个懒人,而是动动手自己找篇长文本新建一个txt文件。希望你永远不要用到这个文件。
- learn.ipynb 本项目的所有运行代码。懒人专用。我们不要做一个懒人,而是动动手把本教程所有代码自己复制到空白ipynb文件中亲自运行。希望你永远不要用到这个文件。
参与贡献
如果你对 Datawhale 很感兴趣并想要发起一个新的项目,欢迎查看 Datawhale 贡献指南。
待做清单
贡献者名单
姓名 |
职责 |
简介 |
黎伟 |
项目负责人 |
datawhale成员,构建整个教程 |
坐看云起 |
贡献者 |
内测学员,第2课智谱官方包接口 |
阿鲁 |
贡献者 |
内测学员,第2课自定义模型接口 |
吴小龙 |
贡献者 |
内测学员,第5课美化chat.html |
宏辉 |
贡献者 |
助教,第2课构建自塾开放API服务 |
胡琦 |
贡献者 |
助教,后端engine.py接入自塾开放API服务 |
邢思宇 |
贡献者 |
塾员,计网和操作系统的文档 |
关注我们
扫描下方二维码关注公众号:Datawhale
LICENSE

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
注:默认使用CC 4.0协议,也可根据自身项目情况选用其他协议
wow-rag
RAG(Retrieval Augmented Generation)是一种结合了检索和生成的AI技术框架。它通过从知识库中检索相关信息来增强大语言模型的生成能力,可以帮助模型生成更准确、更可靠的回答。本项目旨在探索和实现RAG技术,包括文档处理、向量检索、prompt engineering等核心模块,帮助开发者更好地理解和应用RAG技术。
秉持着自塾(zishu.co)学用合一的理念,有教程必有产品,wow-rag会同时打造RAG的教程和产品。学到的知识用来打造产品,打造产品用到的知识总结进教程。我们将会为企业打造一个系列的极简、跨平台、易定制的RAG产品。
快速体验RAG
第一步:克隆仓库到本地,克隆后,可以麻烦给我们点个star吗?鼓励我们做得更好!
第二步:用python自带的venv模块创建虚拟环境 推荐使用python3.9以上版本。 在wow-rag目录下打开终端,运行以下命令:
第三步:激活Windows虚拟环境 在第二步的终端环境中,运行以下命令:
第四步:安装依赖 输入
cd backend
,进入到wow-rag/backend目录下,运行以下命令:第五步:运行后端服务 在wow-rag/backend目录下打开终端,运行以下命令:
第六步:运行前端页面 在wow-rag/frontend目录下双击chat.html,在文本框中输入问题,然后点击发送按钮即可体验流式对话。 或者,在wow-rag/frontend目录下打开终端,输入这行代码:
然后在浏览器中输127.0.0.1:8080/chat.html即可体验流式对话。
课程内容
项目附属文件
参与贡献
如果你对 Datawhale 很感兴趣并想要发起一个新的项目,欢迎查看 Datawhale 贡献指南。
待做清单
贡献者名单
关注我们
扫描下方二维码关注公众号:Datawhale
LICENSE
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
注:默认使用CC 4.0协议,也可根据自身项目情况选用其他协议