Skip to main content

agentchat.contrib.capabilities.transforms_util

cache_key

def cache_key(content: MessageContentType, *args: Hashable) -> str

计算给定消息内容和任何其他可哈希参数的缓存键。

参数

  • content MessageContentType - 要计算缓存键的消息内容。
  • *args - 要包含在缓存键中的任何其他可哈希参数。

cache_content_get

def cache_content_get(cache: Optional[AbstractCache],
key: str) -> Optional[Tuple[MessageContentType, ...]]

从缓存中检索缓存的内容。

参数

  • cache None or AbstractCache - 要从中检索内容的缓存。如果为None,则忽略缓存。
  • key str - 要从中检索内容的键。

cache_content_set

def cache_content_set(cache: Optional[AbstractCache], key: str,
content: MessageContentType, *extra_values)

将内容设置到缓存中。

参数

  • cache None or AbstractCache - 要将内容设置到其中的缓存。如果为None,则忽略缓存。
  • key str - 要将内容设置到其中的键。
  • content MessageContentType - 要设置到缓存中的消息内容。
  • *extra_values - 要传递给缓存的其他值。

min_tokens_reached

def min_tokens_reached(messages: List[Dict],
min_tokens: Optional[int]) -> bool

如果消息中的总标记数大于或等于指定的值,则返回True。

参数

  • messages List[Dict] - 要检查的消息列表。

count_text_tokens

def count_text_tokens(content: MessageContentType) -> int

计算给定消息内容中的文本标记数。

参数

  • content MessageContentType - 要计算文本标记数的消息内容。

is_content_right_type

def is_content_right_type(content: Any) -> bool

一个辅助函数,用于检查传入的内容是否是正确的类型。

is_content_text_empty

def is_content_text_empty(content: MessageContentType) -> bool

检查消息的内容是否不包含任何文本。

参数

  • content MessageContentType - 要检查的消息内容。

should_transform_message

def should_transform_message(message: Dict[str, Any],
filter_dict: Optional[Dict[str, Any]],
exclude: bool) -> bool

根据过滤字典验证是否应用转换。

参数

  • message Dict[str, Any] - 要验证的消息。
  • filter_dict None or Dict[str, Any] - 要验证的过滤字典。如果为None,则始终应用转换。
  • exclude bool - 是否排除与过滤字典匹配的消息。