以下是当前主流的大模型训练与推理框架的全面汇总
以下是更新后包含 SGLang 的大模型训练与推理框架列表,并对分类和示例进行了优化:
一、通用深度学习推理框架
-
TensorRT-LLM
- 特点:NVIDIA推出的针对Transformer类模型的优化框架,支持多GPU分布式推理和低精度量化。
- 示例:加速BERT、GPT-3等模型推理,集成Kernel融合和矩阵乘优化技术。
-
ONNX Runtime
- 特点:跨框架模型部署工具,支持ONNX格式模型的硬件无关优化。
- 示例:将PyTorch或TensorFlow模型转换为ONNX格式后部署到CPU/GPU。
-
OpenVINO
- 特点:英特尔开发的跨平台推理工具,支持CPU/VPU/FPGA硬件加速。
- 示例:图像分类模型(如ResNet)在英特尔CPU上的高效推理。
-
FasterTransformer
- 特点:NVIDIA优化的Transformer推理库,支持Tensor Core加速。
- 示例:BERT和GPT模型在NVIDIA GPU上的低延迟推理。
-
MNN
- 特点:阿里巴巴推出的轻量级推理框架,支持移动端和边缘设备。
- 示例:移动端图像识别模型的部署。
二、大语言模型(LLM)专用框架
-
vLLM
- 特点:基于PagedAttention技术的高吞吐量引擎,支持动态批处理。
- 示例:部署Llama、GPT-4等模型,吞吐量比HuggingFace高10倍以上。
-
HuggingFace TGI (Text Generation Inference)
- 特点:支持多GPU扩展和量化方案,兼容HuggingFace模型库。
- 示例:部署Falcon-180B或Llama 2-70B等万亿参数模型。
-
DeepSpeed-Inference
- 特点:微软开发的分布式推理框架,集成ZeRO优化器和3D并行技术。
- 示例:千亿参数模型(如Megatron-Turing NLG)的多节点推理。
-
Llama.cpp
- 特点:纯C++实现的轻量级推理引擎,支持CPU端4-bit量化。
- 示例:在MacBook上运行Llama-7B模型,无需GPU。
-
LMDeploy
- 特点:支持模型量化、服务化部署和性能监控。
- 示例:百川智能系列模型的低资源部署。
-
SGLang
- 特点:面向复杂提示工程的推理优化框架,通过结构化生成语言(Structured Generation Language)提升多轮对话、分支逻辑等场景的效率。
- 示例:处理需要嵌套条件判断的复杂提示(如多步骤数学推理),通过缓存中间结果减少重复计算,响应速度提升30%以上。
三、新兴框架与工具
-
TensorFlow Serving
- 特点:专为TensorFlow模型设计的服务化框架,支持多版本管理。
- 示例:部署TensorFlow SavedModel格式的分类模型。
-
Ollama
- 特点:用户友好的本地LLM运行工具,支持一键启动模型。
- 示例:在本地运行Mistral或Gemma模型。
-
MLC-LLM
- 特点:支持多种硬件后端(如WebGPU、Vulkan)。
- 示例:在浏览器中运行量化后的语言模型。
-
PowerInfer
- 特点:基于稀疏激活模式的CPU-GPU混合推理框架。
- 示例:在消费级GPU上高效运行大型模型。
四、量化与压缩工具
-
bitsandbytes
- 特点:支持8-bit和4-bit量化,与HuggingFace无缝集成。
- 示例:将Llama-2模型量化为4-bit后部署。
-
AWQ (Activation-aware Weight Quantization)
- 特点:基于激活感知的权重量化算法,精度损失小。
- 示例:量化OPT-175B模型并保持90%以上准确率。
-
GPTQ
- 特点:基于梯度信息的后训练量化方法。
- 示例:将BERT模型压缩至2-bit仍保持高精度。
五、其他特色框架
-
LightLLM
- 特点:极简设计,专注于低资源环境下的推理优化。
-
ScaleLLM
- 特点:支持千卡集群的超大规模模型推理。
-
Llamafile
- 特点:将模型与运行时打包为单个可执行文件,便于分发。
常用示例场景
场景 | 推荐框架 | 优势 |
---|---|---|
高吞吐量在线服务 | vLLM、TGI | 动态批处理、PagedAttention优化 |
复杂提示工程 | SGLang | 结构化生成、中间结果复用 |
边缘设备部署 | Llama.cpp、MNN | 低资源消耗、支持CPU推理 |
多GPU分布式推理 | DeepSpeed、TensorRT-LLM | 3D并行、高效显存管理 |
快速原型开发 | Ollama、Transformers | 易用性高、社区支持完善 |
量化压缩 | bitsandbytes、AWQ | 低精度量化、最小化精度损失 |
总结
当前主流框架超过23种(完整列表可参考),核心选择需结合以下因素:
- 硬件环境:GPU型号(如NVIDIA/AMD)、CPU架构、边缘设备类型。
- 模型类型:Transformer类模型优先选vLLM或FasterTransformer,轻量化模型可选Llama.cpp。
- 部署需求:服务化场景用TGI或TensorRT-LLM,本地开发用Ollama或LM Studio。
如需完整框架列表及技术对比,可进一步查阅 大模型推理框架总结。