首页 教程 常见问题

Agent SDK 子代理

在 Agent SDK 中实现子代理——并行处理多个独立任务。

什么是子代理

子代理是从主代理中派生出的独立代理实例。每个子代理:

使用场景

实现方式

import concurrent.futures
from anthropic import Anthropic

client = Anthropic()

def sub_agent(task):
    """运行一个子代理处理特定任务。"""
    response = client.messages.create(
        model="claude-sonnet-4-20250514",
        max_tokens=1024,
        system=f"你是子代理。你的任务是:{task}",
        messages=[
            {"role": "user", "content": "请完成你的任务并返回结果。"}
        ]
    )
    return response.content[0].text

def parallel_tasks(tasks):
    """并行运行多个子代理。"""
    with concurrent.futures.ThreadPoolExecutor() as executor:
        futures = {
            executor.submit(sub_agent, task): task
            for task in tasks
        }

        results = {}
        for future in concurrent.futures.as_completed(futures):
            task = futures[future]
            results[task] = future.result()

        return results

# 使用
tasks = [
    "审查 auth.py 的安全问题",
    "检查 utils.py 的性能问题",
    "分析 models.py 的架构设计"
]
results = parallel_tasks(tasks)
for task, result in results.items():
    print(f"任务:{task}
结果:{result}
")

注意事项

下一步