Skip to main content

基于Jetson和LlamaIndex的本地RAG

前言

如今,越来越多的人开始使用大型语言模型来解决日常问题。 然而,大型语言模型在回答某些问题时可能会出现幻觉,并向用户提供不正确的信息。尽管如此, RAG技术 可以通过向大型语言模型提供相关数据来减少幻觉的发生。 因此,使用RAG技术来减少大型语言模型中幻觉的生成已成为一种趋势。

pir

在这里,我们向您介绍 基于Jetson的RAG, 它使用LlamaIndex 作为RAG框架, ChromaDB 作为向量数据库,以及量化的Llama2-7b模型 LLM MLC 作为问答模型。 通过这个本地RAG项目,它可以保护您的数据隐私,并为您提供低延迟的通信体验

硬件组件

reComputer (based on Jetson with RAM >= 16GB)

准备运行环境

Step 1: 安装 MLC Jetson Container

# Install jetson-container and its requirements
git clone --depth=1 https://github.com/dusty-nv/jetson-containers
cd jetson-containers
pip install -r requirements.txt

步骤 2:安装项目

# Install RAG project
cd data
git clone https://github.com/Seeed-Projects/RAG_based_on_Jetson.git

步骤 3:安装由 MLC LLM 量化的 Llama2-7b 模型

# Install LLM model
sudo apt-get install git-lfs
cd RAG_based_on_Jetson
git clone https://huggingface.co/JiahaoLi/llama2-7b-MLC-q4f16-jetson-containers

步骤 4:运行 Docker 并安装依赖

cd ../../
./run.sh $(./autotag mlc)
# Here you will enter the Docker, and the commands below will run inside the Docker
cd data/RAG_based_on_Jetson/
pip install -r requirements.txt
pip install chromadb==0.3.29

运行后 pip install chromadb==0.3.29 你将看到如下所示的界面。

pir

:::提示 可以忽略报错. :::

让我们运行它

# Run in the docker
python3 RAG.py

##项目拓展

在这个项目中,TXT 和 PDF 文档被解析为向量数据库,并使用 RAG 技术来减少模型对特定问题的幻觉。 未来,我们将使用多模态模型来支持图像和视频的检索.