在 Conductor 中运行 LangGraph4j Agent:Java 框架 Agent 的持久化执行指南

发布时间:2026/11/4 18:28:31

在 Conductor 中运行 LangGraph4j Agent:Java 框架 Agent 的持久化执行指南 在 Conductor 中运行 LangGraph4j AgentJava 框架 Agent 的持久化执行指南【免费下载链接】conductorConductor is an event driven agentic workflow engine providing durable and highly resilient execution engine for applications and AI Agents项目地址: https://gitcode.com/GitHub_Trending/co/conductor本指南讲解如何将使用 LangGraph4j结合 LangChain4j 的 OpenAI 模型构建的 Java Agent通过conductor-aiJava SDK 桥接到 Conductor 的事件驱动持久化执行引擎中运行。你将学会引入依赖、用AgentExecutor组装 Agent、通过AgentRuntime启动一次可观测的持久化执行以及理解从框架对象到可复用AGENT任务的完整链路。LangGraph4j Agent 与 Conductor 的桥接方式Conductor 是一个事件驱动的 Agentic 工作流引擎为应用程序和 AI Agent 提供持久化、高弹性的执行能力。对于已经用其他框架编写好的 Agent如 OpenAI Agents、LangChain、LangGraph、Google ADKConductor 的定位是你保留框架定义好的 Agent 对象由 Conductor SDK 将其编译并作为一次可持久化、可观测的 Conductor 执行来运行参见 Bring Your Framework Agent。LangGraph4j 是 LangGraph 的 Java 移植其AgentExecutor是官方的 Agent 执行器配合 LangChain4j 的ChatModel使用。conductor-aiorg.conductoross:conductor-ai则是 Conductor 的 Java Agent SDK负责把 LangGraph4j 的 Agent 对象接入 Conductor 运行时。文档 LangGraph4j bridge documentation 对应的就是这条桥接路径的最小可用示例。1. 添加依赖在 Gradle 项目的build.gradle中引入以下三个依赖implementation org.conductoross:conductor-ai compileOnly dev.langchain4j:langchain4j-open-ai:1.0.0 compileOnly org.bsc.langgraph4j:langgraph4j-agent-executor:1.6.0-beta5逐条说明org.conductoross:conductor-aiConductor 的 Java Agent SDK提供AgentRuntime等运行时类是桥接的核心依赖implementation作用域编译与运行期都需要。dev.langchain4j:langchain4j-open-ai:1.0.0LangChain4j 的 OpenAI 模型实现提供OpenAiChatModel。使用compileOnly意味着它仅在编译期可见运行期由你的运行时环境提供。org.bsc.langgraph4j:langgraph4j-agent-executor:1.6.0-beta5LangGraph4j 的 AgentExecutor 模块提供org.bsc.langgraph4j.agentexecutor.AgentExecutor类。注意compileOnly的语义如果你的项目运行时确实需要这些类例如在本地直接运行本指南的示例请确认它们在运行 classpath 上compileOnly适合 SDK 被打包为库、由最终应用自行提供依赖的场景。2. 用 Builder 组装并运行 LangGraph4j Agent以下是完整的运行代码分为构建 ChatModel → 构建 AgentExecutor → 通过 AgentRuntime 运行三步import dev.langchain4j.model.chat.ChatModel; import dev.langchain4j.model.openai.OpenAiChatModel; import org.bsc.langgraph4j.agentexecutor.AgentExecutor; import org.conductoross.conductor.ai.AgentRuntime; ChatModel model OpenAiChatModel.builder() .apiKey(conductor-server-handles-credentials) .modelName(gpt-4o-mini) .build(); AgentExecutor.Builder agent AgentExecutor.builder().chatModel(model); try (AgentRuntime runtime new AgentRuntime()) { runtime.run(agent, Share a state-machine fact.).printResult(); }关键点拆解模型构建使用 LangChain4j 的OpenAiChatModel.builder()modelName(gpt-4o-mini)指定模型。apiKey传入占位符字符串conductor-server-handles-credentials——这是刻意为之凭据不由客户端 SDK 直接管理而是由 Conductor 服务器统一处理。也就是说客户端代码中无需写入真实密钥模型调用发生时由服务器侧完成鉴权。Agent 组装AgentExecutor.builder().chatModel(model)将 ChatModel 注入 LangGraph4j 的 AgentExecutor。AgentExecutor 是 LangGraph 风格的 Agent 执行器内部维护状态图StateGraph负责 LLM 推理与工具调用循环。持久化运行AgentRuntime实现了AutoCloseable因此使用 try-with-resources。runtime.run(agent, ...)将传入的 Agent 对象编译为一次 Conductor 执行并运行返回的结果对象调用printResult()打印输出。从第一次运行起这次执行就是一次持久化执行每个 LLM 调用、工具调用、等待、重试与分支都会以工作流任务的形式记录在 Conductor 服务器上可在 Conductor UI 中查看框架对象到工作流步骤的转换路径见 agent-framework-recipes.md 中的流程示意图。3. 配置服务器地址与凭据运行前需要配置 Conductor 服务器地址。在 shell 中导出环境变量export CONDUCTOR_SERVER_URL{{CONDUCTOR_SERVER_URL}} # For authenticated Conductor servers: # export CONDUCTOR_AUTH_KEYYOUR_AUTH_KEY # export CONDUCTOR_AUTH_SECRETYOUR_AUTH_SECRET环境变量是否必填说明CONDUCTOR_SERVER_URL必填Conductor 服务器地址。{{CONDUCTOR_SERVER_URL}}是占位符请替换为实际的服务器 URL如本地开发版或已部署实例的地址CONDUCTOR_AUTH_KEY认证服务器必填Conductor 的认证密钥Access Key在开启认证的服务器上提供CONDUCTOR_AUTH_SECRET认证服务器必填与CONDUCTOR_AUTH_KEY配对的密钥Secret用于签名请求在开始服务器前还需确保 Conductor 服务器能够访问你的模型提供商在 Developer Edition 上将提供商添加为 AI/LLM 集成在本地服务器上则在启动前导出提供商的 API Key参见 framework-agents.md。这与代码中conductor-server-handles-credentials占位符的设计一致——真实凭据在服务器侧配置。4. 验证执行结果运行包含上述代码的 Java 类后printResult()会在控制台打印 Agent 的最终输出例如一条状态机相关的知识性回答。建议同时完成以下验证检查控制台输出确认 Agent 正常完成推理并返回结果在 Conductor UI 中定位对应执行找到刚运行产生的执行实例检查其任务列表——LangGraph4j Agent 的整个运行过程已被拆解为可见的任务失败排查顺序若执行失败按 framework-agents.md 的建议依次检查运行时服务器 URL、框架包版本、模型提供商凭据然后查看失败任务的具体错误再重试。5. 从开发运行到生产部署run / plan / deploy / serveruntime.run(...)适合开发期迭代。当你希望将 LangGraph4j Agent 作为可复用、带版本的 Conductor Agent 提供给工作流调用时走完整的生命周期详见 conductor-agents.mdCreate在代码中定义 Agent本指南中的AgentExecutor.Builder对象即框架定义Plan检查 Agent 将被编译成的工作流图适合开发与 CI 阶段在部署前验证Deploy将编译后的 Agent 注册到服务器成为命名的、带版本的 Conductor AgentServe启动执行 Agent 工具函数的 worker 进程框架的工具作为本地函数运行时需要常驻进程执行它们Run开发期run一步完成编译与执行生产期由工作流通过AGENT任务按名称调用已部署版本。在 Python SDK 中这四步是同一个 runtime 上的四个调用agent-framework-recipes.mdwith AgentRuntime() as runtime: runtime.run(agent, Is the token set?) # develop: compile and execute once runtime.plan(agent) # CI: inspect the compiled graph runtime.deploy(agent) # release: register without executing runtime.serve(agent) # operate: run tool workers and blockserve()会阻塞因此生产环境中它应运行在独立的长生命周期 worker 进程中而deploy()在 CI/CD 中执行。6. 在工作流中调用已部署的 Agent一旦部署完成父工作流即可通过AGENT任务按名称调用该 Agent调用方式与调用任何其他持久化任务一致{ name: run_agent, taskReferenceName: run_agent_ref, type: AGENT, inputParameters: { agentType: conductor, name: deployed-agent-name, prompt: ${workflow.input.prompt} } }示例见 agent-framework-recipes.md需要澄清一个关键概念agentType选择的是执行模式而非编写框架conductor-agents.mdagentType: a2a默认调用远程 A2A 端点agentType: conductor按name运行已部署的 Conductor Agent。OpenAI Agents、Google ADK、LangGraph4j 等框架是 SDK 的编写路径它们本身不是agentType的值。LangGraph4j 编写的 Agent 经过 SDK 编译部署后同样以agentType: conductor被工作流调用。7. 服务器端前置开启 AI 集成部署或调用 Conductor Agent 之前需要在服务器配置中开启 AI 集成conductor.integrations.ai.enabledtrue当该属性为false或缺失时已部署 Agent 的控制面以及agentType: conductor执行模式均不可用参见 conductor-agents.md。8. 凭据与提供商服务器侧处理的背后实现本指南代码中.apiKey(conductor-server-handles-credentials)的占位符用法与仓库中ai模块的提供商体系相印证。ai/src/main/java/org/conductoross/conductor/ai/providers/openai/OpenAIConfiguration.java等配置文件定义了各提供商的服务器侧配置入口ai模块下还有providers/anthropic、providers/gemini、providers/bedrock、providers/ollama等多个提供商实现以及AIModelProvider.java、LLMs.java等统一接入点见 ai 模块源码。这意味着 LangGraph4j Agent 的 LLM 调用最终由服务器侧按提供商配置完成客户端只负责描述 Agent 逻辑与执行请求。9. 排查与最佳实践依赖版本langchain4j-open-ai:1.0.0与langgraph4j-agent-executor:1.6.0-beta5是文档锁定的编译版本升级 LangGraph4j 时注意与AgentExecutor.BuilderAPI 的兼容性环境变量未生效确认CONDUCTOR_SERVER_URL已导出到运行 Java 进程的 shell 环境中认证服务器还需同时导出CONDUCTOR_AUTH_KEY与CONDUCTOR_AUTH_SECRETAgentRuntime资源释放始终使用 try-with-resources 包裹确保底层连接被正确关闭服务端凭据不要在客户端代码中硬编码模型 API Key遵循占位符 服务器侧配置的模式幂等与重试Agent 动作若产生外部副作用重试前先确认其幂等性与恢复策略参见 framework-agents.md生产架构部署后保持 worker 进程常驻serve并在 CI/CD 中执行deploy更完整的生产化路径可参考 production-agent-architecture。更多资源LangGraph 框架 Agent 快速入门Python 版 LangGraph Agentcreate_react_agent通过 Conductor 运行的对应示例可作为对照理解桥接模式Framework Agents 参考各框架支持矩阵、框架对象到工作流步骤的完整转换流程与维护中的 SDK 示例索引Conductor Agents已部署 Agent 的调用、等待、恢复、取消与输出语义Java 其他框架指南不使用外部框架、直接用Agent.builder()编写原生 Conductor Agent 的对照路径。【免费下载链接】conductorConductor is an event driven agentic workflow engine providing durable and highly resilient execution engine for applications and AI Agents项目地址: https://gitcode.com/GitHub_Trending/co/conductor创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/11/2 19:39:17

