大模型(LLM)推理框架汇总

MLC LLM


submodules in MLC LLM

大模型(LLM)好性能通用部署方案,陈天奇(tvm发起者)团队开发.

项目链接

docs: https://llm.mlc.ai/docs/

github: https://github.com/mlc-ai/mlc-llm

支持的平台和硬件

platforms & hardware

支持的模型

|
Architecture

|

Prebuilt Model Variants

|
| — | — |
|

Llama

|

Llama-2, Code Llama, Vicuna, WizardLM, WizardMath, OpenOrca Platypus2, FlagAlpha Llama-2 Chinese, georgesung Llama-2 Uncensored

|
|

GPT-NeoX

|

RedPajama

|
|

GPT-J

|
|
|

RWKV

|

RWKV-raven

|
|

MiniGPT

|
|
|

GPTBigCode

|

WizardCoder

|
|

ChatGLM

|
|
|

ChatGLM

|
|

接口API 支持

Javascript API, Rest API, C++ API, Python API, Swift API for iOS app, Java API & Android App

量化(Quantization) 方法支持

4-bit, LUT-GEMM, GPTQ

ref: https://llm.mlc.ai/docs/compilation/configure_quantization.html

其他

最大的特点是可以快速部署大模型到iOS 和 Android 设备上, 浏览器上运行文生图模型(sd1.5/2.1)和大模型, 推理框架基于tvm-unity.

vLLM


快速简单易用的大模型推理框架和服务,来自加州大学伯克利分校

vLLm 运行大模型非常快主要使用以下方法实现的:

  1. 先进的服务吞吐量

  2. 通过PageAttention 对attention key & value 内存进行有效的管理

  3. 对于输入请求的连续批处理

  4. 高度优化的CUDA kernels

项目链接

docs: Welcome to vLLM!

github: https://github.com/vllm-project/vllm

支持的平台和硬件

NVIDIA CUDA, AMD ROCm

支持的模型

vLLM seamlessly supports many Hugging Face models, including the following architectures:

  • Aquila & Aquila2 (BAAI/AquilaChat2-7B, BAAI/AquilaChat2-34B, BAAI/Aquila-7B, BAAI/AquilaChat-7B, etc.)

  • Baichuan & Baichuan2 (baichuan-inc/Baichuan2-13B-Chat, baichuan-inc/Baichuan-7B, etc.)

  • BLOOM (bigscience/bloom, bigscience/bloomz, etc.)

  • ChatGLM (THUDM/chatglm2-6b, THUDM/chatglm3-6b, etc.)

  • Falcon (tiiuae/falcon-7b, tiiuae/falcon-40b, tiiuae/falcon-rw-7b, etc.)

  • GPT-2 (gpt2, gpt2-xl, etc.)

  • GPT BigCode (bigcode/starcoder, bigcode/gpt_bigcode-santacoder, etc.)

  • GPT-J (EleutherAI/gpt-j-6b, nomic-ai/gpt4all-j, etc.)

  • GPT-NeoX (EleutherAI/gpt-neox-20b, databricks/dolly-v2-12b, stabilityai/stablelm-tuned-alpha-7b, etc.)

  • InternLM (internlm/internlm-7b, internlm/internlm-chat-7b, etc.)

  • LLaMA & LLaMA-2 (meta-llama/Llama-2-70b-hf, lmsys/vicuna-13b-v1.3, young-geng/koala, openlm-research/open_llama_13b, etc.)

  • Mistral (mistralai/Mistral-7B-v0.1, mistralai/Mistral-7B-Instruct-v0.1, etc.)

  • MPT (mosaicml/mpt-7b, mosaicml/mpt-30b, etc.)

  • OPT (facebook/opt-66b, facebook/opt-iml-max-30b, etc.)

  • Phi-1.5 (microsoft/phi-1_5, etc.)

  • Qwen (Qwen/Qwen-7B, Qwen/Qwen-7B-Chat, etc.)

  • Yi (01-ai/Yi-6B, 01-ai/Yi-34B, etc.)

接口API支持

OpenAI-compatible API server

分布式推理和服务(支持Megatron-LM’s tensor parallel algorithm)

可以使用SkyPilot 框架运行在云端

可以使用NVIDIA Triton 快速部署

可以使用LangChain 提供服务

量化(Quantization)方法

4-bit: AutoAWQ

OpenLLM


促进实际生产过程中的大模型的部署,微调,服务和监测.

项目链接

github: GitHub - bentoml/OpenLLM: Operating LLMs in production

支持的平台和硬件

GPU

支持的模型

|
model

|
| — |
|

Baichuan

|
|

ChatGLM

|
|

DollyV2

|
|

Falcon

|
|

FlanT5

|
|

GPTNeoX

|
|

Llama

|
|

Mistral

|
|

MPT

|
|

OPT

|
|

Phi

|
|

Qwen

|
|

StableLM

|
|

StarCoder

|
|

Yi

|

接口API支持 & Integrations

Serve LLMs over a RESTful API or gRPC with a single command. You can interact with the model using a Web UI, CLI, Python/JavaScript clients, or any HTTP client of your choice.

BentoML,OpenAI’s Compatible Endpoints,LlamaIndex,LangChain, andTransformers Agents.

量化(Quantization)方法

  • LLM.int8(): 8-bit Matrix Multiplication through bitsandbytes

  • SpQR: A Sparse-Quantized Representation for Near-Lossless LLM Weight Compression through bitsandbytes

  • AWQ: Activation-aware Weight Quantization,

  • GPTQ: Accurate Post-Training Quantization

  • SqueezeLLM: Dense-and-Sparse Quantization.

支持多个Runtime, 主要为使用 vllm 和 pytorch backend.

DeepSpeed-MII


MII architecture

