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 - 是否排除与 过滤字典匹配的消息。