camel.societies 包#
子模块#
camel.societies.babyagi_playing 模块#
- class camel.societies.babyagi_playing.BabyAGI(assistant_role_name: str, user_role_name: str, task_prompt: str = '', task_type: 任务类型 = TaskType.AI_SOCIETY, max_task_history: int = 10, assistant_agent_kwargs: Dict | None = None, task_specify_agent_kwargs: Dict | None = None, task_creation_agent_kwargs: Dict | None = None, task_prioritization_agent_kwargs: Dict | None = None, sys_msg_generator_kwargs: Dict | None = None, extend_task_specify_meta_dict: Dict | None = None, output_language: str | None = None, message_window_size: int | None = None)[来源]#
基类:
object改编自“任务驱动自主代理”的BabyAGI智能体。
- Parameters:
assistant_role_name (str) - 助手扮演的角色的名称。
user_role_name (str) - 用户所扮演角色的名称。
task_prompt (str, optional) – 要执行的任务提示。 (默认值:
"")task_type (TaskType, optional) – 要执行的任务类型。 (默认:
TaskType.AI_SOCIETY)max_task_history (int) – 任务代理中包含的先前任务信息的最大数量 (默认值: :obj:10)
assistant_agent_kwargs (Dict, optional) – 传递给助手代理的额外参数。(默认:
None)task_specify_agent_kwargs (Dict, optional) – 传递给任务指定代理的额外参数。(默认:
None)task_creation_agent_kwargs (Dict, optional) – 传递给任务创建代理的额外参数。(默认:
None)task_prioritization_agent_kwargs (Dict, optional) – 传递给任务优先级代理的额外参数。(默认:
None)sys_msg_generator_kwargs (Dict, optional) – 传递给系统消息生成器的额外参数。(默认:
None)extend_task_specify_meta_dict (Dict, optional) – 用于扩展任务指定元数据的字典。(默认:
None)output_language (str, optional) – 代理输出的语言。(默认:
None)message_window_size (int, optional) – 上下文窗口中包含的先前消息的最大数量。如果为None,则不执行窗口化操作。(默认值:
None)
- init_agents(init_assistant_sys_msg: BaseMessage, assistant_agent_kwargs: Dict | None, task_creation_agent_kwargs: Dict | None, task_prioritization_agent_kwargs: Dict | None, output_language: str | None, message_window_size: int | None = None)[来源]#
使用系统消息初始化助手和用户代理。
- Parameters:
init_assistant_sys_msg (BaseMessage) – 助手代理的初始系统消息。
assistant_agent_kwargs (Dict, optional) – 传递给助手代理的额外参数。
task_creation_agent_kwargs (Dict, optional) – 传递给任务创建代理的额外参数。
task_prioritization_agent_kwargs (Dict, optional) – 传递给任务优先级代理的额外参数。
output_language (str, optional) - 代理输出的语言。
message_window_size (int, optional) – 上下文窗口中包含的最大历史消息数量。如果为None,则不执行窗口化操作。(默认值:
None)
- init_specified_task_prompt(assistant_role_name: str, user_role_name: str, task_specify_agent_kwargs: Dict | None, extend_task_specify_meta_dict: Dict | None, output_language: str | None)[来源]#
使用任务指定代理生成特定任务提示。 生成的特定任务提示将用于替换原始 任务提示。如果没有任务指定代理,则不会 生成特定任务提示。
- Parameters:
assistant_role_name (str) - 助手扮演的角色的名称。
user_role_name (str) - 用户所扮演角色的名称。
task_specify_agent_kwargs (Dict, optional) – 传递给任务指定代理的额外参数。
extend_task_specify_meta_dict (Dict, optional) – 一个用于扩展任务指定元数据字典的字典。
output_language (str, optional) – 代理输出的语言。
- step() ChatAgentResponse[来源]#
BabyAGI代理会从任务列表中提取第一个任务, 根据上下文完成任务,然后创建新任务并 根据目标和前一个任务的结果重新确定任务列表的优先级。它返回助手消息。
- Returns:
它包含生成的助手消息、 助手代理是否终止了对话、 以及任何额外的助手信息。
- Return type:
camel.societies.role_playing 模块#
- class camel.societies.role_playing.RolePlaying(assistant_role_name: str, user_role_name: str, *, critic_role_name: str = 'critic', task_prompt: str = '', with_task_specify: bool = True, with_task_planner: bool = False, with_critic_in_the_loop: bool = False, critic_criteria: str | None = None, model: BaseModelBackend | None = None, task_type: 任务类型 = TaskType.AI_SOCIETY, assistant_agent_kwargs: Dict | None = None, user_agent_kwargs: Dict | None = None, task_specify_agent_kwargs: Dict | None = None, task_planner_agent_kwargs: Dict | None = None, critic_kwargs: Dict | None = None, sys_msg_generator_kwargs: Dict | None = None, extend_sys_msg_meta_dicts: List[Dict] | None = None, extend_task_specify_meta_dict: Dict | None = None, output_language: str | None = None)[来源]#
基类:
object两个代理之间的角色扮演。
- Parameters:
assistant_role_name (str) - 助手扮演的角色的名称。
user_role_name (str) - 用户所扮演角色的名称。
critic_role_name (str, optional) – 评论者所扮演角色的名称。角色名称为
"human"时将评论者设为Human代理,否则将创建CriticAgent。(默认值:"critic")task_prompt (str, optional) – 要执行的任务提示。 (默认值:
"")with_task_specify (bool, optional) – 是否使用任务指定代理。(默认:
True)with_task_planner (bool, optional) – 是否使用任务规划器代理。(默认:
False)with_critic_in_the_loop (bool, optional) – 是否在循环中包含一个评论者。(默认:
False)critic_criteria (str, optional) – 评论代理的评判标准。 如果未指定,则将标准设置为提高任务性能。
model (BaseModelBackend, optional) – 用于生成响应的模型后端。如果指定,它将覆盖所有代理中的模型,除非在特定代理的kwargs中另有指定。(默认:
OpenAIModel使用 GPT_4O_MINI)task_type (TaskType, optional) – 要执行的任务类型。 (默认:
TaskType.AI_SOCIETY)assistant_agent_kwargs (Dict, optional) – 传递给助手代理的额外参数。(默认:
None)user_agent_kwargs (Dict, optional) – 传递给用户代理的额外参数。(默认:
None)task_specify_agent_kwargs (Dict, optional) – 传递给任务指定代理的额外参数。(默认:
None)task_planner_agent_kwargs (Dict, optional) – 传递给任务规划代理的额外参数。(默认:
None)critic_kwargs (Dict, optional) – 传递给critic的额外参数。(默认:
None)sys_msg_generator_kwargs (Dict, optional) – 传递给系统消息生成器的额外参数。(默认:
None)extend_sys_msg_meta_dicts (List[Dict], optional) – 用于扩展系统消息元数据字典的字典列表。(默认值:
None)extend_task_specify_meta_dict (Dict, optional) – 用于扩展任务指定元数据的字典。(默认:
None)output_language (str, optional) – 代理输出的语言。(默认:
None)
- async ainit_chat(init_msg_content: str | None = None) BaseMessage[来源]#
通过重置助手和用户代理来异步初始化聊天。返回角色扮演会话的初始消息。
- Parameters:
init_msg_content (str, optional) – 用户指定的初始消息。 将作为初始消息发送到角色扮演会话中。(默认:
None)- Returns:
- 一个单独的BaseMessage代表初始
消息。
- Return type:
- async astep(assistant_msg: BaseMessage) Tuple[ChatAgentResponse, ChatAgentResponse][来源]#
通过从助手获取消息、使用用户代理处理该消息,然后使用助手代理处理结果消息,异步推进对话。返回一个元组,包含结果助手消息、助手代理是否终止对话以及任何额外的助手信息,以及另一个元组,包含结果用户消息、用户代理是否终止对话以及任何额外的用户信息。
- Parameters:
assistant_msg – 一个BaseMessage,表示来自助手的消息。
- Returns:
- 一个包含两个元素的元组
ChatAgentResponse:第一个结构体包含生成的助手消息、助手代理是否终止了对话以及任何额外的助手信息;第二个结构体包含生成的用户消息、用户代理是否终止了对话以及任何额外的用户信息。
- Return type:
- init_chat(init_msg_content: str | None = None) BaseMessage[来源]#
通过重置助手和用户代理来初始化聊天。返回角色扮演会话的初始消息。
- Parameters:
init_msg_content (str, optional) – 用户指定的初始消息。 将作为初始消息发送到角色扮演会话中。(默认:
None)- Returns:
- 一个单独的BaseMessage代表初始
消息。
- Return type:
- step(assistant_msg: BaseMessage) Tuple[ChatAgentResponse, ChatAgentResponse][来源]#
通过从助手获取消息推进对话,使用用户代理处理该消息,然后使用助手代理处理结果消息。返回一个元组,包含结果助手消息、助手代理是否终止对话以及任何额外的助手信息,以及另一个元组,包含结果用户消息、用户代理是否终止对话以及任何额外的用户信息。
- Parameters:
assistant_msg – 一个BaseMessage,表示来自助手的消息。
- Returns:
- 一个包含两个元素的元组
ChatAgentResponse:第一个结构体包含生成的助手消息、助手代理是否终止对话以及任何额外的助手信息;第二个结构体包含生成的用户消息、用户代理是否终止对话以及任何额外的用户信息。
- Return type:
子包#
- camel.societies.workforce 包
- 子模块
- camel.societies.workforce.base 模块
- camel.societies.workforce.prompts 模块
- camel.societies.workforce.role_playing_worker 模块
- camel.societies.workforce.single_agent_worker 模块
- camel.societies.workforce.task_channel 模块
PacketPacketStatusTaskChannelTaskChannel.archive_task()TaskChannel.get_assigned_task_by_assignee()TaskChannel.get_channel_debug_info()TaskChannel.get_dependency_ids()TaskChannel.get_returned_task_by_publisher()TaskChannel.get_task_by_id()TaskChannel.post_dependency()TaskChannel.post_task()TaskChannel.remove_task()TaskChannel.return_task()
- camel.societies.workforce.utils 模块
- camel.societies.workforce.worker 模块
- camel.societies.workforce.workforce 模块
- 模块内容
模块内容#
- class camel.societies.BabyAGI(assistant_role_name: str, user_role_name: str, task_prompt: str = '', task_type: 任务类型 = TaskType.AI_SOCIETY, max_task_history: int = 10, assistant_agent_kwargs: Dict | None = None, task_specify_agent_kwargs: Dict | None = None, task_creation_agent_kwargs: Dict | None = None, task_prioritization_agent_kwargs: Dict | None = None, sys_msg_generator_kwargs: Dict | None = None, extend_task_specify_meta_dict: Dict | None = None, output_language: str | None = None, message_window_size: int | None = None)[来源]#
基类:
object改编自“任务驱动自主代理”的BabyAGI智能体。
- Parameters:
assistant_role_name (str) - 助手扮演的角色的名称。
user_role_name (str) - 用户所扮演角色的名称。
task_prompt (str, optional) – 要执行的任务提示。 (默认值:
"")task_type (TaskType, optional) – 要执行的任务类型。 (默认:
TaskType.AI_SOCIETY)max_task_history (int) – 任务代理中包含的先前任务信息的最大数量 (默认值: :obj:10)
assistant_agent_kwargs (Dict, optional) – 传递给助手代理的额外参数。(默认:
None)task_specify_agent_kwargs (Dict, optional) – 传递给任务指定代理的额外参数。(默认:
None)task_creation_agent_kwargs (Dict, optional) – 传递给任务创建代理的额外参数。(默认:
None)task_prioritization_agent_kwargs (Dict, optional) – 传递给任务优先级代理的额外参数。(默认:
None)sys_msg_generator_kwargs (Dict, optional) – 传递给系统消息生成器的额外参数。(默认:
None)extend_task_specify_meta_dict (Dict, optional) – 用于扩展任务指定元数据的字典。(默认:
None)output_language (str, optional) – 代理输出的语言。(默认:
None)message_window_size (int, optional) – 上下文窗口中包含的先前消息的最大数量。如果为None,则不执行窗口化操作。(默认值:
None)
- init_agents(init_assistant_sys_msg: BaseMessage, assistant_agent_kwargs: Dict | None, task_creation_agent_kwargs: Dict | None, task_prioritization_agent_kwargs: Dict | None, output_language: str | None, message_window_size: int | None = None)[来源]#
使用系统消息初始化助手和用户代理。
- Parameters:
init_assistant_sys_msg (BaseMessage) – 助手代理的初始系统消息。
assistant_agent_kwargs (Dict, optional) – 传递给助手代理的额外参数。
task_creation_agent_kwargs (Dict, optional) – 传递给任务创建代理的额外参数。
task_prioritization_agent_kwargs (Dict, optional) – 传递给任务优先级代理的额外参数。
output_language (str, optional) – 代理输出的语言。
message_window_size (int, optional) – 上下文窗口中包含的最大历史消息数量。如果为None,则不执行窗口化操作。(默认值:
None)
- init_specified_task_prompt(assistant_role_name: str, user_role_name: str, task_specify_agent_kwargs: Dict | None, extend_task_specify_meta_dict: Dict | None, output_language: str | None)[来源]#
使用任务指定代理生成特定任务提示。 生成的特定任务提示将用于替换原始 任务提示。如果没有任务指定代理,则不会 生成特定任务提示。
- Parameters:
assistant_role_name (str) - 助手扮演的角色的名称。
user_role_name (str) - 用户所扮演角色的名称。
task_specify_agent_kwargs (Dict, optional) – 传递给任务指定代理的额外参数。
extend_task_specify_meta_dict (Dict, optional) – 一个用于扩展任务指定元数据字典的字典。
output_language (str, optional) – 代理输出的语言。
- step() ChatAgentResponse[来源]#
BabyAGI代理会从任务列表中提取第一个任务, 根据上下文完成任务,然后创建新任务并 根据目标和前一个任务的结果重新确定任务列表的优先级。它返回助手消息。
- Returns:
它包含生成的助手消息、 助手代理是否终止了对话、 以及任何额外的助手信息。
- Return type:
- class camel.societies.RolePlaying(assistant_role_name: str, user_role_name: str, *, critic_role_name: str = 'critic', task_prompt: str = '', with_task_specify: bool = True, with_task_planner: bool = False, with_critic_in_the_loop: bool = False, critic_criteria: str | None = None, model: BaseModelBackend | None = None, task_type: 任务类型 = TaskType.AI_SOCIETY, assistant_agent_kwargs: Dict | None = None, user_agent_kwargs: Dict | None = None, task_specify_agent_kwargs: Dict | None = None, task_planner_agent_kwargs: Dict | None = None, critic_kwargs: Dict | None = None, sys_msg_generator_kwargs: Dict | None = None, extend_sys_msg_meta_dicts: List[Dict] | None = None, extend_task_specify_meta_dict: Dict | None = None, output_language: str | None = None)[来源]#
基类:
object两个代理之间的角色扮演。
- Parameters:
assistant_role_name (str) - 助手扮演的角色的名称。
user_role_name (str) - 用户所扮演角色的名称。
critic_role_name (str, optional) – 评论者所扮演角色的名称。角色名称为
"human"时将评论者设为Human代理,否则将创建CriticAgent。(默认值:"critic")task_prompt (str, optional) – 要执行的任务提示。 (默认值:
"")with_task_specify (bool, optional) – 是否使用任务指定代理。(默认:
True)with_task_planner (bool, optional) – 是否使用任务规划器代理。(默认:
False)with_critic_in_the_loop (bool, optional) – 是否在循环中包含一个评论者。(默认:
False)critic_criteria (str, optional) – 评论代理的评判标准。 如果未指定,则将标准设置为提高任务性能。
model (BaseModelBackend, optional) – 用于生成响应的模型后端。如果指定,它将覆盖所有代理中的模型,除非在特定代理的kwargs中另有指定。(默认:
OpenAIModel使用 GPT_4O_MINI)task_type (TaskType, optional) – 要执行的任务类型。 (默认:
TaskType.AI_SOCIETY)assistant_agent_kwargs (Dict, optional) – 传递给助手代理的额外参数。(默认:
None)user_agent_kwargs (Dict, optional) – 传递给用户代理的额外参数。(默认:
None)task_specify_agent_kwargs (Dict, optional) – 传递给任务指定代理的额外参数。(默认:
None)task_planner_agent_kwargs (Dict, optional) – 传递给任务规划代理的额外参数。(默认:
None)critic_kwargs (Dict, optional) – 传递给critic的额外参数。(默认:
None)sys_msg_generator_kwargs (Dict, optional) – 传递给系统消息生成器的额外参数。(默认:
None)extend_sys_msg_meta_dicts (List[Dict], optional) – 用于扩展系统消息元数据字典的字典列表。(默认值:
None)extend_task_specify_meta_dict (Dict, optional) – 用于扩展任务指定元数据的字典。(默认:
None)output_language (str, optional) – 代理输出的语言。(默认:
None)
- async ainit_chat(init_msg_content: str | None = None) BaseMessage[来源]#
通过重置助手和用户代理来异步初始化聊天。返回角色扮演会话的初始消息。
- Parameters:
init_msg_content (str, optional) – 用户指定的初始消息。 将作为初始消息发送到角色扮演会话中。(默认:
None)- Returns:
- 一个单独的BaseMessage代表初始
消息。
- Return type:
- async astep(assistant_msg: BaseMessage) Tuple[ChatAgentResponse, ChatAgentResponse][来源]#
通过从助手获取消息、使用用户代理处理该消息,然后使用助手代理处理结果消息,异步推进对话。返回一个元组,包含结果助手消息、助手代理是否终止对话以及任何额外的助手信息,以及另一个元组,包含结果用户消息、用户代理是否终止对话以及任何额外的用户信息。
- Parameters:
assistant_msg – 一个BaseMessage,表示来自助手的消息。
- Returns:
- 一个包含两个元素的元组
ChatAgentResponse:第一个结构体包含生成的助手消息、助手代理是否终止对话以及任何额外的助手信息;第二个结构体包含生成的用户消息、用户代理是否终止对话以及任何额外的用户信息。
- Return type:
- init_chat(init_msg_content: str | None = None) BaseMessage[来源]#
通过重置助手和用户代理来初始化聊天。返回角色扮演会话的初始消息。
- Parameters:
init_msg_content (str, optional) – 用户指定的初始消息。 将作为初始消息发送到角色扮演会话中。(默认:
None)- Returns:
- 一个单独的BaseMessage代表初始
消息。
- Return type:
- step(assistant_msg: BaseMessage) Tuple[ChatAgentResponse, ChatAgentResponse][来源]#
通过从助手获取消息推进对话,使用用户代理处理该消息,然后使用助手代理处理生成的消息。返回一个元组,包含生成的助手消息、助手代理是否终止了对话以及任何额外的助手信息,同时返回另一个元组,包含生成的用户消息、用户代理是否终止了对话以及任何额外的用户信息。
- Parameters:
assistant_msg – 一个BaseMessage,表示来自助手的消息。
- Returns:
- 一个包含两个元素的元组
ChatAgentResponse:第一个结构体包含生成的助手消息、助手代理是否终止了对话以及任何额外的助手信息;第二个结构体包含生成的用户消息、用户代理是否终止了对话以及任何额外的用户信息。
- Return type: