赞
踩
大模型框架是指用于训练、推理和部署大型语言模型(LLMs)的软件工具和库。这些框架通常提供了高效的计算资源管理、分布式训练、模型优化和推理加速等功能,以便更好地利用硬件资源(如GPU和TPU)来处理庞大的数据集和复杂的模型结构。
大模型框架的优点
常见的大模型框架
1、Ollama
2、vLLM
3、LightLLM
4、llama.cpp
5、LocalAI
6、适用昇腾AI处理器的框架
7、fastllm
8、DeepSpeed-MII
9、TensorRT-LLM
10、其他。LM Studio、xinference、Colossal-AI等
Ollama 是一个专注于简化大规模机器学习模型开发的框架。它提供了一系列工具来帮助开发者轻松地定义、训练和部署大型语言模型。
优点:
• 提供了简洁的API,易于上手。
• 支持多种硬件加速选项,如GPU和TPU。
• 内置了许多预训练模型,方便快速开始实验。
缺点:
• 对一些高级功能支持有限,需要手动实现。
• 高并发性能受限,更新中
vLLM 是一个专注于高效推理的大模型框架。它通过优化内存管理和计算资源分配,实现了极高的推理效率。
优点:
• 极高的推理速度,适合实时应用。
• 并发速度极快,优于ollama,受到并发数影响较小
• 优化了内存使用,可以在较小的硬件配置上运行大型模型。
• 支持多种分布式计算模式,提高了可扩展性。
LightLLM以其轻量级设计、易于扩展和高速性能而著称。 LightLLM 利用了众多备受推崇的开源实现的优势,包括但不限于 FasterTransformer、TGI、vLLM 和 FlashAttention。
优点:极致的性能,比此前的vLLM更加快速。①三进程异步协作,②动态批处理,③FlashAttention,④TokenAttention,⑤高性能Router
llama.cpp
llama.cpp 的主要目标是在本地和云端的各种硬件上以最少的设置和最先进的性能实现 LLM 推理。
llama.cpp基于C++,llama.cpp的主要目标是能够在各种硬件上实现LLM推理,只需最少的设置,并提供最先进的性能。提供1.5位、2位、3位、4位、5位、6位和8位整数量化,以加快推理速度并减少内存使用。①请求槽,②动态批处理,③CPU/GPU混合推理
不同于前两个转为大模型部署设计,LocalAI可以再本地部署运行 LLMs、生成图像、音频等模型,具有更多的拓展性。
优点:更灵活的使用,使用场景更加广泛
MindFormers(MindSpore Transformers)使用MindSpore 框架,套件华为自家提供的一个构建大模型训练、微调、评估、推理、部署的全流程开发套件,提供业内主流的Transformer类预训练模型和SOTA下游任务应用,涵盖丰富的并行特性。期望帮助用户轻松的实现大模型训练和创新研发。MindSpore Transformers套件基于MindSpore内置的并行技术和组件化设计,具备如下特点:提供预置SOTA权重自动下载及加载功能;支持人工智能计算中心无缝迁移部署;
ModelLink旨在为华为昇腾芯片上的大语言模型提供端到端的解决方案, 包含模型,算法,以及下游任务。当前 ModelLink 支撑大模型使用的功能如下:使用加速特性(加速算法+融合算子)、基于昇腾芯片采集Profiling数据
MindSpore Serving是一个易于使用的推理框架,旨在帮助 MindSpore 开发者在生产环境中高效部署在线推理服务。当用户使用MindSpore完成模型训练 后,导出MindSpore模型,即可使用MindSpore Serving创建该模型的推理服务。目前支持的特性:模型并行部署、通过服务端发送事件的Token流、自定义模型输入、静态/连续(continuous)批处理、通过npu进行后采样、PagedAttention、
MindIE 是昇腾提供的新的大模型推理解决方案,支持使用MindSpore和Pytorch训练的模型进行推理加速及部署。MindIE 作为一个模型推理引擎,提供了针对大语言模型和SD模型特定的优化。加速库底层算子主要由Ascend C编写,基于Ascend底层高性能算子库/TBE算子库实现
fastllm纯c++实现,便于跨平台移植,可以在安卓上直接编译。ARM平台支持NEON指令集加速,X86平台支持AVX指令集加速,NVIDIA平台支持CUDA加速,各个平台速度都很快就是了。支持浮点模型(FP32), 半精度模型(FP16), 量化模型(INT8, INT4) 加速.支持多卡部署。支持GPU + CPU混合部署。
DeepSpeed-MII 功能包括阻塞 KV 缓存、连续批处理、动态 SplitFuse、张量并行性和高性能 CUDA 内核,以支持 LLMs 的快速高吞吐量文本生成,例如 Llama-2-70B、Mixtral (MoE) ) 8x7B 和 Phi-2。 v0.2 的最新更新添加了新的模型系列、性能优化和功能增强。与 vLLM 等领先系统相比,MII 现在的有效吞吐量提高了 2.5 倍。DeepSpeed-MII除了语言模型之外,我们还支持加速文本到图像模型,例如稳定扩散。
TensorRT-LLM 是一个易于使用的 Python API,用于定义大型语言模型 (LLMs) 并构建包含最先进优化的 TensorRT 引擎,以高效地执行推理在 NVIDIA GPU 上。 TensorRT-LLM 包含用于创建执行这些 TensorRT 引擎的 Python 和 C++ 运行时的组件。它还包括一个用于与 NVIDIA Triton 推理服务器集成的后端;服务于LLMs的生产质量体系。使用 TensorRT-LLM 构建的模型可以在从单个 GPU 到具有多个 GPU 的多个节点(使用张量并行和/或管道并行)的各种配置上执行。
模型 | Ollama | vLLM | LightLLM | llama.cpp | LocalAI | 适用昇腾框架 | fastllm | DeepSpeed-MII | TensorRT-LLM |
---|---|---|---|---|---|---|---|---|---|
编写语言 | Go | python | python | C/C++ | C++/Go | python | C++ | python | C++ |
支持的加速算法 | 引用llama.cpp1、量化2、动态批处理,3、CPU/GPU混合推理,AMD加速 4、自定义 CUDA 内核支持 | 1、PagedAttention(改进的KV cache)2、连续动态批处理,③量化GPTQ/AWQ/SqueezeLLM等。4、优化的 CUDA 内核 | 1、动态批处理,2、FlashAttention,3、TokenAttention(改进PagedAttention)4、高性能Router。 5、张量并行 | 1、量化2、动态批处理,3、CPU/GPU混合推理,AMD加速 4、自定义 CUDA 内核支持 5、为本地服务,没提供多少并行支持 | 1、模型压缩、剪枝、量化 2、CPU/GPU加速 3、为本地服务,没提供多少并行支持 | 张量并行、流水线并行、序列并行、重计算、分布式优化器等多种加速算法和融合算子 | AMD/X86/NVIDIA加速。量化、GPU + CPU混合部署 | 1、阻塞 KV 缓存2、连续批处理、 3、SplitFuse(Continous Batching变种)4、张量并行性和高性能 CUDA 内核, | 1、Inflight Batching(Continous Batching变种)2、单个GPU/多 GPU加速3、使用张量并行/管道并行 4、量化 |
支持的模型 | 自有库+导入 | 自有库+导入 | 仅自有库 | 自有库+导入 | 导入 | 仅自有库 | 自有库 | 仅自有库(仅8种) | 自有库 |
最快的推理速度 | 一般 | 快 | 极快 | 快 | 一般 | 快 | 极快 | 极快 | 快 |
其他的存在使用人数较少、维护不足等问题。
LM Studio并发性能好,适合企业应用
xinference是国内推出的本地部署框架
Colossal-AI除了LLA外,提供Sora等多模态支持
不同的大模型框架各有其优势与劣势,选择合适的框架需要根据具体的应用场景、硬件配置以及开发需求来决定。Ollama适合快速实验与原型设计;vLLM则应对多并发有更好的性能。推荐使用VLLM,版本更新频繁,社区相对活跃,生态更为完善,推理速度满足需求,如果有多模态和其他需求,LocalAI更为合适。
lightllm vs vllm:https://zhuanlan.zhihu.com/p/660193055
昇腾框架:https://zhuanlan.zhihu.com/p/692377206
https://blog.csdn.net/weixin_54338498/article/details/137110068
https://zhuanlan.zhihu.com/p/691919250
vllm、ollama并发行对比:https://blog.csdn.net/arkohut/article/details/139076652
vllm官方地址:https://github.com/vllm-project/vllm
ollama官方地址:https://github.com/ollama/ollama
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。