Skip to content

Latest commit

 

History

History
156 lines (91 loc) · 5.48 KB

VLLM_SCRIPT.md

File metadata and controls

156 lines (91 loc) · 5.48 KB

环境配置

使用 docker 或者本地环境两种方式之一,推荐使用 docker

docker

构建镜像

docker build -f docker/Dockerfile.vllm -t llm-api:vllm .

本地环境

安装依赖,确保安装顺序严格按照下面的命令:

pip install vllm>=0.4.3
pip install -r requirements.txt 
# pip uninstall transformer-engine -y

启动模型

环境变量含义

  • MODEL_NAME: 模型名称,如 chatglm4qwen2llama3

  • PROMPT_NAME: 使用的对话模板名称,如果不指定,则将根据 tokenizer 找到对应的模板

  • MODEL_PATH: 开源大模型的文件所在路径

  • TRUST_REMOTE_CODE: 是否使用外部代码

  • TOKENIZE_MODE(可选项): tokenizer 的模式,默认为 auto

  • TENSOR_PARALLEL_SIZE(可选项): GPU 数量,默认为 1

  • EMBEDDING_NAME(可选项): 嵌入模型的文件所在路径,推荐使用 moka-ai/m3e-base 或者 BAAI/bge-large-zh

  • GPU_MEMORY_UTILIZATION(可选项): GPU 占用率

  • MAX_NUM_BATCHED_TOKENS(可选项): 每个批处理的最大 token 数量

  • MAX_NUM_SEQS(可选项): 批量大小

  • TASKS(可选项): llm 表示启动对话大模型,rag 表示启动文档文档相关接口,比如embeddingrerank

启动方式

选择下面两种方式之一启动模型接口服务

docker启动

  1. docker run

不同模型只需要将 .env.vllm.example 文件内容复制到 .env 文件中

cp .env.vllm.example .env

然后修改 .env 文件中的环境变量

docker run -it -d --gpus all --ipc=host -p 7891:8000 --name=vllm-server \
    --ulimit memlock=-1 --ulimit stack=67108864 \
    -v `pwd`:/workspace \
    llm-api:vllm \
    python api/server.py
  1. docker compose
docker-compose -f docker-compose.vllm.yml up -d

本地启动

同样的,将 .env.vllm.example 文件内容复制到 .env 文件中

cp .env.vllm.example .env

然后修改 .env 文件中的环境变量

cp api/server.py .
python server.py

环境变量修改参考

QWEN系列

模型 环境变量示例
qwen MODEL_NAME=qwenMODEL_PATH=Qwen/Qwen-7B-ChatPROMPT_NAME=qwenENGINE=vllm
qwen1.5 MODEL_NAME=qwen2MODEL_PATH=Qwen/Qwen1.5-7B-ChatPROMPT_NAME=qwen2ENGINE=vllm
qwen2 MODEL_NAME=qwen2MODEL_PATH=Qwen/Qwen2-7B-InstructPROMPT_NAME=qwen2ENGINE=vllm

GLM系列

模型 环境变量示例
chatglm MODEL_NAME=chatglmMODEL_PATH=THUDM/chatglm-6bPROMPT_NAME=chatglmENGINE=vllm
chatglm2 MODEL_NAME=chatglm2MODEL_PATH=THUDM/chatglm2-6bPROMPT_NAME=chatglm2ENGINE=vllm
chatglm3 MODEL_NAME=chatglm3MODEL_PATH=THUDM/chatglm3-6bPROMPT_NAME=chatglm3ENGINE=vllm
glm4 MODEL_NAME=chatglm4MODEL_PATH=THUDM/glm-4-9b-chatPROMPT_NAME=chatglm4ENGINE=vllm

BAICHUAN系列

模型 环境变量示例
baichuan MODEL_NAME=baichuanMODEL_PATH=baichuan-inc/Baichuan-13B-ChatPROMPT_NAME=baichuanENGINE=vllm
baichuan2 MODEL_NAME=baichuan2MODEL_PATH=baichuan-inc/Baichuan2-13B-ChatPROMPT_NAME=baichuan2ENGINE=vllm

INTERNLM系列

模型 环境变量示例
internlm MODEL_NAME=internlmMODEL_PATH=internlm/internlm-chat-7bPROMPT_NAME=internlmENGINE=vllm
internlm2 MODEL_NAME=internlm2MODEL_PATH=internlm/internlm2-chat-20bPROMPT_NAME=internlm2ENGINE=vllm

Yi系列

模型 环境变量示例
yi MODEL_NAME=yiMODEL_PATH=01-ai/Yi-34B-ChatPROMPT_NAME=yiENGINE=vllm
yi1.5 MODEL_NAME=yi1.5MODEL_PATH=01-ai/Yi1.5-9B-ChatPROMPT_NAME=yiENGINE=vllm

DEEPSEEK系列

模型 环境变量示例
deepseek-coder MODEL_NAME=deepseek-coderMODEL_PATH=deepseek-ai/deepseek-coder-33b-instructPROMPT_NAME=deepseek-coderENGINE=vllm
deepseek-chat MODEL_NAME=deepseekMODEL_PATH=deepseek-ai/deepseek-llm-67b-chatPROMPT_NAME=deepseekENGINE=vllm