首页
/ 开源模型集成:llama-recipes中的vLLM和TGI部署指南

开源模型集成:llama-recipes中的vLLM和TGI部署指南

2026-02-06 05:37:31作者:申梦珏Efrain

想要高效部署大型语言模型吗?llama-recipes项目提供了完整的开源模型集成解决方案,特别是vLLM和TGI(Text Generation Inference)两大框架的部署指南。本文将为您详细介绍如何利用这两个强大的推理引擎来优化Llama模型的部署体验。🚀

为什么选择vLLM和TGI?

vLLM 是一个专为LLM推理优化的高性能库,采用PagedAttention技术显著提升吞吐量。而TGI 是HuggingFace推出的文本生成推理服务器,支持多GPU分片和流式响应。

这两个框架都支持:

  • 单节点多GPU推理
  • 多节点分布式部署
  • LoRA适配器集成
  • 流式生成支持

vLLM部署实战

环境准备

首先需要安装必要的依赖包:

pip install vllm
pip install ray[default]  # 用于多节点推理

单节点多GPU部署

设置环境变量后,即可启动推理服务:

python inference.py --model_name $MODEL_PATH --peft_model_name $PEFT_MODEL_PATH --tp_size 8 --user_prompt "Hello my name is"

vLLM性能对比

多节点分布式部署

对于超大规模模型如Meta Llama 3.1 405B,需要多节点协同工作。首先启动Ray集群:

在头节点执行:

ray start --head

在工作节点执行:

ray start --address='<head-node-ip-address>:6379'

vLLM延迟分析

TGI部署指南

LoRA权重合并

如果使用LoRA方法微调模型,需要先合并权重:

python -m llama_cookbook.recipes.3p_integration.tgi.merge_lora_weights --base_model llama-7B --peft_model ft_output --output_dir data/merged_model_output

启动TGI服务

使用Docker容器快速部署:

model=/data/merged_model_output
num_shard=2
volume=$PWD/inference/hf-text-generation-inference/data
docker run --gpus all --shm-size 1g -p 8080:80 -v $volume:/data ghcr.io/huggingface/text-generation-inference:latest --model-id $model --num-shard $num_shard

执行推理

服务启动后,可以通过API进行推理:

curl 127.0.0.1:8080/generate \
    -X POST \
    -d '{"inputs":"What is Deep Learning?","parameters":{"max_new_tokens":17}}' \
    -H 'Content-Type: application/json'

性能对比与选择建议

根据实际测试数据,vLLM在吞吐量优化方面表现优异,而TGI在HuggingFace生态集成上更具优势。

推荐场景:

  • 追求极致性能:选择vLLM
  • 需要完整生态:选择TGI
  • 生产环境部署:建议同时测试两者

最佳实践总结

  1. 根据模型规模选择框架:小模型可任选,大模型建议vLLM
  2. 考虑硬件资源:单节点用TGI,多节点用vLLM
  3. 测试验证:在实际环境中进行性能测试
  4. 监控优化:持续关注TPOT、TTFT等关键指标

通过llama-recipes项目的完整示例,您可以快速上手vLLM和TGI部署,为您的AI应用提供稳定高效的推理服务。💪

登录后查看全文

项目优选

收起
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
471
465
kernelkernel
deepin linux kernel
C
32
16
atomcodeatomcode
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get Started
Rust
2.09 K
218
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
700
1.4 K
docsdocs
暂无描述
Dockerfile
780
5.08 K
pytorchpytorch
Ascend Extension for PyTorch
Python
758
968
flutter_flutterflutter_flutter
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.04 K
271
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
880
2.03 K
mindquantummindquantum
MindQuantum is a general software library supporting the development of applications for quantum computation.
Python
183
111
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
1.11 K
682