当前位置: 首页 > article >正文

AIAgent 才是 Hermes Agent 的“总调度器”:run_agent.py 在系统里到底负责什么?

一、先给结论AIAgent 不是“大模型”而是“任务总控台”很多人第一次看 Hermes Agent容易把核心误解成“调用某个大模型的代码”。但从官方文档和源码结构看真正的核心不是模型本身而是 run_agent.py 里的 AIAgent。它像一个任务总控台先把用户问题、项目上下文、长期记忆、技能、工具说明组织成模型能理解的输入再选择合适的 Provider/API Mode 调用模型如果模型要求调用工具就调度工具执行如果上下文太长就压缩如果主模型失败就切换备用模型如果任务跑太久就用预算机制刹车。二、普通调用大模型 VS AIAgent 调度 Agent有什么本质区别普通大模型调用通常是“给模型一段文本等模型返回一段文本”。AIAgent 要处理的是“让模型在真实环境里完成任务”它需要读文件、查网页、调用终端、管理会话、记住历史、处理异常、在不同平台展示进度。对比项普通 Chat / LLM APIHermes AIAgent输入用户消息用户消息 系统 Prompt Memory Skills Context Files Tool Schemas输出文本回复文本回复或多轮工具调用后的最终结果执行能力模型只能生成内容AIAgent 调度文件、终端、浏览器、MCP 等工具状态管理通常由外部系统维护AIAgent 维护 OpenAI-style conversation history 和 session容错能力调用失败就报错支持 retry、fallback provider、credential refresh 等成本控制通常靠外部限制IterationBudget、上下文压缩、辅助任务 fallback三、两个入口chat() 是简洁版run_conversation() 是完整版AIAgent 对外有两个主要入口。chat() 更像“省心模式”传入一个问题拿回最终文本run_conversation() 更像“工程模式”它返回包含最终回答、完整消息历史、元数据和使用统计的结构化结果。官方文档也说明chat() 本质上是 run_conversation() 的薄封装只是把 final_response 抽出来返回。这意味着如果你只是把 Hermes 当命令行助手用 chat() 就够如果你要把 Hermes 嵌到 Web 系统、自动化平台、任务平台、企业内部工具中就应该重点看 run_conversation()。四、初始化阶段AIAgent 先把运行时“装备”装好看 run_agent.py 的构造函数会发现 AIAgent 初始化参数非常多。GitHub 的项目说明里也提到真实的 AIAgent.__init__ 大约有 60 个参数覆盖凭证、路由、回调、session context、预算、credential pool 等。这些参数不是“堆功能”而是在描述一个 Agent 运行时需要的所有资源。可以把初始化理解成“任务开始前的装备检查”模型用哪个、工具开哪些、当前平台是谁、会话 ID 是什么、最大循环次数是多少、有没有进度回调、是否跳过记忆和上下文文件。五、run_conversation() 主循环一次任务真正怎么跑起来官方文档把每一轮 Turn Lifecycle 拆成清晰步骤生成 task_id、追加用户消息、构建或复用系统 Prompt、检查是否需要预检压缩、按 API mode 构造消息、注入预算/上下文压力提示、应用缓存标记、发起可中断模型调用、解析模型响应。如果返回 tool_calls就执行工具并把结果追加回历史然后回到构造 API 消息继续循环如果返回文本就持久化 session、刷新 memory 并返回。这套流程说明了一个关键事实Agent 不是“一次模型调用”而是“模型思考 → 工具执行 → 结果回填 → 模型再思考”的循环。AIAgent 就是这个循环的控制器。六、Prompt 组装AIAgent 不是自己写 Prompt而是调度 Prompt BuilderAIAgent 并不是把用户输入原封不动丢给模型。它会通过 prompt_builder.py 组装有效系统提示词把 Memory、Skills、Context Files、Personality、工具 schema 等内容组织起来。官方关键源码文件说明中也把 agent/prompt_builder.py 定义为“从 memory、skills、context files、personality 组装系统提示词”的模块。通俗理解Prompt Builder 负责“把菜配齐”AIAgent 负责“决定什么时候上菜、上给哪个模型、用哪种接口格式”。七、Provider 与 API Mode同一套 Agent要能切换不同模型接口Hermes 不是只绑定一个模型。官方文档说明它支持 chat_completions、codex_responses、anthropic_messages 三种 API 执行模式并按显式 api_mode、provider 检测、base_url 推断、默认 chat_completions 的顺序解析。GitHub README 也强调 Hermes 可以使用 Nous Portal、OpenRouter、OpenAI、Anthropic 或自定义端点并可通过 hermes model 切换模型。这就是 AIAgent 的另一个价值业务层不必关心每个模型厂商的消息格式细节AIAgent 把内部消息统一成 OpenAI-style再按目标 Provider 转换。八、可中断模型调用长任务 Agent 必须允许用户打断官方文档提到API 请求会被包装在 _interruptible_api_call() 里实际 HTTP 调用运行在后台线程主线程监听响应完成、interrupt event 或 timeout。如果用户发送新消息、执行 /stop 或系统信号打断API 线程结果会被丢弃不会把半截回复写进历史。这对真实产品很重要。用户可能在 Agent 跑任务时发现方向错了需要立刻改口如果系统不能打断就会浪费 token、时间和工具调用成本。九、工具执行模型负责“提议”AIAgent 负责“审批与落地”当模型返回 tool_calls 时AIAgent 会解析工具调用单个工具直接执行多个工具可通过 ThreadPoolExecutor 并发执行交互式工具会强制顺序执行结果会按原始 tool_call 顺序重新插回历史。这意味着模型并不是直接操作终端或文件系统它只是提出“我要调用哪个工具、参数是什么”真正的执行由 AIAgent 和工具注册表完成。工具执行链路通常包括从 tools/registry.py 查找 handler、触发 pre_tool_call hook、检查危险命令、等待用户审批、执行 handler、触发 post_tool_call hook、把工具结果追加为 roletool 消息。十、Agent-Level Tools有些工具必须由 AIAgent 自己拦截官方文档特别指出有些工具会被 run_agent.py 在进入普通 handle_function_call() 之前拦截例如 todo、memory、session_search、delegate_task。原因是这些工具会修改 Agent 自身状态todo 读写任务状态memory 写长期记忆session_search 查会话库delegate_task 启动子 Agent。这类设计很关键普通工具更多是“对外部世界做动作”Agent-Level Tools 则是“改变 Agent 自身的运行状态”。所以它们不能完全当作普通外部函数处理。十一、消息历史守门人为什么要维护统一 Message FormatAIAgent 内部统一使用 OpenAI 兼容消息格式system、user、assistant、tool。官方文档还强调消息角色必须严格交替system 后是 User → Assistant → User → Assistant工具调用时是 Assistant(with tool_calls) → Tool → Tool → Assistant不能连续两个 assistant也不能连续两个 user只有 tool 可以连续出现。这个“守门”动作看起来不起眼但非常重要。很多模型供应商会拒绝格式错乱的历史消息工具调用如果不成对回填下一轮模型就可能看不懂自己刚刚做了什么。十二、预算、压缩、FallbackAIAgent 的三套刹车系统能连续行动的 Agent 必须有“刹车”。官方文档说明AIAgent 通过 IterationBudget 跟踪循环次数默认 90 次子 Agent 有独立预算受 delegation.max_iterations 控制预算到 100% 时停止并返回已完成工作的总结。上下文方面AIAgent 在 API 调用前发现会话超过模型上下文 50% 时会触发预检压缩Gateway 层在 85% 时也会更激进地自动压缩。压缩前会先 flush memory然后摘要中间消息、保留最近 N 条消息、保证 tool call/result 成对不被拆开。模型失败方面遇到 429、5xx、401/403 等情况时AIAgent 会检查 fallback_providers按顺序尝试备用 provider/model辅助任务如 vision、compression、web extraction 也可以有独立 fallback 链。十三、Callback Surface为什么同一个 AIAgent 能接 CLI、Gateway、ACPAIAgent 支持多种平台回调例如 tool_progress_callback、thinking_callback、reasoning_callback、clarify_callback、step_callback、stream_delta_callback、tool_gen_callback、status_callback。官方文档说明这些回调用于 CLI、Gateway 和 ACP 集成中的实时进度展示。这也是 Hermes 和普通命令行脚本的区别它不是把结果憋到最后一次性吐出来而是让不同平台能看到“正在思考、正在调用工具、需要澄清、已完成一步、正在流式输出”等状态。十四、持久化与记忆刷新一次任务结束不代表信息丢失官方 Agent Loop 文档说明在每轮结束后消息会保存到 SQLite session store由 hermes_state.py 管理Memory 变更会刷新到 MEMORY.md / USER.md用户之后可以通过 /resume 或 hermes chat --resume 恢复会话。[1] GitHub README 也强调 Hermes 会搜索过去对话、构建跨会话用户模型并通过内置学习闭环创建和改进 skills。所以 AIAgent 不只是把这次请求跑完还要把“这次执行过什么、用户偏好是什么、哪些信息值得长期保存”沉淀下来为下一次任务提供上下文。十五、源码协作关系run_agent.py 很大但不是孤岛官方文档在关键源码文件列表中明确写到run_agent.py 是完整 agent loopagent/prompt_builder.py 负责系统 Prompt 组装agent/context_compressor.py 负责默认有损摘要算法agent/prompt_caching.py 负责 Anthropic prompt cachingagent/auxiliary_client.py 负责视觉、摘要等辅助 LLM 任务model_tools.py 负责工具 schema 收集和 handle_function_call() 调度。因此看源码时不建议从 run_agent.py 第 1 行硬啃到最后。更好的方式是围绕一次任务执行链路顺藤摸瓜去看它调用的模块。十六、推荐源码阅读路线别硬啃按职责切片先看 AIAgent.__init__知道它运行时需要哪些配置、凭证、工具、回调、会话和预算。再看 chat()理解简单入口为什么只是 run_conversation() 的封装。重点看 run_conversation()把官方 9 步 Turn Lifecycle 和源码结构对上。看 Provider/API Mode 解析理解为什么同一个 Agent 能接不同模型。看工具调用处理理解 registry、审批、并发、结果回填。看压缩、Fallback 和预算理解长期任务为什么不容易失控。最后看持久化理解 session、memory、resume 如何让任务跨平台延续。十七、用一句话总结 AIAgentAIAgent 是 Hermes Agent 的“运行时大脑外壳”模型负责生成判断和行动意图AIAgent 负责把意图变成可控、可追踪、可恢复、可压缩、可切换模型、可跨平台延续的真实执行过程。如果你要学习 Hermes Agent 架构run_agent.py 不只是一个文件而是一条主线。沿着它你会看到 Agent 工程最核心的几个问题上下文怎么拼、模型怎么选、工具怎么调、危险动作怎么审批、失败怎么降级、长任务怎么压缩、历史怎么保存、经验怎么沉淀。

