用途
Swarm Orchestration 用于编排多智能体集群(multi-agent swarms),依托 agentic-flow 的高级协调系统,实现并行任务执行、动态拓扑切换与智能协调。当任务规模超出单个智能体处理能力时,可使用本技能进行扩展。
主要能力
- 拓扑模式:支持三种拓扑结构。
- Mesh(对等网状):各智能体地位平等,分布式决策,通信方式为 broadcast。
- Hierarchical(女王-工作者):集中式协调,由 queen 负责统筹,workers 为专业化执行者。
- Adaptive(自适应):根据任务自动切换拓扑,可按 task-complexity 进行优化。
- 任务编排:支持并行执行(parallel)、带依赖关系的流水线执行(pipeline)以及自适应执行(autoOrchestrate,由集群自行决定执行策略)。
- 记忆协调:通过 swarm memory 在集群内共享状态,智能体可读取共享记忆。
- 高级特性:负载均衡(支持 dynamic 策略,可基于 cpu、memory、task-queue 等指标)、容错(支持重试与任务重新分配)、性能监控(可获取吞吐量、延迟、成功率、智能体利用率等指标)。
- Hooks 集成:提供任务前协调、任务后同步、会话恢复等钩子命令。
使用方式
前置条件:agentic-flow v3.0.0-alpha.1+、Node.js 18+,了解分布式系统会有帮助。
快速开始:
# 初始化集群
npx agentic-flow hooks swarm-init --topology mesh --max-agents 5
# 生成智能体
npx agentic-flow hooks agent-spawn --type coder
npx agentic-flow hooks agent-spawn --type tester
npx agentic-flow hooks agent-spawn --type reviewer
# 编排任务
npx agentic-flow hooks task-orchestrate \
--task "Build REST API with tests" \
--mode parallel
拓扑初始化示例(TypeScript):
// Mesh
await swarm.init({
topology: 'mesh',
agents: ['coder', 'tester', 'reviewer'],
communication: 'broadcast'
});
// Hierarchical
await swarm.init({
topology: 'hierarchical',
queen: 'architect',
workers: ['backend-dev', 'frontend-dev', 'db-designer']
});
// Adaptive
await swarm.init({
topology: 'adaptive',
optimization: 'task-complexity'
});
任务编排示例:
// 并行执行
const results = await swarm.execute({
tasks: [
{ agent: 'coder', task: 'Implement API endpoints' },
{ agent: 'frontend', task: 'Build UI components' },
{ agent: 'tester', task: 'Write test suite' }
],
mode: 'parallel',
timeout: 300000 // 5 minutes
});
// 流水线执行
await swarm.pipeline([
{ stage: 'design', agent: 'architect' },
{ stage: 'implement', agent: 'coder', after: 'design' },
{ stage: 'test', agent: 'tester', after: 'implement' },
{ stage: 'review', agent: 'reviewer', after: 'test' }
]);
// 自适应执行
await swarm.autoOrchestrate({
goal: 'Build production-ready API',
constraints: {
maxTime: 3600,
maxAgents: 8,
quality: 'high'
}
});
记忆协调示例:
await swarm.memory.store('api-schema', {
endpoints: [...],
models: [...]
});
const schema = await swarm.memory.retrieve('api-schema');
高级特性示例:
// 负载均衡
await swarm.enableLoadBalancing({
strategy: 'dynamic',
metrics: ['cpu', 'memory', 'task-queue']
});
// 容错
await swarm.setResiliency({
retry: { maxAttempts: 3, backoff: 'exponential' },
fallback: 'reassign-task'
});
// 性能监控
const metrics = await swarm.getMetrics();
// { throughput, latency, success_rate, agent_utilization }
Hooks 集成命令:
npx agentic-flow hooks pre-task --description "Build API"
npx agentic-flow hooks post-task --task-id "task-123"
npx agentic-flow hooks session-restore --session-id "swarm-001"
适用场景
- 需要将任务从单智能体扩展到多智能体协作的场景。
- 需要并行执行多个相互独立任务的场景。
- 需要按依赖关系分阶段执行的流水线任务(如设计→实现→测试→评审)。
- 需要动态调整协作结构以适应任务复杂度的场景。
最佳实践
- 从小规模开始:先用 2-3 个智能体,再逐步扩展。
- 使用记忆:通过 swarm memory 共享上下文。
- 监控指标:跟踪性能与瓶颈。
- 启用 hooks:实现自动协调与同步。
- 设置超时:防止任务挂起。
限制与故障排查
- 依赖 agentic-flow v3.0.0-alpha.1+ 与 Node.js 18+。
- 智能体未协调:检查记忆访问并启用 hooks。
- 性能不佳:检查拓扑(可改用 adaptive)并启用负载均衡。
更多资料:Swarm Guide(docs/swarm/orchestration.md)、Topology Patterns(docs/swarm/topologies.md)、Hooks Integration(docs/hooks/coordination.md)。