CANN/ge GE图引擎设置符号形状API

EsSetOriginSymbolShape 【免费下载链接】ge GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、Te…

2026/11/3 2:55:19

Arm-2D静态工程评测:嵌入式GUI落地前的关键可行性验证

1. 项目概述:为什么一个静态工程评测能决定嵌入式GUI项目的生死? Arm-2D 是 ARM 官方开源的、专为 Cortex-M 系列微控制器设计的轻量级 2D 图形加速库。它不是那种“跑个 demo 就完事”的玩具库,而是真正面向量产级嵌入式设备——比如智能手表…

2026/11/5 10:43:56

工业测温方案解析:ADS122U04与STM32F042K6的UART高精度RTD采集设计

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/5 10:43:56

STM32L031+ADS122U04:UART接口24位ADC实现PT100高精度温度采集

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/5 10:43:55

基于ADS122U04与MK24的HVAC高精度温度采集系统设计

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/5 10:38:55

Univer开源Web Office引擎:Canvas渲染与协同编辑实战解析

第一次看到Univer这个项目名字的时候,我下意识以为是哪个海外团队用“University”做的教育类产品。直到我翻完它的仓库和在线Demo,才发现自己差点错过一个好东西——这是一个把“在线电子表格、文档、幻灯片”全部做成开源引擎的Web Office项目&#xf…

