当前主流的大模型训练与推理框架的全面汇总

以下是当前主流的大模型训练与推理框架的全面汇总

在这里插入图片描述

以下是更新后包含 SGLang 的大模型训练与推理框架列表,并对分类和示例进行了优化:


一、通用深度学习推理框架

  1. TensorRT-LLM

    • 特点:NVIDIA推出的针对Transformer类模型的优化框架,支持多GPU分布式推理和低精度量化。
    • 示例:加速BERT、GPT-3等模型推理,集成Kernel融合和矩阵乘优化技术。
  2. ONNX Runtime

    • 特点:跨框架模型部署工具,支持ONNX格式模型的硬件无关优化。
    • 示例:将PyTorch或TensorFlow模型转换为ONNX格式后部署到CPU/GPU。
  3. OpenVINO

    • 特点:英特尔开发的跨平台推理工具,支持CPU/VPU/FPGA硬件加速。
    • 示例:图像分类模型(如ResNet)在英特尔CPU上的高效推理。
  4. FasterTransformer

    • 特点:NVIDIA优化的Transformer推理库,支持Tensor Core加速。
    • 示例:BERT和GPT模型在NVIDIA GPU上的低延迟推理。
  5. MNN

    • 特点:阿里巴巴推出的轻量级推理框架,支持移动端和边缘设备。
    • 示例:移动端图像识别模型的部署。

二、大语言模型(LLM)专用框架

  1. vLLM

    • 特点:基于PagedAttention技术的高吞吐量引擎,支持动态批处理。
    • 示例:部署Llama、GPT-4等模型,吞吐量比HuggingFace高10倍以上。
  2. HuggingFace TGI (Text Generation Inference)

    • 特点:支持多GPU扩展和量化方案,兼容HuggingFace模型库。
    • 示例:部署Falcon-180B或Llama 2-70B等万亿参数模型。
  3. DeepSpeed-Inference

    • 特点:微软开发的分布式推理框架,集成ZeRO优化器和3D并行技术。
    • 示例:千亿参数模型(如Megatron-Turing NLG)的多节点推理。
  4. Llama.cpp

    • 特点:纯C++实现的轻量级推理引擎,支持CPU端4-bit量化。
    • 示例:在MacBook上运行Llama-7B模型,无需GPU。
  5. LMDeploy

    • 特点:支持模型量化、服务化部署和性能监控。
    • 示例:百川智能系列模型的低资源部署。
  6. SGLang

    • 特点:面向复杂提示工程的推理优化框架,通过结构化生成语言(Structured Generation Language)提升多轮对话、分支逻辑等场景的效率。
    • 示例:处理需要嵌套条件判断的复杂提示(如多步骤数学推理),通过缓存中间结果减少重复计算,响应速度提升30%以上。

三、新兴框架与工具

  1. TensorFlow Serving

    • 特点:专为TensorFlow模型设计的服务化框架,支持多版本管理。
    • 示例:部署TensorFlow SavedModel格式的分类模型。
  2. Ollama

    • 特点:用户友好的本地LLM运行工具,支持一键启动模型。
    • 示例:在本地运行Mistral或Gemma模型。
  3. MLC-LLM

    • 特点:支持多种硬件后端(如WebGPU、Vulkan)。
    • 示例:在浏览器中运行量化后的语言模型。
  4. PowerInfer

    • 特点:基于稀疏激活模式的CPU-GPU混合推理框架。
    • 示例:在消费级GPU上高效运行大型模型。

四、量化与压缩工具

  1. bitsandbytes

    • 特点:支持8-bit和4-bit量化,与HuggingFace无缝集成。
    • 示例:将Llama-2模型量化为4-bit后部署。
  2. AWQ (Activation-aware Weight Quantization)

    • 特点:基于激活感知的权重量化算法,精度损失小。
    • 示例:量化OPT-175B模型并保持90%以上准确率。
  3. GPTQ

    • 特点:基于梯度信息的后训练量化方法。
    • 示例:将BERT模型压缩至2-bit仍保持高精度。

