Embabel智能体框架发布1.0版本
Embabel 智能体框架迎来 1.0 版本
2026 年 8 月 3 日 · 4 分钟阅读
作者:Erik Costlow
产品管理 @ Azul。密码学课程作者。
Embabel 是一个基于 Java 构建 AI 智能体的框架,现已达到 1.0 正式发布版本。Embabel 允许 Java 和 Kotlin 开发者将智能体定义为类型化领域对象(目标、动作以及连接它们的条件),而不是手工编写一串提示词和工具调用;它利用规划步骤在运行时计算出如何从当前状态到达目标。这个规划步骤借鉴了视频游戏 AI 中的一种思想:目标导向动作规划(GOAP)。智能体并非遵循脚本或预连线的图,而是获得一组可用动作,每个动作带有前置条件和效果,然后规划器搜索满足目标的动作序列。如果世界在任务中途发生变化(工具调用失败、新信息到达),规划器可以重新评估并找到新路径,而不是崩溃或要求工作流提前预判到这个分支。
Embabel 并未取代 Spring AI(Spring 团队自己的调用模型、管理嵌入和调用工具的库),而是构建在它之上。Embabel 由 Spring 框架的创建者联合创立:Rod Johnson 宣布了这次发布,并称“Embabel 1.0.0 GA 即将就绪……非常兴奋!”Johnson 于 2003 年创立了 Spring,以及随之而来的 Spring MVC,项目的 README 也直接与这段历史类比:“打个比方:Spring AI 相当于 Servlet API 这一层,而 Embabel 更像是 Spring MVC。”
原始 Servlet 可用,但每个应用最终都要解决同样的问题:解析请求参数、分发到正确的处理器、在 HTTP 与对象之间进行转换。Spring MVC 并没有取代 Servlet;它构建在 Servlet 之上,让开发者编写类型化方法签名,而不是手工解析 HttpServletRequest。Embabel 对智能体做出了同样的押注:Spring AI 提供了与模型对话的底层管道,而 Embabel 提供了这样一层——开发者在此声明“这些是我的目标,以及可用来实现目标的类型化动作”,把排序工作留给框架去处理。
这种与 Spring AI 的分层关系也延续到了模型选择上。由于 Embabel 构建在 Spring AI 之上,它继承了 Spring AI 所支持的大部分提供商(OpenAI、Anthropic、Gemini、Bedrock、Mistral、DeepSeek),以及通过 Ollama、Docker 或兼容 OpenAI 的 LMStudio 端点实现的本地和自托管选项。这种选择并不是为整个智能体一次性做出的:开发者可以将单个动作固定到特定模型,或者在配置中定义角色别名(为需要强推理的步骤使用“最佳”模型,为常规步骤使用“最便宜”的模型),并让动作引用角色而不是硬编码名称。这就使得在混合模型上运行单个智能体变得简单直接,可以将每个步骤路由到最符合其成本、隐私或能力需求的模型。
规划步骤本身是 Embabel 与 LangGraph(由 LangChain 构建的图式编排层)的区别所在。Java 团队可以通过 LangGraph4j 直接使用它,这是一个为兼容 LangChain4j 和 Spring AI 而构建的 Java 移植版。LangGraph 将智能体工作流表示为一个有向图:节点是函数(LLM 调用、工具调用、数据库查找),边是路由逻辑(静态或条件),决定接下来执行哪个节点,并沿途传递共享状态对象。开发者预先定义这个图:存在哪些节点、哪些边连接它们,以及在什么条件下控制在这些节点之间移动。
Embabel 的规划器则从一个不同的出发点开始:与其让开发者去连线图,框架在运行时搜索一条穿过可用类型化动作的路径,并且可以把开发者从未显式连接在一起的动作组合成序列。Embabel 支持在同一智能体中将 GOAP 规划与显式状态机混合使用,因此团队仍然可以在需要的时候,为某些步骤落入 LangGraph 式的固定路由。
Akka 是 Lightbend 维护的、基于 Actor 模型构建的工具包。它从分布式系统这一既有优势出发来处理同样的问题,而不是遵循 Spring 的编程模型传统。在 Akka 中,每个工作单元(这里即智能体)都是作为一个具有独立状态和邮箱的 Actor 运行,并由一个层级结构进行监督,该层级可以在失败后重启该 Actor 而不会干扰系统的其余部分。Akka Agentic Platform 将此直接应用于智能体:智能体的状态和进行中的对话驻留在一个 Actor 中,该 Actor 能够在进程崩溃后存活,并且可以跨集群分布,因此长期运行的智能体在重启后无需从头重建,也无需重新设计架构即可在多台机器上运行。
Embabel 的主张是一种编程模型:声明目标和类型化动作,让框架去规划。Akka 更接近基础设施:Actor 运行时处理持久化、容错和分布式,无论其上运行的是什么智能体逻辑。JetBrains 的 Koog 采用第三种方法,围绕 Kotlin 自身的语言特性构建,而不是运行时或声明式编程模型。它们各自对智能体结构应放在哪里做出了不同押注:Embabel 放在类型系统,Akka 放在运行时,Koog 放在语言本身。
对于已经在运行 Spring Boot 服务的团队来说,这次发布意味着 Embabel 不再只是一个值得关注的项目,而是开始值得评估的项目。项目的“概述”指南逐步介绍了如何定义第一个目标和类型化动作,然后才进入规划行为。
关于作者
Erik Costlow
Erik Costlow 是一位软件安全专家,拥有丰富的 Java 经验。他负责 Azul JVM 的安全工作,这些 JVM 以最高速度运行,同时让安全变得更加简单和美好。Erik 曾在 Oracle 担任主要产品经理,专注于 Java 8 的安全性;他是在黑客攻击最猖獗时加入的,并在两年没有零日漏洞之后离开。在那段时间里,他从企业/商业和社区两个层面了解了 Java 的细节。他还协助过 Turbonomic 的产品管理团队,从事数据中心/云性能自动化工作。Erik 还曾领导 Fortify 静态代码分析器的产品管理工作,该工具可帮助开发者查找并修复自定义源代码中的漏洞。Erik 还通过 Packt Publishing 出版过若干开发者课程,涵盖数据分析、统计学和密码学。显示更多 / 显示更少
本内容属于 Java 主题,关注主题
相关主题
- 架构与设计:关注者 10327,关注主题
- AI、机器学习与数据工程:关注者 6013,关注主题
- 智能体:关注者 72,关注主题
- AI 开发:关注者 16,关注主题
- Java:关注者 4940,关注主题
相关编辑推荐
- Java 世界中的 MCP:将架构策略引入 LLM 集成
- Stripe 基准测试显示:AI 智能体可构建集成,但在验证方面仍面临挑战
- AI 正在向软件生命周期上游推进:从代码审查到 PRD 治理
- Anthropic 推出托管智能体,简化 AI 智能体部署
- 为 AI 智能体设计记忆:深入 LinkedIn 认知记忆智能体
相关赞助商
- 警报疲劳正在让你付出代价:生产可靠性与 AI 采用现状
- 大多数 AWS 环境中隐藏的浪费
- 构建 AI 智能体所需的上下文引擎
- 让 AI 在软件开发生命周期中可靠:大规模确定性上下文的作用
- 为故障而设计:如何在云中断期间保证数据访问
相关赞助商
InfoQ 在线认证项目:与来自其他公司的高级从业者一起,在为期五周的 InfoQ 在线学习小组中实践真实技术决策,并获得认证。立即预订名额。
相关内容
- Stripe 基准测试显示:AI 智能体可构建集成,但在验证方面仍面临挑战 - 2026年7月15日
- 以 AI 速度理解:为演进式架构构建上下文存储 - 2026年7月14日
- Java 世界中的 MCP:将架构策略引入 LLM 集成 - 2026年4月27日
- 使用 MCP、OPA 和临时运行器构建最小权限 AI 智能体网关,实现基础设施自动化 - 2026年2月23日
- 在资源受限环境中构建 LLM:实践视角 - 2026年2月9日
- 你用 AI 生成了 MVP。这对你的软件架构意味着什么? - 2026年2月12日
- Java 新闻综述:Simple JSON API、JDK 28 的 JEP、Oracle CPU、Embabel 1.0、Azul Payara、Helidon - 2026年7月27日
- Java 新闻综述:Value Objects、WildFly 41、TornadoVM、LangChain4j、Oracle AI Agent Studio - 2026年7月20日
- Google 的 Genkit 为 TypeScript 和 Go 推出 Agents API,支持分离回合和人在回路 - 2026年7月14日
相关赞助商
面向资深架构师和技术负责人的 5 周在线学习小组,用于比较方法、厘清权衡,并获得 InfoQ 认证。
- 赞助商:了解更多
相关内容
- Java 新闻综述:TornadoVM 5、JHipster、Google ADK、OmniFish 版 Payara、Vidocq 介绍 - 2026年7月13日
- JDK 24 之后的虚拟线程:生产级 Java 发生了什么变化 - 2026年7月31日
- Airbnb 分享 Sitar-Agent 动态配置 Sidecar 在 Kubernetes 服务背后的架构 - 2026年7月8日
- 自构建智能体:LangChain4j 实验 - 2026年7月24日
- Java 新闻综述:严格字段初始化、GlassFish、GraalVM、JReleaser、RefactorFirst - 2026年7月6日
- 扩展基于 Java 的实时系统:事件驱动设计中被隐藏的权衡 - 2026年6月30日
InfoQ 新闻通讯
每周二发送上周 InfoQ 内容摘要。加入超过 250,000 名资深开发者的社区。
输入你的电子邮件地址
选择你的国家
- 我同意 InfoQ.com 按照隐私声明中的说明处理我的数据。
开发
架构与设计
文化与方法
AI、机器学习与数据工程
DevOps
- Terraform 推出 tfpolicy,一个基于 HCL 的策略即代码框架
- Microsoft 在 AKS 上为 AI 智能体实现的三层 LLM 路由架构
- [GitHub 为 Dependabot 版本更新引入默认“冷却”策略](https://www.infoq.com/news/2026/07/github-dependabot-cooldown/ "GitHub Introduces Default "Cooldown" Policy for Dependabot Version Updates")
InfoQ 新闻通讯
每周二发送上周 InfoQ 内容摘要。加入超过 250,000 名资深开发者的社区。
- 快速了解发布在各种创新者和早期采用者技术上的内容概览
- 了解你不知道自己不知道的内容
- 及时获取你感兴趣主题的最新信息
输入你的电子邮件地址
选择你的国家
- 我同意 InfoQ.com 按照隐私声明中的说明处理我的数据。
InfoQ 在线认证项目 面向高级工程师、架构师和技术负责人
- AI 工程,讲师 Hien Luu,7月25日
- 架构,讲师 Luca Mezzalira,8月13日
- 工程领导力,讲师 Michelle Brush,8月21日
- AI 安全与隐私工程,讲师 Katharine Jarmul,8月26日
随着你的角色越来越资深,工作内容也会发生变化。你不再只是执行决策;你还在塑造其他团队所依赖的系统、权衡和技术方向。这些为期 5 周的在线项目为你提供了一种结构化方式,让你与来自其他公司的高级同行一起解决当前角色中的真实决策。
线上直播,每周 4 小时,持续 5 周。
首页
创建账户
登录
QCon 会议
活动
为 InfoQ 撰稿
InfoQ 编辑
关于 InfoQ
关于 C4Media
媒体资料包
InfoQ 开发者营销博客
多元与包容
活动
- InfoQ 在线架构师认证 - 2026年8月13日
- InfoQ 在线工程领导力认证 - 2026年8月21日
- InfoQ 在线 AI 安全与隐私工程项目 - 2026年8月26日
- QCon 旧金山 - 2026年11月16-20日
- QCon AI 纽约 - 2026年12月15-16日
- QCon 伦敦 2027 - 2027年4月13-16日
关注我们
YouTube:23.2万关注者
LinkedIn:2.6万关注者
Instagram(新)
RSS:1.9万读者
X:5.71万关注者
Facebook:2.1万点赞
Bluesky(新)
保持关注
The InfoQ Podcast
Engineering Culture Podcast
软件架构师新闻通讯
一般反馈:feedback@infoq.com
广告:sales@infoq.com
编辑:editors@infoq.com
市场:marketing@infoq.com
InfoQ.com 及所有内容版权 © 2006-2026 C4Media Inc. 隐私声明、条款与条件、Cookie 政策
关闭 BT