ai-agent-book 书籍翻译实验怎么用编排模式与上下文隔离控制 Manager 上下文增长
发布时间:2026/9/10 23:49:39 作者:尧图编辑部 阅读量:1,286

ai-agent-book 书籍翻译实验怎么用编排模式与上下文隔离控制 Manager 上下文增长【免费下载链接】ai-agent-book《深入理解 AI Agent设计原理与工程实践》李博杰 著开源主仓库全书正文、编译版 PDF 与按章配套代码项目地址: https://gitcode.com/GitHub_Trending/ai/ai-agent-bookai-agent-book 仓库的 chapter10/book-translation 是第 10 章「书籍翻译 Agent」的配套实验它要回答的问题是当一个 Agent 在一条不断增长的对话里翻完整本书时主上下文会随章节线性膨胀改用**编排模式Orchestration**后Manager 只保存任务、计划、调用记录和文件索引完整译文全部落盘到文件系统Manager 上下文因此基本恒定。本文的任务是把这个实验跑起来用真实 token 数验证「上下文隔离如何控制 Manager 上下文增长」并对比单 Agent 对照组。运行前提来自 README从仓库根目录用uv安装第 10 章共享环境指定 Python 3.12需要OPENAI_API_KEY直连 OpenAI或者只有OPENROUTER_API_KEY时自动改走 OpenRouter内置的 4 章英文小书sample_book/规模刻意很小用于低成本验证机制一次运行费用在几美分级别。编排模式如何做到上下文隔离先看机制再执行。agents.py 实现了四种专职 Agent各自拥有独立上下文Agent输入独立上下文产出上下文特点Glossary Agent全书内容结构化术语表glossary.json读全书产出后即释放Translation Agent当前章节 术语表 翻译指南chapterN_zh.md每章一个独立实例只看到自己这一章Proofreading Agent所有译文 术语表审校报告proofreading_report.json做一致性 / 流畅性检查Manager Agent任务 文件索引 报告摘要调度决策是否发回修订只存元信息不存正文控制 Manager 上下文增长的关键在run_orchestration()里的manager_context字典它只包含task、guide、plan、call_log、file_index、progress六个字段file_index里只存产物路径如glossary.json、chapter1_zh.md从不存放译文正文。每记录一次调用后snapshot_manager()用tiktoken统计这份状态的序列化长度并更新峰值——这就是「Manager 上下文峰值」指标的来源。数据流为Manager 调度 Glossary → 逐章 Translation共享同一份术语表文件→ Proofreading → Manager 依据报告摘要决定把哪些章节发回修订。另外Manager 会把编辑部指定术语house styleEDITORIAL_MANDATEtoken→词元、prompt→提示词、latency→时延、embedding→嵌入向量强制写入共享术语表下发给每个 Translation Agent。单 Agent 看不到术语表只能用自己的默认译法——这也是两组实验的对照点之一。准备环境从仓库根目录开始uv sync --locked --python 3.12 --extra ch10 # 切换目录前先激活环境 # macOS/Linux: source .venv/bin/activate # Windows PowerShell: .\.venv\Scripts\Activate.ps1 # Windows cmd: .venv\Scripts\activate.bat cd chapter10/book-translation cp env.example .env # 填入 OPENAI_API_KEYch10extra 包含 token 统计等本实验需要的依赖见 pyproject.toml 中ch10 [agentbook[tokens,web]]未安装uv时可用python -m pip install -e .[ch10]兜底迁移期间也保留单项目路径python -m pip install -r requirements.txt依赖为openai1.30.0、tiktoken0.7.0、python-dotenv1.0.0。env.example 说明gpt-5.6系列直连 OpenAI 需要组织验证只填OPENROUTER_API_KEY不填OPENAI_API_KEY即可强制走 OpenRouter模型名会被自动映射gpt-5.6-luna→openai/gpt-5.6-luna。先做离线预演不需要 Key 就能看到上下文预算python demo.py --dry-run该模式不调用任何 API用tiktoken离线估算各 Agent 将读到的上下文规模输出包括四 Agent 协作图数据经文件系统流转Manager 只持有路径、Manager 的 4 步执行计划、编辑部指定术语以及「token 预算预估」。其中会直接打印Glossary Agent 读全书的 token 估算每章 Translation Agent 的独立 token 估算Manager 上下文任务/计划/调用记录/文件索引无正文的 token 估算。这一屏可以直观确认「Manager 上下文只随章节数加几行记录、与每章正文长度无关」而单 Agent 的累积上下文随书长线性膨胀。确认结构无误后再去掉--dry-run做真实运行。正式运行编排模式 单 Agent 对照python demo.py不带参数运行时会先打印四 Agent 协作的实时轨迹Manager 制定计划 → 调度 Glossary → 逐章 Translation → Proofreading → 依报告决策修订再打印单 Agent 对照组结果。判断是否按预期完成依次看这几段输出【管理者模式】各 Agent 上下文 token 消耗按 Agent 聚合的调用次数、输入/输出 token 与上下文峰值Manager 上下文峰值只存任务/计划/调用记录/文件索引N tokens这是验证目标指标应为远小于全书长度的量级术语表共享文件各 Translation Agent 引用同一份与审校报告 summary术语一致性对比与术语表遵从率对比由 consistency.py 做确定性字符串匹配统计非模型自评逐术语打印规定译法、默认译法与两组「遵从/出现」计数核心对比表主/Manager 上下文峰值、Manager LLM 决策调用上下文、全流程总 token、术语内部一致率、指定术语遵从率、参与 Agent 种类数最后一行会给出「单 Agent 主上下文峰值是管理者模式 Manager 上下文的 N 倍」。README 给出的示例结果真实运行gpt-5.6-luna4 章小书如下仅作量级参考具体数字每次运行会有小幅波动指标管理者模式单 Agent主/Manager 上下文峰值 (tokens)6972320Manager LLM 决策调用上下文 (tokens)783—全流程总 token118496886术语内部一致率100%89%指定术语遵从率100%53%参与 Agent 种类数41对照组的膨胀来源在run_single_agent()中可以直接读到译文继续留在对话里messages.append后逐章累积「主上下文峰值」 其所有调用中最大的一次 prompt tokens。验证产物落盘运行结束后检查--out-dir默认output/下的两个子目录output/orchestration/glossary.json共享术语表含编辑部指定术语、各章chapterN_zh.md译文、proofreading_report.json审校报告output/single_agent/单 Agent 模式的各章译文与progress.json断点续跑状态provider/model 或源单元指纹不匹配时会报错拒绝复用。译文文件存在且 Manager 峰值指标已打印说明本轮实验完成。可选分支常用参数完整列表见python demo.py --help参数作用默认--dry-run离线预演不调用 API、无需 Key关闭--sample-dir DIR待翻译书籍目录读取其中*.md按文件名排序sample_book/--out-dir DIR产物根目录output/--source-lang LANG/--target-lang LANG源 / 目标语言仅影响提示词措辞英文/中文--no-glossary关闭 Glossary Agent仅保留编辑部指定术语启用--no-proofreading关闭 Proofreading Agent 与 Manager 修订闭环启用--model MODEL临时覆盖模型等价于设OPENAI_MODELgpt-5.6-luna--skip-single只跑管理者模式跳过单 Agent 对照组关闭注意两点--skip-single会跳过对照组因此不产出核心对比表只在你单独验证编排模式流程时使用术语一致性 / 遵从率统计针对英文→中文调校改翻译方向仍可正常翻译但统计表意义有限。离线验证无需 API Key# 从仓库根目录pytest 需要 dev 依赖 uv sync --locked --python 3.12 --extra ch10 --extra dev source .venv/bin/activate cd chapter10/book-translation python -m pytest tests python demo.py --dry-runtests/ 包含术语表与审校报告的空值 / 非法结构回归测试如 glossary 为null、issues非列表、issue 条目非 dict测试打桩 LLM 调用无需 Key。限制与后续入口4 章小书只用于教学预演不代表大规模真实书籍的绝对 token 数值换更强/更弱模型时两种模式的差距会变化更强的单 Agent 更容易自发命中部分常识译法但仍无法覆盖没有唯一标准的术语也仍会跨章漂移。术语一致性 / 遵从率是确定性字符串匹配可能漏判措辞更灵活的译法变体每次运行的具体数字会因模型输出随机性小幅波动量级与结论稳定复现。README 给出的正式验收入口是真实书籍 campaign用本仓库英文版技术书第 1–2 章242,090 字节正文、23 个插图引用、14 个围栏代码块运行python run_official_experiment.py \ --provider ark \ --model doubao-seed-1-6-flash-250615它同时执行四角色管理者组与单 Agent 组把每次真实 API 的 provider/model、输入/输出 token 与时延写入validation/real_UTC/evidence.jsonvalidation/latest.json在所有执行门满足后才标记complete。需要跑正式验收时从该入口进入。【免费下载链接】ai-agent-book《深入理解 AI Agent设计原理与工程实践》李博杰 著开源主仓库全书正文、编译版 PDF 与按章配套代码项目地址: https://gitcode.com/GitHub_Trending/ai/ai-agent-book创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考