本节摘要:任务规模超出一场会的承载时,CAMEL 体系的 Workforce 机制把协作升级为"常设委员会":协调员把总任务拆成任务树,工人节点并行处理子任务,逐层回收结果。本节讲团队化的组织结构、与单场会议的四个本质差异、最小团队化代码,以及升级前的检查单。
本节是全册技术上的收官一站。单场会议(第 2 到第 4 章)是"一桌人开一个议题";团队化编排是"一个委员会同时开很多桌"——总任务先被拆成任务树,树上每个节点可以分给一个独立的工人(工人内部可以又是一整场角色扮演会议)。规模上去了,会务逻辑也从"对话轮次"升维成"分派与回收"。
Workforce 的编制有三类岗位:

升级不是"多开几场会",会务逻辑在四个点上换了性质:
from camel.agents import ChatAgent from camel.societies.workforce import Workforce from camel.tasks import Task def build_committee() -> Workforce: """组建最小委员会:一个协调员带三桌工人。 每个工人是单智能体;工人丙按需可替换为嵌套的角色扮演会议。""" data_worker = ChatAgent( system_message="你是数据桌工人。只处理价格采集、口径折算与数值计算。") material_worker = ChatAgent( system_message="你是材料桌工人。只处理文档解析、截图转录与材料登记。") writer_worker = ChatAgent( system_message="你是成文桌工人。只负责把验收通过的结论写成三段式纪要。") return Workforce("季度调研委员会").add_worker(data_worker) \ .add_worker(material_worker) \ .add_worker(writer_worker) async def run_committee() -> None: committee = build_committee() root_task = Task( content="完成三竞品定价调研:采集、解析、折算、成文,产出三段式纪要", id="root") result = await committee.process_async(root_task) print(result.state) # 输出:DONE(或 FAILED,附未达标子任务清单) # 输出(节选): # 协调员已切分任务树:3 个子任务,分派给 3 名工人 # 工人甲回报:价格采集完成,含折算表 # 工人丙回报:纪要成稿,遗留事项 1 项 # DONE
代码里最值得琢磨的是协调员收到的 Task 只有内容与编号——切分方式是协调员的职权。你想干预切分,不是在代码里写死流程,而是把切分偏好写进协调员的配置(比如"每桌子任务不超过三个")。
团队化失败的头号原因是"编制先行,纪律未沉淀"。升级前过这张检查单:
def upgrade_check(team_state: dict) -> list: """团队化升级检查:返回未达标项。""" gaps = [] if not team_state.get("单会复盘已成文"): gaps.append("单场会议复盘未成文化:先会开好,再扩编制") if not team_state.get("议题卡模板统一"): gaps.append("议题卡模板不统一:各桌格式不一致会让总账没法对") if not team_state.get("专家花名册已登记"): gaps.append("自定义专家未登记:委员会无法按能力画像分派") if not team_state.get("子任务预算已设"): gaps.append("子任务轮次预算未设:委员会会静默烧穿预算") return gaps or ["检查通过,可以组建委员会"] # 输出: # upgrade_check({"单会复盘已成文": True, "议题卡模板统一": True, # "专家花名册已登记": False, "子任务预算已设": True}) # -> ['自定义专家未登记:委员会无法按能力画像分派']
💡 关键直觉:委员会的第一收益不是"更快",而是"更大"——能同时推进多个互不依赖的子任务。如果你的任务天然串行(后一步全靠前一步),委员会只会多出协调开销;先做依赖分析(2.4),再决定要不要编制。
背景:竞品调研从一次性任务变成月度常设,且范围扩到五个竞品加功能维度。操作:按本节结构组建委员会——数据桌(采集与折算)、材料桌(手册与截图)、成文桌(纪要),协调员配置切分偏好与子任务预算;4.4 登记的外聘专家花名册并入团队级记忆,供各桌按需引用。结果:月度会从"一场 16 轮的会"变成"三桌并行加一轮总回收",墙钟时间减半;协调员账本显示成文桌成为瓶颈(等其他两桌材料),下期把成文桌改为"随到随写、分段成稿"缓解。解读:注意最后这步——委员会的优化依然靠记账(4.3 的三本账挪到子任务粒度),工具换了层级,方法论没换。
变式:嵌套深度的取舍。工人内部嵌套角色扮演会议能把复杂子任务开成小会,但嵌套每深一层,排查难度翻一倍。经验上限是两层(委员会内的工人是一桌会),再深的嵌套先怀疑任务拆得不够平。