相关文章:

AIAgent 才是 Hermes Agent 的“总调度器”:run_agent.py 在系统里到底负责什么?

一、先给结论:AIAgent 不是“大模型”,而是“任务总控台”很多人第一次看 Hermes Agent,容易把核心误解成“调用某个大模型的代码”。但从官方文档和源码结构看,真正的核心不是模型本身,而是 run_agent.py 里的 AIAgen…...

【系统架构师-综合题(5)】信息安全技术基础知识点

信息安全技术基础围绕的核心问题很统一:系统如何证明“我是安全的”,以及为了做到这一点,需要哪些目标、技术、协议和管理机制。 所以这一章最适合顺着一条从“安全目标”到“实现手段”再到“安全体系”的主线来理解。 先弄清信息安全到底保…...

LLM成长笔记(六):RAG(检索增强生成)

RAG(检索增强生成)全栈学习博客(通俗原理 详细注释 AI应用强化版) RAG 是让大模型“能回答它没学过的新知识”的核心架构。这篇博客从实际问题出发,用生活化类比建立直觉,通过术语详解深入概念本质&#…...

2026央国企求职哪家强?TOP机构帮你稳住铁饭碗!

引言综述随着 2026 届超 1200 万毕业生涌入就业市场,央国企岗位竞争愈发激烈,岗位竞争比持续攀升。在这样的大环境下,求职者的核心需求集中在系统备考规划、精准岗位匹配以及高保障面试辅导上。本次测评旨在为求职者提供客观、专业的机构对比…...

