LLMLingua是一系列用于压缩提示(prompt)的工具,旨在提高大语言模型(LLMs)的推理效率。这些工具通过压缩提示来减少计算成本和推理延迟,同时保持模型的准确性。
LLMLingua的主要功能
- 提示压缩:LLMLingua可以将提示压缩至原来的1/20左右,减少了推理成本和延迟。
- 长上下文支持:LongLLMLingua增强了对长上下文的支持,解决了"中间信息丢失"的问题。
- 无需额外训练:不需要对大语言模型进行额外的训练。
- 信息保留:保持了原始提示中的关键信息。
LLMLingua系列工具
1. LLMLingua
- 基本功能:使用紧凑的语言模型(如GPT2-small)压缩提示,实现高效推理。
- 性能:在保持性能的同时,压缩比可达20倍。
2. LongLLMLingua
- 长上下文优化:专为长上下文场景设计,通过提示压缩提高LLMs的性能。
- 性能提升:在某些场景下,RAG性能提高了21.4%。
3. LLMLingua-2
- 数据蒸馏:使用数据蒸馏技术训练,实现更快的任务无关性压缩。
- 性能优势:比LLMLingua快3到6倍,尤其在处理非领域数据时表现突出。
使用LLMLingua的步骤
1. 安装
bash
pip install llmlingua
2. 基本使用
python
from llmlingua import PromptCompressor
llm_lingua = PromptCompressor()
compressed_prompt = llm_lingua.compress_prompt(
prompt="你的提示内容",
instruction="",
question="",
target_token=200
)
3. 高级使用
python
structured_prompt = """Speaker 4:..."""
compressed_prompt = llm_lingua.structured_compress_prompt(structured_prompt)
案例和应用
- RAG框架:LLMLingua已集成到LangChain和LlamaIndex中,用于增强RAG性能。
- 在线会议和代码生成:可用于压缩在线会议记录和代码提示,提高处理效率。
通过LLMLingua系列工具,开发者可以更好地利用大语言模型,减少成本,提高推理速度。