Skip to main content

chat

ChatResult

@dataclass
class ChatResult()

(实验性)聊天的结果。几乎肯定会更改。

chat_id

聊天的ID。

chat_history

聊天的历史记录。

summary

从聊天中获得的摘要。

cost

聊天的成本。 每种使用类型的值都是一个包含该特定类型成本信息的字典。

  • "usage_including_cached_inference":总使用量的成本信息,包括缓存推理中的令牌。
  • "usage_excluding_cached_inference":令牌使用量的成本信息,不包括缓存中的令牌。不会大于"usage_including_cached_inference"。

human_input

在聊天过程中征求的人类输入的列表。

initiate_chats

def initiate_chats(chat_queue: List[Dict[str, Any]]) -> List[ChatResult]

初始化一系列聊天。

参数

  • chat_queue List[Dict] - 包含聊天信息的字典列表。

    每个字典应包含ConversableAgent.initiate_chat的输入参数。 例如:

    • "sender" - 发送方代理。
    • "recipient" - 接收方代理。
    • "clear_history"(bool)- 是否清除与代理的聊天历史记录。默认为True。
    • "silent"(bool或None)-(实验性)是否打印此对话中的消息。默认为False。
    • "cache"(Cache或None)- 用于此对话的缓存客户端。默认为None。
    • "max_turns"(int或None)- 聊天的最大轮数。如果为None,则聊天将持续到满足终止条件为止。默认为None。
    • "summary_method"(str或callable)- 指定从聊天中获取摘要的方法的字符串或可调用对象。默认为DEFAULT_summary_method,即"last_msg"。
    • "summary_args"(dict)- 要传递给summary_method的参数字典。默认为{}。
    • "message"(str,callable或None)- 如果为None,则调用input()以获取初始消息。
    • **context - 要传递给聊天的其他上下文信息。
    • "carryover" - 可以用于指定要传递给此聊天的carryover信息。如果提供了carryover,则在generate_init_message中生成初始聊天消息时将此carryover与"message"内容结合起来。
    • "finished_chat_indexes_to_exclude_from_carryover" - 可以通过指定已完成聊天列表的索引列表来使用,从中排除carryover的摘要。如果未提供"finished_chat_indexes_to_exclude_from_carryover"或为空列表,则将使用所有已完成聊天的摘要。

返回

  • (list) - 与chat_queue中已完成聊天对应的ChatResult对象列表。

a_initiate_chats

async def a_initiate_chats(
chat_queue: List[Dict[str, Any]]) -> Dict[int, ChatResult]
async def a_initiate_chats(
chat_queue: List[Dict[str, Any]]) -> Dict[int, ChatResult]

在这个示例中,我们定义了一个名为 a_initiate_chats 的异步函数。它接受一个名为 chat_queue 的参数,类型为 List[Dict[str, Any]],并返回一个类型为 Dict[int, ChatResult] 的结果。

这个函数的作用是启动一系列的聊天,并返回一个字典,其中键是聊天的编号,值是聊天的结果。 (异步)初始化一个聊天列表。

参数:

  • 请参考 initiate_chats

返回值:

  • (字典):一个包含已完成聊天的 ChatId: ChatResult 对应关系的字典,其中 ChatId 是聊天的标识,ChatResult 是聊天的结果。