用高效证书管理加固企业数字边界

在当今企业 IT 基础架构的运行中,数字证书已经成为不可或缺的重要组成部分。这在很大程度上源于企业逐渐将 HTTPS 作为默认的数据传输方式,以实现更加安全的通信环境。从安全与隐私角度来看,这无疑是一项积极的改变,因为数据在传输…...

记一次 .NET 某集群管理软件 内存暴涨分析

一:背景 1. 讲故事 前些天有位朋友微信找到我,说它的程序出现了内存暴涨,自己也没分析出啥,让我看下到底怎么回事,然后让这位朋友抓一个dump,拿它占一卦就行了。 二:内存暴涨分析 1. 为什么会暴…...

容器资源限制

1、创建一个临时容器c1 docker run -it --namec1 --rm centos:v1监控容器的资源使用情况 docker statsmemload工具可以直接占用消耗资源 将memload工具拷贝到c1容器的opt目录下 docker cp memload-7.0-1.r29766.x86_64.rpm c1:/opt在运行的容器中安装上传的安装包 rpm -ivh /op…...

收藏!小白程序员必看:搞定RAG知识库,解锁大模型核心技能!

文章强调知识库是RAG系统的核心,其质量直接影响智能问答效果。构建知识库并非简单处理数据,而是涉及多数据源整合、复杂格式处理、数据更新与版本管理、文档召回优化及系统架构设计等关键环节。作者指出,随着数据量增长,完善的知识…...