五、其他特色框架

  1. LightLLM

    • 特点:极简设计,专注于低资源环境下的推理优化。
  2. ScaleLLM

    • 特点:支持千卡集群的超大规模模型推理。
  3. Llamafile

    • 特点:将模型与运行时打包为单个可执行文件,便于分发。

常用示例场景

场景推荐框架优势
高吞吐量在线服务vLLM、TGI动态批处理、PagedAttention优化
复杂提示工程SGLang结构化生成、中间结果复用
边缘设备部署Llama.cpp、MNN低资源消耗、支持CPU推理
多GPU分布式推理DeepSpeed、TensorRT-LLM3D并行、高效显存管理
快速原型开发Ollama、Transformers易用性高、社区支持完善
量化压缩bitsandbytes、AWQ低精度量化、最小化精度损失

总结

当前主流框架超过23种(完整列表可参考),核心选择需结合以下因素:

  1. 硬件环境:GPU型号(如NVIDIA/AMD)、CPU架构、边缘设备类型。
  2. 模型类型:Transformer类模型优先选vLLM或FasterTransformer,轻量化模型可选Llama.cpp。
  3. 部署需求:服务化场景用TGI或TensorRT-LLM,本地开发用Ollama或LM Studio。

如需完整框架列表及技术对比,可进一步查阅 大模型推理框架总结。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/72886.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux学习(八)(服务管理(检查服务状态,开始/停止服务,检查服务日志,创建新服务))

服务管理 Linux 中的服务管理是指控制 Linux 在启动和关闭计算机的过程中启动和停止的服务(或“守护程序”)的系统。这些服务执行各种功能,并提供未附加到用户界面的进程。 Linux 系统,尤其是系统管理员,通常需要管理…

ElasticSearch 分词器介绍及测试:Standard(标准分词器)、English(英文分词器)、Chinese(中文分词器)、IK(IK 分词器)

ElasticSearch 分词器介绍及测试:Standard(标准分词器)、English(英文分词器)、Chinese(中文分词器)、IK(IK 分词器) ElasticSearch 分词器介绍及测试1. Standard Analyz…

【计算机网络】确认家庭网络是千兆/百兆带宽并排查问题

要确认你的带宽是千兆(1000Mbps)还是百兆(100Mbps),可以通过以下方法逐步排查: 一、检查物理设备 1. 查看路由器和光猫的网口 千兆网口:路由器或光猫的网口旁通常会标注 “10/100/1000M” 或 …

[数据分享第七弹]全球洪水相关数据集

洪水是一种常见的自然灾害,在全球范围内造成了极为严重的威胁。近年来,针对洪水事件的检测分析,以及对于洪水灾害和灾后恢复能力的研究日渐增多,也产生了众多洪水数据集。今天,我们一起来收集整理一下相关数据集。&…

深入探讨AI-Ops架构 第一讲 - 运维的进化历程以及未来发展趋势

首先,让我们一起回顾运维的进化之路,然后再深入探讨AI-Ops架构的细节。 运维的进化历程 1. AI 大范围普及前的运维状态 (传统运维) 在AI技术尚未广泛渗透到运维领域之前,我们称之为传统运维,其主要特点是: 人工驱动…

Hive-数据倾斜优化

数据倾斜的原因 1)key分布不均匀,本质上就是业务数据有可能会存在倾斜 2)某些SQL语句本身就有数据倾斜 关键词 情形 后果 Join A、其中一个表较小,但是key集中; B、两张表都是大表,key不均 分发到…

番外篇 - Docker的使用

一、Docker的介绍 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完…

深度学习与普通神经网络有何区别?

深度学习与普通神经网络的主要区别体现在以下几个方面: 一、结构复杂度 普通神经网络:通常指浅层结构,层数较少,一般为2-3层,包括输入层、一个或多个隐藏层、输出层。深度学习:强调通过5层以上的深度架构…

RuleOS:区块链开发的“新引擎”,点燃Web3创新之火

