ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-weight: bold;margin: 2em 8px 0.5em;color: rgb(15, 76, 129);">背景介绍ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 15px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">在大规模语言模型推理过程中,我们经常会面临几个问题:如何加快语言模型的推理速度;如何增强语言模型对关键信息的感知;如何压缩 prompt 提示和 KV-Cache。这些问题让人头痛,很多解决起来需要很多人力和资源投入。ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 15px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">今天要给大家推荐一个微软开源的项目 LLMLingua,该项目在 GitHub 有超过 1.2k Star,用一句话介绍该项目就是:“To speed up LLMs' inference and enhance LLM's perceive of key information, compress the prompt and KV-Cache, which achieves up to 20x compression with minimal performance loss. ”。ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 15px;margin: 1.5em 8px;color: rgb(63, 63, 63);"> ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;border-radius: 4px;display: block;margin: 0.1em auto 0.5em;" title="null"/>ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-weight: bold;margin: 2em 8px 0.5em;color: rgb(15, 76, 129);">项目介绍ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 15px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">LLMLingua 是一个由微软开发的专注于加快大规模语言模型 ( LLMs ) 的推断速度和增强模型对关键信息感知的开源项目。通过创新的方式压缩提示和 KV-Cache,LLMLingua 能达到高达 20 倍的压缩效果,而且性能损失微乎其微。无论是 GPT2-samll,还是 LLaMA-7B,LLMLingua 都能有效地识别并移除非必需的提示字符串,从而实现高效的大规模语言模型推断。在微软的 LLMLingua 项目中,还推出了 LongLLMLingua 工具,它专门解决 LLMs 中在交流的中部模型迷失的问题,增强了长上下文信息处理的能力。只使用 1/4 的 Token,就可以提高达 21.4% 的 RAG 性能。ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 15px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">当前大模型的应用现状:ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 15px;margin: 1.5em 8px;color: rgb(63, 63, 63);"> ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;border-radius: 4px;display: block;margin: 0.1em auto 0.5em;" title="null"/>LLMLingua 的架构:  LLMLingua 的效果:  如何使用使用 LLMLingua 的过程非常简单,通过 pip 即可快速安装,运行pip install llmlingua。然后,你就可以使用(Long)LLMLingua 来压缩你的提示了,代码如下: fromllmlinguaimportPromptCompressor llm_lingua=PromptCompressor() compressed_prompt=llm_lingua.compress_prompt(prompt,instruction="",question="",target_token=200)
#>{'compressed_prompt':'Question:Samboughtadozenboxes,eachwith30highlighterpensinside,for$10eachbox.Hereangedfiveofboxesintopackagesofsixlterseachandsoldthem$3per.Hesoldtherestthetersseparatelyattheofthreepens$2.Howmuchdidmakeintotal,dollars?\nLetsthinkstepstep\nSambought1boxesx00oflters.\nHebought12*300tersintotal\nSamthentook5boxes6ters0ters.\nHesoldtheseboxesfor5*5\nAfterellingtheseboxestherewere3030highlightersremaining.\nTheseform330/3=110groupsofthreepens.\nHesoldeachofthesegroupsfor$2each,somade110*2=$220fromthem.\nIntotal,then,heearned$220+$15=$235.\nSincehisoriginalcostwas$120,heearned$235-$120=$115inprofit.\nTheansweris115', #'origin_tokens':2365, #'compressed_tokens':211, #'ratio':'11.2x', #'saving':',Saving$0.1inGPT-4.'}
##Orusethephi-2model, ##Beforethat,youneedtoupdatethetransformerstothegithubversion,likepipinstall-Ugit+https://github.com/huggingface/transformers.git llm_lingua=PromptCompressor("microsoft/phi-2")
##Orusethequantationmodel,likeTheBloke/Llama-2-7b-Chat-GPTQ,onlyneed<8GBGPUmemory. ##Beforethat,youneedtopipinstalloptimumauto-gptq llm_lingua=PromptCompressor("TheBloke/Llama-2-7b-Chat-GPTQ",model_config={"revision":"main"})
项目推介作为微软发布的开源项目,LLMLingua 是由经验丰富的开发者团队开发的,他们定期更新和维护此项目,致力于为 LLMLingua 提供最新的功能和改进。根据多篇学术论文的研究表明,LLMLingua 在压缩提示、加速推断、增强大规模语言模型的信息处理能力等方面取得了显著的成果。 以下是该项目 Star 趋势图(代表项目的活跃程度): 
|