Triton+vllm

  用mindie工具benchmark测试大模型性能时,发现它要用Triton接口,原本用vllm部署的openai接口用不了。尝试用triton+vllm来部署大模型。

  原理就是使用triton做代理,用vllm做backbend推大模型。

  按照官网的指引做:

1、创建相关目录及文件

  创建目录结构,如果使用已下载的权重,则需要复制相关权重到目录内(后续在model.json中引用)

model_repository/
└── qwen72b
    ├── 1
    │   └── model.json
├── Qwen2.5-72B-Instruct
│ └── 权重文件...
└── config.pbtxt
  • 其中qwen72b目录放模型相关文件,也是客户端调用时的模型名称,等同于model_name。
  • model.json内容为:
{
    "model":"/work/model_repository/qwen72b/Qwen2.5-72B-Instruct",
    "disable_log_requests": true,
    "gpu_memory_utilization": 0.5,
    "enforce_eager": true,
    "tensor_parallel_size": 8
}
    • model为模型权重位置,/work为容器内的工作目录;Qwen2.5-72B-Instruct按实际情况调整;
    • tensor_parallel_size为使用的显卡数量

config.pbtxt内容为:

复制代码
backend: "vllm"

# The usage of device is deferred to the vLLM engine
instance_group [
  {
    count: 1
    kind: KIND_MODEL
  }
]
复制代码

2、启动docker:在model_repository同级目录下执行(会引用${PWD}变量):

docker run --gpus all -it --rm -p 8000:8000 -p 8001:8001 -p 8002:8002 --shm-size=1G --ulimit memlock=-1 --ulimit stack=67108864 -v ${PWD}:/work -w /work nvcr.io/nvidia/tritonserver:24.12-vllm-python-py3 tritonserver --model-store ./model_repository

  注意: --rm会在模型退出后删除容器。

3、客户端访问:通过8000端口访问服务器

curl -X POST localhost:8000/v2/models/qwen72b/generate -d '{"text_input": "What is Triton Inference Server?", "parameters": {"stream": false, "temperature": 0}}'

 

posted @   badwood  阅读(46)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
历史上的今天:
2023-01-09 Mac下的nmap及brew
2016-01-09 中医-推拿补泻
2015-01-09 XBox360-双光盘游戏自制GOD
Badwood's Blog
点击右上角即可分享
微信分享提示