跳到主要内容

agentchat.contrib.capabilities.text_compressors

TextCompressor

class TextCompressor(Protocol)

定义了文本压缩的协议,以优化代理的交互。

压缩文本

def compress_text(text: str, **compression_params) -> Dict[str, Any]

该方法接受一个字符串作为输入,并返回一个包含压缩文本和其他相关信息的字典。压缩文本应存储在字典中的'compressed_text'键下。为了计算保存的标记数量,字典应包括'origin_tokens'和'compressed_tokens'键。

LLMLingua

class LLMLingua()

使用LLMLingua压缩文本消息,以提高处理和响应生成的效率。

注意:压缩的效果以及由此节省的标记数量可能会根据消息的内容和用于PromptCompressor的特定配置而有所不同。

__init__

def __init__(prompt_compressor_kwargs: Dict = dict(
model_name="microsoft/llmlingua-2-bert-base-multilingual-cased-meetingbank",
use_llmlingua2=True,
device_map="cpu",
),
structured_compression: bool = False) -> None

参数:

  • prompt_compressor_kwargs dict - 一个用于PromptCompressor的关键字参数字典。默认为一个包含model_name设置为"microsoft/llmlingua-2-bert-base-multilingual-cased-meetingbank"、use_llmlingua2设置为True、device_map设置为"cpu"的字典。
  • structured_compression 布尔 - 一个标志,指示是否使用结构化压缩。如果为True,则使用PromptCompressor的structured_compress_prompt方法。否则,使用compress_prompt方法。默认为False。 字典。

引发:

  • ImportError - 如果未安装 llmlingua 库。