Agent 框架是帮助开发者构建 AI Agent 的代码库、SDK 或开发框架。它通常为模型、工具、消息、上下文和 Agent 循环提供可复用抽象,使开发者不必从底层接口开始实现完整系统。
Agent 框架不是大语言模型,也不是一个已经配置完成的 Agent。它提供的是构建组件和工程约定;具体 Agent 能做什么、可以访问哪些资源、怎样判断任务完成,仍由应用设计决定。
常见能力
Agent 框架可能提供:
- 统一的模型调用接口;
- 消息和上下文数据结构;
- 工具定义、参数 Schema 与结果表示;
- 结构化输出和模型响应解析;
- 预制的 Agent 工具调用循环;
- 中间件、回调和错误处理接口;
- 模型、向量数据库、检索器及外部工具集成。
不同框架覆盖的范围并不完全相同。有些框架重点提供模型和工具抽象,有些还包含工作流、状态管理、评测或部署能力。
一次工具请求的基本机制可参见 Agent 工具调用,持续执行多轮工具调用的过程可参见 Agent 工具调用循环。
与 Agent 运行时的区别
Agent 框架主要解决“怎样开发和组合 Agent 能力”;Agent 运行时主要解决“怎样执行、保存、暂停和恢复 Agent 任务”。
二者可以组合:
- 框架提供模型、工具和 Agent 循环;
- 运行时调度这些组件,并维护执行状态;
- 应用再加入具体提示词、权限、数据来源和验证规则。
某个 Agent 框架可以建立在独立运行时之上,也可能自己包含部分运行能力。因此,“框架”和“运行时”描述的是主要职责,不一定对应完全分离的软件包。
与 Agent Harness 的区别
Agent Harness是某个 Agent 实际运行时采用的完整支撑系统,通常包含已经配置好的上下文、工具、权限、循环、验证和恢复机制。
框架可以用来实现 Harness,但框架本身不等于 Harness。例如,一个框架可能提供工具接口,而具体 Harness 还需要决定:
- 实际开放哪些工具;
- 哪些操作需要人工确认;
- 如何限制执行步数和权限;
- 怎样验证外部状态真的发生变化;
- 失败后应该重试、回退还是停止。
选择框架时关注什么
选择 Agent 框架时,可以考察:
- 是否支持需要使用的模型和工具;
- 抽象是否允许保留业务所需的控制能力;
- 工具参数、错误和状态是否容易验证;
- 是否支持测试、追踪和评估;
- 更换模型或外部服务时需要修改多少业务代码;
- 是否必须绑定特定运行时或托管平台。
框架减少的是重复接入和编排代码,不会自动保证回答准确、工具安全或任务可靠完成。
“Agent Framework”“Agent Runtime”和“Agent Harness”目前并没有统一、严格的行业边界。本文采用工程职责进行区分,参考了 LangChain 官方的框架、运行时与 Harness 对比,资料于 2026 年 9 月 16 日核实。