-
Notifications
You must be signed in to change notification settings - Fork 37
Expand file tree
/
Copy pathquiz.json
More file actions
90 lines (90 loc) · 3.28 KB
/
Copy pathquiz.json
File metadata and controls
90 lines (90 loc) · 3.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
{
"lesson": "17-claude-agent-sdk",
"title": "Claude Agent SDK:子 agent 与会话存储",
"questions": [
{
"stage": "pre",
"question": "Anthropic Client SDK 和 Claude Agent SDK 之间的区别是什么?",
"options": [
"Client SDK 是原始的 Messages API;Agent SDK 是 Claude Code 的 harness 形态,带内置工具、MCP、hook、子 agent 和会话存储",
"Client SDK 收费;Agent SDK 免费",
"Client SDK 只支持 Python",
"没有区别"
],
"correct": 0,
"explanation": "Client SDK 给你那个循环;Agent SDK 提供预先搭好的循环。"
},
{
"stage": "pre",
"question": "子 agent(subagent)有文档记载的两个用途是什么?",
"options": [
"并行化和上下文隔离",
"缓存和限流",
"日志和指标",
"认证和授权"
],
"correct": 0,
"explanation": "子 agent 并发运行独立工作,并通过隔离上下文来保住编排者的上下文预算。"
},
{
"stage": "check",
"question": "下列哪个方法不属于会话存储的接口面?",
"options": [
"append",
"load",
"list_subkeys",
"compile_prompt"
],
"correct": 3,
"explanation": "会话存储提供 append、load、list_sessions、delete、list_subkeys;compile_prompt 不是会话 API。"
},
{
"stage": "check",
"question": "下列哪一个不是 Claude Agent SDK 的生命周期 hook?",
"options": [
"PreToolUse",
"PostToolUse",
"PreCompact",
"PreEmbedding"
],
"correct": 3,
"explanation": "hook 包括 PreToolUse、PostToolUse、SessionStart/End、UserPromptSubmit、PreCompact、Stop、Notification。PreEmbedding 不是 hook。"
},
{
"stage": "check",
"question": "trace 上下文如何跨 agent 和 CLI 子进程传播?",
"options": [
"通过文件系统",
"通过传入 CLI 子进程的 W3C trace context 头",
"只通过提供商的仪表盘",
"只通过环境变量"
],
"correct": 1,
"explanation": "调用方的 OTel span 通过 W3C trace context 传播进 CLI 子进程,于是整个多进程运行是同一条 trace。"
},
{
"stage": "post",
"question": "什么是子 agent 过度孵化(over-spawn),它何时发生?",
"options": [
"为 100 个微小任务孵化 100 个子 agent,开销占主导;应改为批处理",
"忘记关闭子 agent",
"在 SessionStart 之前孵化",
"孵化的子 agent 数量超过 CPU 核数"
],
"correct": 0,
"explanation": "子 agent 有开销;应对小任务做批处理,而不是每个都孵化一个。"
},
{
"stage": "post",
"question": "相比自托管的 SDK,Claude Managed Agents 做了什么权衡?",
"options": [
"用控制力换取托管基础设施(长时运行的异步、内置 prompt caching、内置压实)",
"用延迟换成本",
"用工具换记忆",
"用 tracing 换流式输出"
],
"correct": 0,
"explanation": "Managed Agents 是面向长时异步工作的托管替代方案;更少控制力,更少运维面。"
}
]
}