2026/11/5 10:38:55

Foxmail数字签名与加密配置全指南:S/MIME证书实战落地

1. 邮件签名与加密不是“加个水印”或“点个锁图标”那么简单很多人第一次在Foxmail里找“签名”功能,点开设置就以为万事大吉——填上姓名、电话、公司logo,保存退出,邮件发出去带个固定落款,就觉得“搞定”。等真遇到客户问“你…

2026/11/5 10:38:55

LVS负载均衡优化:FWM标记与持久化服务实践

1. 为什么需要优化LVS调度?在企业级负载均衡场景中,Linux Virtual Server(LVS)作为四层负载均衡的经典解决方案,其性能表现直接影响着整个业务系统的稳定性。但在实际生产环境中,我们常常会遇到两个典型问题…

2026/11/4 12:38:23

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/4 21:04:25

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/5 0:02:07

多智能体协作系统架构设计与实践优化

1. 多智能体协作系统的时代背景2017年Transformer架构的诞生彻底改变了人工智能的发展轨迹。当行业还沉浸在单一大模型带来的性能突破时,Anthropic的研究团队已经将目光投向了更前沿的领域——如何让多个智能体通过协作产生超越单体能力的系统智能。这就像交响乐团中…

2026/11/5 0:02:07

大模型系统性入门实战指南:从原理到部署微调的全链路路线

提到大模型的系统性入门,我先说个结论:这事真不难,难的是资料太散、路线太多,今天这个框架明天那个工具,新人很容易在“收藏夹吃灰”和“教程看到一半放弃”之间反复横跳。市面上关于大模型的内容少说有几十万篇&#…

2026/11/5 0:02:07

鸿蒙文件系统沙箱机制解析与开发实践

1. 鸿蒙文件系统沙箱机制深度解析作为一名从Android转向鸿蒙开发的工程师,我深刻体会到文件系统访问是迁移过程中最先遇到的"拦路虎"。在Android上运行良好的文件读写代码,在鸿蒙真机环境却频频出现文件写入后神秘消失或直接抛出权限拒绝错误的…

2026/11/4 12:38:23

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/4 21:04:25

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