推理框架介绍
文生文模型推理框架
CSGHub 支持以下六个文生文推理框架:VLLM、SGLang、TGI、llama.cpp、KTransformers、MindIE 。每个框架都有其独特的特点和使用场景,适用于不同的推理任务。在选择框架时,可以根据具体的使用场景和需求来决定最合适的工具。
1. VLLM
vLLM 是一个快速且易于使用的LLM推理和服务库。由UC Berkeley的Sky Computing Lab最初开发,vLLM 已经发展成为一个社区驱动的项目,涵盖了学术界和工业界的贡献。
特点:
- 高速性能:具有领先的服务吞吐量,支持分页注意力管理,快速的CUDA/HIP图执行,量化支持(GPTQ、AWQ、INT4、INT8、FP8),优化的CUDA内核,并集成了FlashAttention和FlashInfer。
- 灵活性:支持Hugging Face流行模型,支持多种解码算法(如并行采样、束搜索等),支持分布式推理的张量并行性和流水线并行性。
- 多平台支持:支持NVIDIA GPU、AMD CPU和GPU、Intel CPU和GPU、PowerPC CPU、TPU以及AWS Neuron等平台。
- 模型支持:无缝支持大多数Hugging Face的开源模型,包括Transformer型LLMs(如Llama)、专家混合型LLMs(如Mixtral)、多模态LLMs(如LLaVA)等。
使用场景:
适用于需要高吞吐量、高性能推理以及多平台支持的场景,特别是在大规模推理任务中,vLLM可以提供强大的计算支持。
链接
2. SGLang
SGLang 是一个快速的服务框架,支持大型语言模型和视觉语言模型。它通过共同设计后端运行时和前端语言,使得与模型的交互更加快速和可控。
特点:
- 高效的后端运行时:包括RadixAttention进行前缀缓存、跳跃前进约束解码、无开销的CPU调度、连续批处理、张量并行性、FlashInfer内核等。
- 灵活的前端语言:提供直观的接口,用于编程LLM应用,包括链式生成调用、复杂提示、多模态输入、并行化等。
- 广泛的模型支持:支持Llama、Gemma、Mistral、QWen、DeepSeek、LLaVA等生成模型,以及嵌入模型(如e5-mistral)和奖励模型(如Skywork)。
- 活跃的社区:SGLang是开源的,并由一个活跃的社区支持,广泛应用于行业。