🧠

RAG Demo

Python 脚本

基于本地 LLaMA-2-7b-vicuna-Chinese 的 RAG 对话系统,使用 Chroma 向量库存储知识,支持自建本地知识库,无需联网即可与文档对话。

PythonLLaMA-2-7b-vicunaChromaLangChain本地 LLM

功能特色

  • 本地 LLM:基于 LLaMA-2-7b-vicuna-Chinese,完全离线运行
  • Chroma 向量库:文档切分后向量化存储,支持语义检索
  • LangChain 编排:模块化的 RAG 流程管理
  • 自动 GPU 分配:检测 CUDA 可用性,GPU 优先运行
  • 自建知识库:支持导入 .txt/.md 文件构建专属知识库

技术栈

语言Python
LLMLLaMA-2-7b-vicuna-Chinese
向量库Chroma
编排LangChain
嵌入sentence-transformers
运行环境NVIDIA GPU + CUDA

本地运行指南

1复制源码
cp -r mydemo/rag_src/ ~/RAGDemo/

源码位于 mydemo/rag_src/,包含 rag.py 和 data/ 目录

2安装依赖
cd ~/RAGDemo
pip install langchain langchain-community langchain-huggingface langchain-text-splitters chromadb sentence-transformers torch
3准备模型
# 下载 LLaMA-2-7b-vicuna-Chinese 权重到 HuggingFace 缓存目录

首次运行会自动从 HuggingFace 加载模型,需确保网络通畅

4运行 RAG 对话
cd ~/RAGDemo
python rag.py

自动检测 GPU/CPU,GPU 可用则使用 GPU 加速

💡 源码已保存在 mydemo/rag_src/rag.py

⚠️ 必须配备 NVIDIA GPU(CUDA)才能流畅运行,CPU 模式极慢。模型权重需约 14GB 存储空间。