Raven Agent Loop全解Turn、Iteration、子代理与检查点回滚如何协同工作【免费下载链接】RavenThe Harness of Harnesses: a trusted, persistent, self-evolving multi-agent ecosystem for all-domain collaboration.项目地址: https://gitcode.com/gh_mirrors/raven35/Raven如果你想知道 Raven 多智能体系统的心脏是如何跳动的这篇文章就是为你准备的。Raven Agent Loop 是 Raven一个可信、持久、可自进化的多智能体协作生态的核心执行引擎它接收消息、组装上下文、调用大模型、执行工具并返回结果。本文将用最少代码、最多的类比带你快速看懂 Turn回合、Iteration迭代、子代理Subagent与检查点回滚Checkpoint Rollback四大机制以及它们如何协同保障每一次任务可靠完成。上图是 Raven 插件体系中一份技能参考文档的截图——这类结构化材料正是 Agent Loop 在每一轮上下文中为模型准备的背景知识之一。 先看整体AgentLoop 是什么AgentLoop 定义在 raven/agent/loop/main.py它的职责被官方注释概括为五步从脊柱spine接收消息用历史、记忆、技能组装上下文调用大模型执行模型发起的工具调用把结果发回去它由四个 Mixin 组合而成TurnPathMixin回合执行、WiringMixin装配、McpGlueMixinMCP 工具、OrganGlueMixin记忆等器官对应源码 raven/agent/loop/turn_path.py、raven/agent/loop/wiring.py。可以把它想象成一家餐厅Turn 是一单订单的处理周期Iteration 是厨师在灶台前后跑的一趟趟。⏱️ Turn 与 Iteration一个回合里的两层循环Turn回合 你发一句话 → 代理干完活给出答复的完整过程。Iteration迭代 回合内部的单次思考—行动循环模型输出 → 可能带工具调用 → 执行工具 → 结果喂回模型 → 再思考……两层结构在代码里体现得很直接回合策略 TurnPolicy 定义了max_iterations默认40 次迭代、是否交互式、空响应恢复策略等真正的迭代循环while iteration iteration_cap位于 raven/agent/loop/turn_path.py 中每次迭代都会经过上下文刷新 → 能力选择 → 迭代钩子 → LLM 调用 → 工具执行。防卡死保险丝迭代不会无限转迭代循环内置了三道保险丝常量见 raven/agent/loop/main.py保险丝触发条件动作工具失败环检测同一工具以同类错误连续失败 2 次注入换条路的提示无进展检测同一调用拿到完全相同的结果达 8 次提示一次仍无变化则升级到拒绝执行拒绝上限无进展拒绝达 3 次结束回合避免空转烧钱此外还有墙钟预算即使迭代次数没到上限累计耗时超限也会触发收尾模式让模型总结当前进展而不是硬跑到底。 检查点回滚每回合自动存档钩子可时光倒流每回合一次的影子 Git 快照Raven 的 CheckpointService 为每个工作目录维护一个独立的影子 Git 仓库存放在.raven/shadow.git一个回合 一个提交每回合结束执行commit_turncheckpoint.py 第277行记录回合改了哪些文件绝不碰你的.git影子仓库用独立--git-dir与用户仓库完全隔离可随时删除默认黑名单.env、node_modules/、venv/、私钥等一律不进快照永不破坏回合任何 git 操作失败都静默降级且单次 git 调用限时 30 秒。如果某个回合中途被打断比如一次多文件编辑写到一半下一回合的恢复提示里就能列出上一个回合改过哪些文件配合影子仓库把损坏的文件还原回去——这就是文档所说的工作树的撤销栈。钩子回滚模型层面也可以重掷骰子除了文件快照Agent Loop 还支持迭代级回滚注册在 raven/agent/hook/ 的钩子可以检查模型的草稿不满意就把本轮追加的消息全部弹出、重新采样且不消耗迭代预算。为防止门神钩子无限弹稿每回合回滚上限为 8 次_MAX_HOOK_ROLLBACKS超限后降级放行。也就是说检查点守护的是磁盘钩子回滚守护的是对话质量两层机制各管一段。 子代理大任务拆给外包团队当主代理判断某个子任务可以并行时会通过子代理管理器派生独立的小代理。关键约束在 SubagentWiring 中定义并发子代理上限默认8 个每小时派生上限默认30 个防止失控繁殖。子代理拥有多种后端raven/agent/subagent/backends/可以复用 Raven 自身的 AgentLoop也可以接入 CLI 代理或纯 API 调用。更高级的玩法是DAG 模式把任务拆成有向无环图各节点由子代理认领执行并提供三个控制工具供主代理随时介入——CancelDagTool取消整张图、ResolveDagNodeTool手动裁决卡住的节点、DagStatusTool查看进度。子代理的结果最终被收敛回主回合作为工具结果并入上下文主代理再据此决定下一步。 一次完整回合的旅程总结把上面四块拼起来一次典型回合的时间线是进入回合接收消息组装上下文历史 记忆 技能材料迭代循环思考 → 调工具 → 结果回流受 40 次上限、墙钟预算与三道防卡死保险丝约束需要时派生子代理并行干活钩子把关草稿被回滚重采样每回合 ≤8 次回合收尾向影子 Git 提交检查点记录变更文件清单随时可回滚交付答复结果经脊柱发回给用户。想进一步动手可以直接打开这几个入口核心循环 raven/agent/loop/、子代理编排 raven/agent/subagent/、钩子契约 raven/agent/hook/以及追踪规范 docs/TRACING_STANDARD_API.md。理解了 Turn、Iteration、子代理与检查点回滚这四块拼图你就掌握了读懂 Raven 多智能体系统的钥匙 ️。【免费下载链接】RavenThe Harness of Harnesses: a trusted, persistent, self-evolving multi-agent ecosystem for all-domain collaboration.项目地址: https://gitcode.com/gh_mirrors/raven35/Raven创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
小白程序员轻松入门AI Agent开发工程师之路 随着大语言模型(LLM)的发展,企业需要的是能可靠完成真实业务任务的AI Agent软件系统,催生了"AI Agent开发工程师"这一新岗位。文章拆解了该岗位所需的8大核心能力域,包括后端工程基础、Python工程能力、LLM API与Prompt、Agent Loop与Tool Use、RAG与知识库、Context… · 2026/9/25 19:10:28
点云预处理与特征计算:任务导向的工业级实践指南 1. 为什么点云预处理不是“清洗一下就完事”的体力活点云数据预处理和特征计算,这两个词在测绘、自动驾驶、工业检测、数字孪生这些领域里天天被提起,但绝大多数人一上手就栽在第一步——误以为它只是“把噪点删掉、把空洞补上、再导出个ply文件”这种标… · 2026/9/25 19:10:04
基于昇腾Atlas 300V 24G推理卡的YOLO模型部署与调优实践 前阵子团队准备把一套基于YOLOv5的检测服务从GPU服务器迁移到昇腾Atlas上,群里讨论最多的一句话就是:“atlas 300v 24g是运算加速卡吗?”我当时也愣了一下。后来翻完产品文档、踩了一周坑,才算把这卡的脾气摸清楚。如果你也是第一… · 2026/9/25 19:09:58
AI改写为什么必须验证?avoid-ai-writing保留性校验器validate.js与编辑契约设计详解 AI改写为什么必须验证?avoid-ai-writing保留性校验器validate.js与编辑契约设计详解 【免费下载链接】avoid-ai-writing Skill that audits and rewrites content to remove AI writing patterns. Use it with your favorite agents including Claude Code, OpenCla… · 2026/9/25 19:43:40
2026年实测这3个学生党必备的降AI率平台,毕业论文AI率检测从红标变绿码! 最近辅导学弟学妹写论文,发现一个新情况:大家不再只担心查重率高,反而对AIGC检测更焦虑了。导师一句“AI痕迹太重”,可能直接让整篇论文被打回重写。现在知网、维普的AI检测红线卡在10%,超过就存在风险。市面上的降AI工… · 2026/9/25 19:43:34
基于Neo4j图数据库的电影知识问答系统实战:从知识图谱构建到Cypher查询 简介:这份资源是面向计算机专业学生与知识图谱初学者的一套电影知识问答系统完整项目,可作为课程大作业、毕业设计或自学练手参考。项目以知识图谱为核心,结合Neo4j图数据库存储实体与关系,并配套Python后端与前端页面,… · 2026/9/25 19:43:34
二叉树后序遍历全解析:从递归到迭代,串联深度、BST与线索化 之前给自己定的刷题计划走到第 14 天,这一题是二叉树后序遍历。原以为遍历这种题十分钟就能拿下,结果被一个运行时错误绊住,调试完反而把递归、迭代、线索化这些知识点全部串起来了。如果你也经常在写二叉树程序时报“RecursionError”&#… · 2026/9/25 19:43:28
【自查清单】身体早衰的5个早期信号,附常见疑问解答 下面这份清单,帮你对照着看看自己有没有"提前透支"的苗头。不是要大家对号入座吓自己,而是提醒该上心了——很多早衰的表现,早期调一调就缓得过来,拖久了才麻烦。趁着还没到非要调理不可的地步,先照镜子、对… · 2026/9/25 19:43:22
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37