尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

LightCompress与VLLM集成教程:打造高效低延迟LLM推理系统

LightCompress与VLLM集成教程:打造高效低延迟LLM推理系统 LightCompress与VLLM集成教程打造高效低延迟LLM推理系统【免费下载链接】LightCompress[EMNLP 2024 AAAI 2026] A powerful toolkit for compressing large models including LLMs, VLMs, and video generative models.项目地址: https://gitcode.com/gh_mirrors/ll/LightCompressLightCompress是一款强大的大模型压缩工具包支持LLMs、VLMs和视频生成模型的压缩。通过与VLLM后端集成能够实现高效低延迟的LLM推理为用户提供快速且准确的模型服务体验。为什么选择LightCompress与VLLM集成LightCompress提供了多种先进的量化算法如AWQ、GPTQ、RTN等能够在保持模型精度的同时大幅减少模型体积。而VLLM作为高效的LLM推理后端通过优化内存管理和计算效率显著提升推理速度。两者结合可在不牺牲精度的前提下实现推理加速和内存优化非常适合需要高效处理大规模语言模型的场景。LightCompress量化流程示意图展示了从校准数据到量化配置再到转换和裁剪的完整过程环境准备快速搭建集成环境要使用VLLM进行量化推理首先需要安装和配置VLLM环境。打开终端执行以下命令pip install vllm此外对于FP8量化还需要安装QPyTorch库pip install qtorch模型量化选择适合的量化方案LightCompress支持多种量化格式以满足不同的性能和精度需求。以下是几种常见的量化方案W8A16量化平衡性能与精度在W8A16量化设置中大型语言模型通常不会出现明显的精度下降。这种情况下推荐使用简单的RTNRound to Nearest算法它不需要额外的校准步骤运行速度快。配置文件路径configs/quantization/backend/vllm/rtn_w8a16.yml关键配置如下quant: method: RTN weight: bit: 8 symmetric: True granularity: per_group group_size: 128 need_pack: True确保将need_pack参数设置为True这会将8位权重打包成torch.int32格式以便VLLM直接加载和推理。W4A16量化极致压缩与精度保障在W4A16量化设置中RTN算法无法保证精度因此需要更高级的量化算法。推荐使用LightCompress中的AWQ算法。配置文件路径configs/quantization/backend/vllm/awq_w4a16.yml如果AWQ无法满足精度要求还可以使用AWQ OmniQuant组合算法配置文件路径configs/quantization/backend/vllm/w4a16_combinFP8量化动态与静态的灵活选择LightCompress支持FP8动态和静态量化。动态量化中权重按通道量化激活按令牌动态量化静态量化中权重按张量量化激活按张量静态量化。推荐使用AWQ算法以获得更好的量化精度。动态量化配置文件路径configs/quantization/backend/vllm/fp8/awq_fp8.yml静态量化配置文件路径configs/quantization/backend/vllm/fp8/awq_fp8_static.yml导出量化模型为VLLM推理做准备完成量化配置后需要导出VLLM可直接加载的量化模型。在配置文件中添加以下保存设置save: save_vllm: True save_path: /path/to/save_for_vllm_quant_model/确保将save_vllm设置为True。对于W4A16和W8A16量化LightCompress会将权重导出为torch.int32格式对于W8A8量化会导出为torch.int8格式同时导出相关的量化参数。然后修改运行脚本中的配置文件路径并执行# scripts/run_llmc.sh llmcllmc_path export PYTHONPATH$llmc:$PYTHONPATH task_namequant_for_vllm config${llmc}/configs/quantization/backend/vllm/awq_w4a16.yml运行完成后真实的量化模型将存储在save.save_path指定的路径。VLLM推理快速部署与使用离线批量推理LightCompress提供了使用VLLM在数据集上执行离线批量推理的示例。示例路径examples/backend/vllm/infer_with_vllm.py只需将示例中的model_path替换为导出的量化模型路径然后运行cd examples/backend/vllm python infer_with_vllm.py示例代码片段from transformers import AutoTokenizer from vllm import LLM, SamplingParams model_path /path/to/save_for_vllm_awq_w4/real_quant_model model LLM(model_path) tokenizer AutoTokenizer.from_pretrained(model_path) prompts [ Hello, my name is, The president of the United States is, The capital of France is, The future of AI is, ] sampling_params SamplingParams(temperature0.8, top_p0.95) outputs model.generate(prompts, sampling_params) for output in outputs: prompt output.prompt generated_text output.outputs[0].text print(fPrompt: {prompt!r}, Generated text: {generated_text!r})部署推理服务VLLM可以部署为实现OpenAI API协议的服务器作为使用OpenAI API的应用程序的替代品。默认情况下服务器启动在http://localhost:8000可通过--host和--port参数指定地址。启动服务器vllm serve /path/to/save_for_vllm_awq_w4/real_quant_model查询服务器curl http://localhost:8000/v1/completions -H Content-Type: application/json -d { model: /path/to/save_for_vllm_awq_w4/real_quant_model, prompt: What is the AI?, max_tokens: 128, temperature: 0 }总结高效LLM推理的最佳实践通过LightCompress与VLLM的集成我们可以轻松实现高效低延迟的LLM推理系统。无论是离线批量推理还是在线服务部署这种组合都能提供出色的性能和精度。根据具体需求选择合适的量化方案并按照本文介绍的步骤进行配置和部署即可快速搭建起自己的高效LLM推理系统。更多详细信息请参考官方文档docs/en/source/backend/vllm.md【免费下载链接】LightCompress[EMNLP 2024 AAAI 2026] A powerful toolkit for compressing large models including LLMs, VLMs, and video generative models.项目地址: https://gitcode.com/gh_mirrors/ll/LightCompress创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表