原神抽卡数据分析终极指南:免费开源工具助你告别抽卡迷茫

原神抽卡数据分析终极指南:免费开源工具助你告别抽卡迷茫 【免费下载链接】genshin-wish-export Easily export the Genshin Impact wish record. 项目地址: https://gitcode.com/GitHub_Trending/ge/genshin-wish-export 还在为原神抽卡记录无法保存而烦恼吗…...

收藏!揭秘高薪职业:AI大模型训练师,小白也能入门的AI时代新机遇!

本文介绍了AI大模型训练师这一新兴职业,旨在解决AI与人类沟通的障碍。训练师通过拆解人类模糊需求,教AI识别信号,输出精准回应。随着AI技术普及,该岗位需求激增,薪资可达3w。工作内容包括数据管理、模型训练、评估迭代…...

原神祈愿数据分析终极方案:genshin-wish-export架构革命与效能倍增

原神祈愿数据分析终极方案:genshin-wish-export架构革命与效能倍增 【免费下载链接】genshin-wish-export Easily export the Genshin Impact wish record. 项目地址: https://gitcode.com/GitHub_Trending/ge/genshin-wish-export 你是否曾在多设备间苦苦同…...

打开U盘文件夹变成.exe的问题:在MAC ios中的解决办法

Mac文件夹变成.exe文件,通常是由于病毒将原文件夹隐藏并生成同名exe文件所致。 此类情况多发生于Mac移动硬盘或U盘在Windows系统感染病毒后,病毒会隐藏原始文件夹,并生成伪装成文件夹的exe文件。由于Mac系统默认不显示文件扩展名&#xff0c…...

SHE 密钥注入的“通配符魔法”:从 UID 通配到 AUTOSAR 分层落地

想象一下,你是一家汽车电子工厂的技术员,需要为成千上万个 ECU 刷写密钥。每个 ECU 都有一个独一无二的 ID(UID)。如果每次刷写都要读取这个 UID,再根据 UID 计算出专属的密钥数据,那产线的效率会大打折扣。…...

告别检测卡点,okbiye 智能双优化破解毕业论文查重与 AI 识别难题

okbiye-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/AI PPT降重复率 - Okbiye智能写作https://www.okbiye.com/reduceAIGC 一、引言:论文定稿阶段两大检测难题普遍困扰学子 论文撰写收尾阶段,绝大多数毕业生都会直面两道审核关卡&#x…...

Image2.0生成的PPT图片转换成可编辑的PPT的一种方法

老弟,PPT不想做,用AI生成的PPT图片编辑不了很烦恼是吧,俺有一法!~ Edit Banana(最强,开源免费) 能把 AI 图→可编辑 PPTX / DrawIO / SVG 原理:用 SAM 分割图标 / 形状,用…...

全球眼用缓释药市场调查:预计2032年将攀升至25.46亿美元

在全球人口老龄化加速与慢性眼病患病率持续攀升的背景下,眼用缓释药市场正迎来历史性增长窗口。据QYResearch(北京恒州博智国际信息咨询有限公司)最新统计,2025年全球眼用缓释药市场销售额已达15.00亿美元,预计2032年将…...

用 MinIO 搭建 S3 兼容对象存储服务

用 MinIO 搭建 S3 兼容对象存储服务 分类:开源项目部署 MinIO 适合附件、备份归档和 S3 兼容对象文件。这类主题真正跑起来并不难,难的是上线后稳定、可备份、能排错。本文按实操方式整理一套可以直接落地的流程,默认你已经会登录 Linux 服务…...

GEO生成引擎优化:当品牌竞争从搜索结果页迁移到大模型对话窗口

当生成式AI成为信息的首要分发渠道,你的品牌还只盯着SEO吗?一、用户获取信息的路径,已经变了过去十几年,我们习惯了"搜索关键词 → 浏览结果页 → 点击进入网站"这条线性路径。SEO(搜索引擎优化)…...

