00000209
RAG(检索增强生成)是一种将检索技术与生成式AI结合的技术,可以让AI模型基于特定知识库生成更准确的回答。本指南将帮助你在两台服务器上部署一个基于DeepSeek-R1(671B - int8)大语言模型的RAG系统,使用本地数据辅助问答生成,并开启一个WEB端口作为用户交互界面。
本文档的Deepseek部署是基于DeepSeek-V3及DeepSeek-R1 671B在天数加速卡部署指南-知识分享平台的双服务器模式,详细步骤请参考原文档。
Ray是一个用于分布式计算的框架,可以在多台机器上分布式运行AI工作负载。
在主节点(n110)执行:
停止任何现有Ray服务:
ray stop
ray start --block --head --port=6379 --num-gpus=16
在子节点(n113)执行:
ray stop
export GLOO_SOCKET_IFNAME=bond0;export NCCL_SOCKET_IFNAME=bond0;export VLLM_FORCE_NCCL_COMM=1;export MASTER_ADDR="10.31.10.110"
ray start --block --address=$MASTER_ADDR:6379 --num-gpus=16
环境变量说明:
GLOO_SOCKET_IFNAME=bond0
: 指定Gloo(一个通信库)使用bond0网络接口 NCCL_SOCKET_IFNAME=bond0
: 指定NCCL(NVIDIA Collective Communications Library)使用bond0网络接口 VLLM_FORCE_NCCL_COMM=1
: 强制VLLM使用NCCL进行通信 MASTER_ADDR="10.31.10.110"
: 设置主节点地址 在主节点(n110)执行:
export NCCL_SOCKET_IFNAME=bond0;export VLLM_FORCE_NCCL_COMM=1;export GLOO_SOCKET_IFNAME=bond0
python3 -m vllm.entrypoints.openai.api_server --model /data1/model/DeepSeek-R1-int8/ --served-model-name rag_llm_model --pipeline-parallel-size 4 --tensor-parallel-size 8 --trust-remote-code --max-model-len 10240
参数说明:
--pipeline-parallel-size 4
: 使用4路流水线并行 --tensor-parallel-size 8
: 使用8路张量并行 --max-model-len 10240
: 设置最大序列长度为10240个token 本文档的RAG和交互端口部署是基于DeepSeek-R1 + RAG系统部署测试-知识分享平台的测试,详细步骤请参考原文档。
在子节点(n113)执行:
git clone ssh://git@bitbucket.iluvatar.ai:7999/psr/dist_rag_demo.git
add_data_to_chroma.py
data_path_list
执行脚本将数据添加到Chroma:
Chroma是一种向量数据库,用于存储文档的嵌入表示,以便进行语义搜索。
python3 add_data_to_chroma.py
cd dist_rag_demo/vector_db_server
bash launch_server.sh
在主节点(n110)执行:
git clone ssh://git@bitbucket.iluvatar.ai:7999/psr/dist_rag_demo.git
cd dist_rag_demo/rag_server
python3 test_rag_local.py
bash launch_app.sh
这会在3333端口开启Web服务,作为用户交互界面
部署完成后,用户可以通过访问主节点的3333端口来使用RAG系统。这种设置允许用户通过Web界面向系统提问,系统会: