Triton + HF + Qwen 推理经验总结

1. 简介

Triton介绍参考:GitHub - triton-inference-server/tutorials: This repository contains tutorials and examples for Triton Inference Server

2. 实现方案

2.1. docker部署

# 拉取docker镜像
git clone -b r23.10 https://github.com/triton-inference-server/server.git
cd server/docs/examples
./fetch_models.sh

# 建立模型仓库目录
mkdir -p /data/triton/model_repository

# 构建个人的自定义模型
# 更多模型结构实例参考:https://github.com/triton-inference-server/tutorials/tree/main/HuggingFace
model_repository/
|-- model_name
|   |-- 1
|   |   `-- model.py
|   `-- config.pbtxt
# 千问模型的triton配置:

# config.pbtxt使用自定义的python环境
parameters: {
  key: "EXECUTION_ENV_PATH",
  value: {string_value: "$$TRITON_MODEL_DIRECTORY/llm"}
}
# conda环境打包,存放位置和config.pbtxt同级别目录:
conda pack -n llm --ignore-editable-packages


# 启动服务
docker run -it --gpus='"device=0,1"' --rm --net=bridge \
--name chatstore \
-p18000:8000 -p18001:8001 -p18002:8002 \
-v /data/jupyter/LLM:/workspace \
-v /data/triton/model_repository:/models \
nvcr.io/nvidia/tritonserver:23.09-py3 \
bash -c "export PYTHONIOENCODING=UTF-8 && tritonserver --model-repository=/models "

2.2. 踩坑问题

  • docker启动要用bridge模型,默认host模式会让端口映射失效;
  • tritonserver启动时,要加export PYTHONIOENCODING=UTF-8,不然会导致中文格式乱码;
  • mode.py文件中启动qwen如果开启use_cache_quantization和use_cache_kernel需要cache_autogptq_cuda_*,使用os将文件迁移到文件目录(测试时,对面模型目录已存在但是没用)

os.system("cp -r /workspace/models/Qwen-14B-Chat-Int4-hf/cache_autogptq_cuda_* ./")

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值