RuleOS:区块链开发的“新引擎”,点燃Web3创新之火 在区块链技术的浪潮中,RuleOS宛如一台强劲的“新引擎”,为个人和企业开发去中心化应用(DApp)注入了前所未有的动力。它以独特的设计理念和强大的功能特性&…

c# MimeEntity修改邮件附件名称

在C#中,当你使用如MimeKit库来处理电子邮件时,你可以通过修改MimeEntity的ContentDisposition属性来更改邮件附件的名称。以下是如何做到这一点的步骤: 1. 添加MimeKit引用 首先,确保你的项目中已经添加了MimeKit库。如果你使用…

Windows编译环境搭建(MSYS2\MinGW\cmake)

我的音视频/流媒体开源项目(github) 一、基础环境搭建 1.1 MSYS2\MinGW 参考:1. 基于MSYS2的Mingw-w64 GCC搭建Windows下C开发环境_msys2使用mingw64编译 在Widndows系统上,使用gcc工具链(g)进行C程序开发?可以的&a…

TikTok美国战略升级:聚焦美食旅行,本地化服务如何重塑市场格局

平台深耕本土内容生态,餐饮旅游创作者迎流量红利,算法推荐机制激发地域经济新活力 过去一年,TikTok在美国市场的动作频频引发行业关注。从早期以娱乐、舞蹈为主的全球化内容,到如今将资源向美食、旅行两大垂类倾斜,这…

Unity Dots环境配置

文章目录 前言环境配置1.新建Unity 工程2.安装Entities包2.安装EntitiesGraphics包3.安装URP渲染管线 Dots窗口 前言 DOTS(Data-Oriented Technology Stack)是Unity推出的一种用于开发高性能游戏和应用的数据导向技术栈,包含三大核心组件&am…

manus对比ChatGPT-Deep reaserch进行研究类学术相关数据分析!谁更胜一筹?

没有账号,只能挑选一个案例 一夜之间被这个用全英文介绍全华班出品的新爆款国产AI产品的小胖刷频。白天还没有切换语言的选项,晚上就加上了。简单看了看团队够成,使用很长实践的Monica创始人也在其中。逐渐可以理解,重心放在海外产…

Python项目-基于Django的在线教育平台开发

1. 项目概述 在线教育平台已成为现代教育的重要组成部分,特别是在后疫情时代,远程学习的需求显著增加。本文将详细介绍如何使用Python的Django框架开发一个功能完善的在线教育平台,包括系统设计、核心功能实现以及部署上线等关键环节。 本项…

【自学笔记】Numpy基础知识点总览-持续更新

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 Numpy基础知识点总览目录1. 简介Numpy是什么为什么使用Numpy 2. 数组对象(ndarray)创建数组数组的属性数组的形状操作 3. 数组的基本操作数组…

Kubernetes中的 iptables 规则介绍

#作者:邓伟 文章目录 一、Kubernetes 网络模型概述二、iptables 基础知识三、Kubernetes 中的 iptables 应用四、查看和调试 iptables 规则五、总结 在 Kubernetes 集群中,iptables 是一个核心组件, 用于实现服务发现和网络策略。iptables 通…

.NET Core全屏截图,C#全屏截图

.NET Core全屏截图,C#全屏截图 使用框架: WPF.NET 8 using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Imaging; using System.Linq; using System.Text; using System.Threading.Tasks; using System.W…

Java直通车系列15【Spring MVC】(ModelAndView 使用)

目录 1. ModelAndView 概述 2. ModelAndView 的主要属性和方法 主要属性 主要方法 3. 场景示例 示例 1:简单的 ModelAndView 使用 示例 2:使用 ModelAndView 处理列表数据 示例 3:使用 ModelAndView 处理异常情况 1. ModelAndView 概…

视频图像刷新到HTTP的原理

上一篇博客已经说了cgi拿到了共享内存的程序还需要处理的才能够真正刷新到网页里面去 HTTP协议介绍 HTTP中文名称是超文本传输协议,它是一个简单的请求.响应协议,HTTP协议它运行在TCP上面,它是互联网数据通信的基础。 几乎所有的网页请求和互…