Perplexity案例法检索深度解析(工业级RAG系统落地避坑手册)

更多请点击: https://intelliparadigm.com 第一章:Perplexity案例法检索深度解析(工业级RAG系统落地避坑手册) Perplexity作为衡量语言模型预测不确定性的核心指标,在RAG系统中并非仅用于后处理重排序,而是…...

从OpenAPI 3.1规范到实时交互式文档:ChatGPT驱动的API文档生成闭环体系(含性能压测数据对比)

更多请点击: https://kaifayun.com 第一章:从OpenAPI 3.1规范到实时交互式文档:ChatGPT驱动的API文档生成闭环体系(含性能压测数据对比) OpenAPI 3.1 是首个原生支持 JSON Schema 2020-12 的 API 描述标准&#xff0c…...

2026线下全网营销课程5大甄选:高适配内容改善品牌转化低迷现状

引文/摘要把流量费花在无效投放上,不如先从内部梳理内容适配度。2026年全网营销进入新阶段,据调研超过78%的营销团队已将AI工具纳入日常工作流。然而很多企业面临“内容做了不少,转化却上不去”的尴尬。本质问题往往不是内容不够多&#xff0…...

气动黄油机核心技术解析:泵的选择与厂家评估方法论

工业黄油就是润滑脂,属于半固体润滑剂,润滑脂的作用主要是润滑、保护和密封。可以有效降低机械摩擦,防止磨损,同时还能防腐蚀及密封防尘。毫不夸张的说,润滑脂就是万金油,黄油加注机广泛应用于汽车制造业、…...

量子优化算法ITEMC:原理、实现与应用

1. 量子优化算法ITEMC的核心原理量子优化算法ITEMC(Imaginary Time Evolution Mimicking Circuit)是一种创新的混合量子-经典算法,专门用于解决二次无约束二进制优化(QUBO)问题。其核心思想源自量子力学中的虚时间演化…...

QQ空间说说备份终极指南:GetQzonehistory完整教程

QQ空间说说备份终极指南:GetQzonehistory完整教程 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 你是否曾经想要永久保存QQ空间里那些珍贵的青春回忆?那些承载着…...

VMware虚拟机创建详细教程(新手小白友好)

本教程以 VMware Workstation Pro 16/17 版本为例,演示如何创建一台新的虚拟机。第一步:启动新建虚拟机向导打开VMware Workstation,点击主界面上的 “创建新的虚拟机”,或依次点击菜单栏“文件” → “新建虚拟机”。图1 VMware创…...

Photoshop‌2022安装教程

ps是一款使用率很高的设计工具,此篇分享一下Windows2022版本的安装教程 1、下载的压缩包解压2、右键以管理员身份运行Set-up.exe3、选择语言及安装位置(建议安装在系统盘C以外的其他磁盘)4、继续安装,等待安装完成点击关闭即可5、…...

Vue/React/Svelte通用Lovable实践框架(内部首发):1套配置+4个插件=自动注入用户喜爱度

更多请点击: https://kaifayun.com 第一章:Vue/React/Svelte通用Lovable实践框架(内部首发):1套配置4个插件自动注入用户喜爱度 Lovable 是一套面向用户体验(UX)可量化提升的前端工程化实践框架…...

Cortex-M0+与M3/M4的SWD调试接口整合方案

1. Cortex-M0与Cortex-M3/M4的SWD调试接口整合挑战在嵌入式系统设计中,经常需要将不同性能等级的ARM Cortex-M系列处理器组合使用。比如将低功耗的Cortex-M0与高性能的Cortex-M3/M4搭配,形成主从处理器架构。这种组合在物联网终端、工业控制器等场景非常…...

量子计算在DNA序列相似性比较中的应用与优化

1. 量子计算与DNA序列相似性比较的背景DNA序列相似性比较是生物信息学和比较基因组学中的基础性任务。想象一下,你手上有两串由A、T、G、C四个字母组成的长字符串,如何判断它们的相似程度?这个问题看似简单,但在实际应用中却极具挑…...

量子PSO与机器学习在天线小型化设计中的应用

1. 量子PSO与机器学习在天线小型化设计中的革命性应用作为一名长期从事射频工程和天线设计的从业者,我见证了传统设计方法从纯手工计算到计算机辅助设计的演进。但直到接触量子粒子群优化(QDPSO)与机器学习的融合应用,才真正体会到智能化设计带来的效率飞…...