
如何将 LangGraph、LangChain 或 OpenAI Agents 框架构建的 Agent 接入 Conductor 运行【免费下载链接】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你手里已经有一个用 OpenAI Agents、LangChain 或 LangGraph 写好的 Agent 对象现在想让它跑在 Conductor 上由 Conductor SDK 把这个框架对象编译成工作流图作为一次 durable、可在 UI 中检查的执行运行起来。你不需要重写 Agent 本身只需把 runner 换成 Conductor 的 SDK。本文给出一条可照着执行的路径连接 Conductor 服务端、按框架安装 SDK、运行脚本并在 UI 中验证这次执行。前提只有一个硬条件你的本地环境能连到一个 Conductor 服务端并且该服务端能调通你的模型提供商。三个示例都用 OpenAI 模型gpt-4o-mini所以要准备好 OpenAI 凭证如果你换用其他提供商凭证要对应。准备条件让运行时连上 Conductor 服务端这一步对应 Connect to Conductor 文档。两种服务端任选其一。方式一Orkes Developer Edition云端按文档创建账号、应用和 access key 后设置以下环境变量尖括号内是占位符替换成你自己的值export CONDUCTOR_SERVER_URLhttps://developer.orkescloud.com/api export CONDUCTOR_AUTH_KEYyour-access-key export CONDUCTOR_AUTH_SECRETyour-access-secret模型提供商的凭证在 Developer Edition 上通过平台侧的 AI/LLM integration 添加不导出环境变量。方式二本地服务端本地服务端要求 Java 21 和 Node.js。启动前必须先导出模型提供商的 API key让服务端进程继承它export OPENAI_API_KEYyour-openai-api-key conductor server start export CONDUCTOR_SERVER_URLhttp://localhost:8080/api也可以用官方 Docker 容器代替docker run --rm -p 8080:8080 conductoross/conductor:latest export CONDUCTOR_SERVER_URLhttp://localhost:8080/apiconductor server start是文档给出的启动命令它会在本地拉起 Conductor 服务端进程CONDUCTOR_SERVER_URL是 SDK 与运行时定位服务端的地址后续所有步骤都依赖它。按框架接入安装 SDK 并替换 runner每个框架的安装命令和代码各不相同但接入模式一致保留你框架原有的 Agent 对象定义只把执行入口换成 Conductor SDK。三条路径各自独立按你使用的框架选一条执行即可。OpenAI Agents SDK安装命令pip install conductor-python完整脚本如下保存为openai_agent.pyfrom conductor.ai import Runner from agents import Agent, function_tool function_tool def get_weather(city: str) - str: return f72F and sunny in {city} agent Agent( nameweather_assistant, modelgpt-4o-mini, tools[get_weather], instructionsYou are a helpful assistant., ) result Runner.run_sync(agent, Whats the weather in NYC?) print(result.final_output)运行python openai_agent.py。文档明确说明改造点只有一个runner 的导入改为conductor.ai.Runner替换掉框架自带的 runnerAgent、function_tool等定义保持框架原样。LangChain安装命令带 LangChain 支持的安装组pip install conductor-python[langchain]完整脚本from conductor.ai.agents import AgentRuntime from langchain.agents import create_agent from langchain_core.tools import tool tool def check_token() - str: Check a token. return available agent create_agent(openai:gpt-4o-mini, tools[check_token], system_promptYou are a helpful assistant.) with AgentRuntime() as runtime: result runtime.run(agent, Is the token set?) result.print_result()保存为任意.py文件后直接用python运行。与 OpenAI Agents 路径不同LangChain 走的是AgentRuntime上下文管理器Agent 通过runtime.run(...)执行。LangGraph安装命令pip install conductor-python[langgraph]完整脚本import math from conductor.ai.agents import AgentRuntime from langchain_core.tools import tool from langchain_openai import ChatOpenAI from langgraph.prebuilt import create_react_agent tool def calculate(expression: str) - str: Evaluate a limited math expression. return str(eval(expression, {__builtins__: {}}, {sqrt: math.sqrt, pi: math.pi})) graph create_react_agent( ChatOpenAI(modelgpt-4o-mini, temperature0), tools[calculate], namemath_agent ) with AgentRuntime() as runtime: result runtime.run(graph, What is sqrt(256) 2**10?) result.print_result()LangGraph 里传进runtime.run()的是create_react_agent构建的graph对象而不是一个Agent实例其余接入方式与 LangChain 相同。验证执行并判断失败原因三个框架的验证方式相同文档给出的判断路径是看打印结果result.final_output或result.print_result()应输出模型的最终回答。在 Conductor UI 中找到对应执行SDK 编译后的 Agent 是普通工作流从第一次运行起就能在 UI 中看到这次 durable 执行。如果失败文档给出的检查顺序是先查三件事——运行时连接的服务端 URL即CONDUCTOR_SERVER_URL、框架对应的 SDK 包是否装对比如是否装成了带[langchain]/[langgraph]安装组的版本、模型提供商凭证是否对服务端生效然后检查失败的那个 task 再重试。有一条明确限制如果 Agent 的某个动作可能已经产生过外部副作用如写了外部系统在确认该动作的幂等性和恢复策略之前不要直接重试。可选从开发运行到部署为 Conductor Agent以上run是开发路径。当 Agent 稳定后Framework Agents 给出的四步生命周期是run开发中迭代、planCI 中检查编译出的图、deploy注册到服务端不执行、serve运行执行工具的 worker。Python 中的写法with 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 block注意两个文档明确的行为边界serve()会阻塞所以生产中它应单独放在一个长期存活的 worker 进程里deploy()则放在 CI/CD 中执行。部署或调用 Conductor Agent 之前服务端必须启用 AI 集成否则部署控制面和agentType: conductor执行模式不可用conductor.integrations.ai.enabledtrue部署完成后父工作流用AGENTtask 按名字调用它。Conductor Agents 文档给出的示例如下其中name要替换为你部署时的 Agent 名示例中为plannername和prompt在新调用时必填version可省略以使用最新版本{ name: run_agent, taskReferenceName: run_agent_ref, type: AGENT, inputParameters: { agentType: conductor, name: planner, prompt: ${workflow.input.prompt}, pollIntervalSeconds: 5 } }这里的agentType: conductor表示执行已部署的 Conductor Agent不要把它理解成作者是 Conductor 框架——OpenAI Agents、LangChain、LangGraph 都是 SDK 作者路径不是agentType的取值。AGENTtask 的输出包含executionId、state、text以及完成后的结构化outputstate为working、input-required、completed、failed、canceled之一可据此判断这次调用走到哪一步。下一步接入成功后仓库内可以继续深入的路径Agent Recipes 中每条都是完整可运行的示例handoff、记忆、guardrails、并行 Agent 等如果要加治理、评估、部署与运维参考 生产级 Agent 架构。框架 Agent 的具体 API 与支持矩阵以各语言 SDK 仓库为准服务端连接细节见 Connect to Conductor。【免费下载链接】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),仅供参考