针对DeepSpeed 模型实现的,专注于高吞吐量,低延迟和成本效益的开源推理框架

MII(Model Implementations for Inference) 提供加速的文本生成推理通过Blocked KV Caching, Continuous Batching, Dynamic SplitFuse 和高性能的CUDA Kernels, 细节请参考:https://github.com/microsoft/DeepSpeed/tree/master/blogs/deepspeed-fastgen

项目链接

https://github.com/microsoft/DeepSpeed-MII

支持的平台和硬件

NVIDIA GPUs

支持的模型

在这里插入图片描述

MII model support

接口API支持

RESTful API

TensorRT-llm


组装优化大语言模型推理解决方案的工具,提供Python API 来定义大模型,并为 NVIDIA GPU 编译高效的 TensorRT 引擎.

TensorRT-LLM is a toolkit to assemble optimized solutions to perform Large Language Model (LLM) inference. It offers a Python API to define models and compile efficientTensorRTengines for NVIDIA GPUs. It also contains Python and C++ components to build runtimes to execute those engines as well as backends for theTriton Inference Serverto easily create web-based services for LLMs. TensorRT-LLM supports multi-GPU and multi-node configurations (through MPI).

项目链接

docs: https://github.com/NVIDIA/TensorRT-LLM/tree/main/docs/source

github: https://github.com/NVIDIA/TensorRT-LLM

支持的平台和硬件

NVIDIA GPUs (H100, L40S, A100, A30, V100)

支持的模型

  • Baichuan

  • Bert

  • Blip2

  • BLOOM

  • ChatGLM

  • Falcon

  • Flan-T5

  • GPT

  • GPT-J

  • GPT-Nemo

  • GPT-NeoX

  • InternLM

  • LLaMA

  • LLaMA-v2

  • Mistral

  • MPT

  • mT5

  • OPT

  • Qwen

  • Replit Code

  • SantaCoder

  • StarCoder

  • T5

  • Whisper

接口API支持

Python API, Pytorch API, C++ API, NVIDIA Triton Inference Server,

量化(Quantization)方法

INT8 SmoothQuant (W8A8), NT4 and INT8 Weight-Only (W4A16 and W8A16), GPTQ and AWQ (W4A16), FP8 (Hopper)

添加图片注释,不超过 140 字(可选)

ref: https://github.com/NVIDIA/TensorRT-LLM/blob/main/docs/source/precision.md

其他

TensorRT-LLM 主要特色:

  • Multi-head Attention(MHA)

  • Multi-query Attention (MQA)

  • Group-query Attention(GQA)

  • In-flight Batching

  • Paged KV Cache for the Attention

  • Tensor Parallelism

  • Pipeline Parallelism

  • INT4/INT8 Weight-Only Quantization (W4A16 & W8A16)

  • SmoothQuant

  • GPTQ

  • AWQ

  • FP8

  • Greedy-search

  • Beam-search

  • RoPE

取代产品岗,国内又一新兴岗位在崛起!这才是产品经理未来5年最好的就业方向#### 一、大模型全套的学习路线

学习大型人工智能模型,如GPT-3、BERT或任何其他先进的神经网络模型,需要系统的方法和持续的努力。既然要系统的学习大模型,那么学习路线是必不可少的,下面的这份路线能帮助你快速梳理知识,形成自己的体系。

L1级别:AI大模型时代的华丽登场

L2级别:AI大模型API应用开发工程

L3级别:大模型应用架构进阶实践

L4级别:大模型微调与私有化部署

一般掌握到第四个级别,市场上大多数岗位都是可以胜任,但要还不是天花板,天花板级别要求更加严格,对于算法和实战是非常苛刻的。建议普通人掌握到L4级别即可。

以上的AI大模型学习路线,不知道为什么发出来就有点糊,高清版可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。
本文转自 https://blog.csdn.net/mama19971023/article/details/140993495?spm=1001.2014.3001.5501,如有侵权,请联系删除。

### 解决大模型传输问题的方法 对于大型语言模型(LLM),其体积庞大,导致在网络上传输时面临诸多挑战。为了有效解决这些问题,可以采用多种策略和技术。 #### 使用量化技术减小模型尺寸 量化是一种有效的压缩方法,能够显著减少模型的存储需求并提高计算效率。通过将权重从高精度数值表示转换为低精度数值表示,例如从FP16(16位浮点)降至INT4(4位整数),不仅减少了所需的空间,还降低了内存带宽消耗[^2]。这种方法允许更大规模的语言模型能够在资源有限的情况下部署和高效运行。 #### 利用分布式文件系统优化传输过程 当面对超大规模预训练模型时,单机难以承载整个模型的数据量。此时可借助分布式文件系统来分割并行处理任务。这类系统支持跨多台服务器同步读取写入操作,从而加快下载速度并增强可靠性。此外,还可以考虑使用增量更新机制只传送自上次版本以来发生变化的部分参数而非全部重新发送一遍完整的模型副本。 #### 应用差分隐私保护措施保障安全性和合规性 随着AI系统的广泛应用以及个人敏感信息越来越多地融入其中,确保数据的安全变得至关重要。为此,在不损害性能的前提下实施适当级别的加密算法或模糊化处理手段就显得尤为必要。比如可以在客户端本地完成部分推理工作后再把结果传回云端汇总分析;又或者是利用联邦学习框架让各参与方共同贡献样本而无需暴露原始资料给第三方机构审查验证。 ```python import torch from transformers import AutoModelForCausalLM, BitsAndBytesConfig model_name = "bigscience/bloom" bnb_config = BitsAndBytesConfig( load_in_4bit=True, bnb_4bit_quant_type="nf4", ) model = AutoModelForCausalLM.from_pretrained(model_name, quantization_config=bnb_config) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值