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}}'
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 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