找回密码
 立即注册
首页 业界区 安全 探秘 AgentRun丨为什么应该把 LangChain 等框架部署到函 ...

探秘 AgentRun丨为什么应该把 LangChain 等框架部署到函数计算 AgentRun

瞧蛀 昨天 17:20
阿里云函数计算 AgentRun 全新发布后,我们整理了“探秘 AgentRun”系列文章,本系列将梳理企业落地Agent 常见难题,给出具体解法,助力 Agentic AI 快速走进生产级环境。欢迎加入“函数计算 AgentRun 客户群”与我们交流,钉钉群号:134570017218
当你已经用 LangChain、AgentScope、LangGraph 等框架开发了 Agent 应用,如何让它们享受函数计算 AgentRun 提供的 Serverless 运行时、企业级 Sandbox、模型高可用、全链路可观测 等能力?好消息是,你几乎不需要改动现有代码,只需要简单的适配就可以迁移到函数计算 AgentRun。
这篇文章将通过真实的代码示例,展示如何将不同框架的 Agent 应用部署到函数计算 AgentRun 上,以及如何充分利用函数计算 AgentRun 的各种能力。
为什么要部署到函数计算 AgentRun?

在讨论具体的集成方案前,让我们先明确一个问题:如果你的 Agent 应用已经在本地或自建服务器上运行良好,为什么还要迁移到函数计算 AgentRun?
答案很简单:从开发环境到生产环境,有一道巨大的鸿沟。 本地运行只需要考虑功能实现,但生产环境需要考虑性能、稳定性、成本、安全、可观测等一系列问题。函数计算 AgentRun 提供的不是又一个 Agent 框架,而是让你的 Agent 能够以企业级标准运行的完整基础设施。
具体来说,部署到函数计算 AgentRun 后,你能获得:零运维的 Serverless 运行时(自动扩缩容、按量付费),企业级的 Sandbox 环境(高性能、安全隔离),模型高可用保障(自动熔断、多模型 Fallback),全链路可观测(完整的 Trace、成本归因),以及统一的工具和 MCP 管理。
1.png

快速上手:5分钟部署你的第一个 LangChain Agent

让我们从最流行的 LangChain 框架开始,通过一个完整的例子展示如何将 LangChain Agent 部署到函数计算 AgentRun。
第一步:安装 Serverless Devs

函数计算 AgentRun 使用 Serverless Devs 作为部署工具。如果你有 Node.js 环境,一行命令即可安装:
  1. npm i -g @serverless-devs/s
复制代码
第二步:创建项目

使用脚手架快速创建项目(注意:需要 Python 3.10 及以上版本):
  1. # 初始化模板
  2. s init agentrun-quick-start-langchain
  3. # 进入代码目录
  4. cd agentrun-quick-start-langchain/code
  5. # 初始化虚拟环境并安装依赖
  6. uv venv && uv pip install -r requirements.txt
复制代码
第三步:配置认证信息

通过环境变量(建议使用 .env 文件)配置你的 AgentRun 访问凭证:
  1. export AGENTRUN_ACCESS_KEY_ID="your-access-key-id"
  2. export AGENTRUN_ACCESS_KEY_SECRET="your-access-key-secret"
  3. export AGENTRUN_ACCOUNT_ID="your-account-id"
  4. export AGENTRUN_REGION="cn-hangzhou"
复制代码
第四步:理解集成方式

这是最关键的部分。打开生成的代码,你会看到集成非常简单:
  1. from agentrun.integration.langchain import model, sandbox_toolset
  2. from agentrun.server import AgentRunServer
  3. # 使用 AgentRun 的模型(自动享受高可用、熔断等能力)
  4. llm = model("<your-model-name>")
  5. # 使用 AgentRun 的 Sandbox 工具
  6. tools = sandbox_toolset(
  7.     template_name="<your-sandbox-name>",
  8.     template_type=TemplateType.CODE_INTERPRETER,
  9.     sandbox_idle_timeout_seconds=300,
  10. )
  11. # 创建 LangChain Agent(和原来的代码完全一样)
  12. agent = create_agent(
  13.     model=llm,
  14.     tools=tools,
  15.     system_prompt="你是一个智能助手"
  16. )
  17. # 定义调用函数
  18. def invoke_agent(request):
  19.     result = agent.invoke({"messages": request.messages})
  20.     return result["messages"][-1].content
  21. # 启动 HTTP Server(提供 OpenAI 兼容的 API)
  22. AgentRunServer(invoke_agent=invoke_agent).start()
复制代码
核心要点:

  • model() 函数返回的是 LangChain 可以直接使用的模型对象
  • sandbox_toolset() 返回的是 LangChain Tools 列表
  • 你的 Agent 创建代码完全不需要改动
  • AgentRunServer 自动处理 HTTP 请求,提供标准的 OpenAI API
第五步:本地测试

启动服务后,可以通过 HTTP 请求测试:
  1. curl 127.0.0.1:9000/v1/chat/completions \
  2.   -X POST \
  3.   -H "content-type: application/json" \
  4.   -d '{"messages": [{"role": "user", "content": "通过代码查询现在是几点?"}], "stream":true}'
复制代码
第六步:部署到生产环境

项目中已经包含了 s.yaml 配置文件。你只需要修改其中的 role 字段为你的阿里云角色:
  1. role: acs:ram::{您的阿里云主账号 ID}:role/{您的阿里云角色名称}
复制代码
配置部署密钥:
  1. s config add
  2. # 按照引导输入 Access Key ID 和 Secret,记住密钥对名称(如 agentrun-deploy)
复制代码
执行部署:
  1. s deploy -a agentrun-deploy
复制代码
部署完成后,你会得到一个 HTTPS URL,就可以在生产环境调用你的 Agent 了。
不同框架的集成案例

函数计算 AgentRun 不仅支持 LangChain,还深度集成了主流的 Agent 开发框架。所有框架都遵循同样的理念:通过简单的适配层,让你的代码无缝迁移到函数计算 AgentRun,享受企业级能力。
LangGraph:工作流编排

LangGraph 是 LangChain 团队推出的工作流编排框架,适合构建复杂的多步骤 Agent。集成方式和 LangChain 类似:
  1. from agentrun.integration.langgraph import model, tools
  2. from langgraph.graph import StateGraph, MessagesState
  3. from langgraph.prebuilt import ToolNode
  4. # 使用 AgentRun 的模型和工具
  5. llm = model("<your-model-name>").to_langgraph()
  6. agent_tools = tools()
  7. # 构建 LangGraph 工作流(和原来的代码一样)
  8. def call_model(state: MessagesState):
  9.     messages = state["messages"]
  10.     response = llm.invoke(messages)
  11.     return {"messages": [response]}
  12. workflow = StateGraph(MessagesState)
  13. workflow.add_node("agent", call_model)
  14. workflow.add_node("tools", ToolNode(agent_tools))
  15. workflow.set_entry_point("agent")
  16. # 定义条件边...
  17. app = workflow.compile()
  18. # 调用
  19. result = app.invoke({"messages": [HumanMessage(content="查询上海天气")]})
复制代码
LangGraph 的优势是可以精确控制 Agent 的执行流程,比如条件分支、循环、并行执行等。部署到函数计算 AgentRun 后,这些复杂的工作流都能自动享受弹性伸缩和可观测能力。
AgentScope:多智能体协作

AgentScope 是阿里达摩院开源的多智能体框架,特别适合构建多Agent协作场景。集成方式:
  1. from agentrun.integration.agentscope import model, tools
  2. from agentscope.agent import ReActAgent
  3. from agentscope.tool import Toolkit
  4. # 使用 AgentRun 的模型和工具
  5. llm = model("<your-model-name>").to_agentscope()
  6. agent_tools = tools()
  7. # 注册工具到 Toolkit
  8. toolkit = Toolkit()
  9. for tool in agent_tools:
  10.     toolkit.register_tool_function(tool)
  11. # 创建 Agent(和原来的代码一样)
  12. agent = ReActAgent(
  13.     name="assistant",
  14.     sys_prompt="你是一个智能助手",
  15.     model=llm,
  16.     toolkit=toolkit,
  17. )
  18. # 调用
  19. result = await agent.reply(Msg(name="user", content="查询上海天气", role="user"))
复制代码
AgentScope 的优势是对多Agent系统的原生支持,包括Agent之间的通信、协调、记忆共享等。部署到 函数计算 AgentRun 后,每个 Agent 都在独立的隔离环境中运行,确保安全性。
PydanticAI:类型安全的 Agent 框架

PydanticAI 是一个新兴框架,强调类型安全和结构化输出。集成方式:
  1. from agentrun.integration.pydantic_ai import model, tools
  2. from pydantic_ai import Agent
  3. # 使用 AgentRun 的模型和工具
  4. llm = model("<your-model-name>").to_pydantic_ai()
  5. agent_tools = tools()
  6. # 创建 Agent
  7. agent = Agent(
  8.     llm,
  9.     instructions="Be concise, reply with one sentence.",
  10.     tools=agent_tools,
  11. )
  12. # 同步调用
  13. result = agent.run_sync("上海的天气如何?")
  14. # 异步调用
  15. result = await agent.run("上海的天气如何?")
复制代码
PydanticAI 的优势是强类型和结构化输出,特别适合需要严格数据验证的企业场景。
充分利用函数计算 AgentRun 的核心能力

将 Agent 部署到函数计算 AgentRun 后,你不仅获得了 Serverless 运行环境,还可以深度利用平台提供的各种企业级能力。
模型高可用:告别单点故障(搭配AI网关)

部署到函数计算 AgentRun 后,你的 Agent 自动享受模型高可用能力。当你配置的主模型出现故障、限流或超时时,系统会自动切换到备用模型,整个过程对你的代码完全透明。
在函数计算 AgentRun 控制台配置模型时可以和 AI 网关进行联动,可以设置:主模型(如 GPT-4),备用模型列表(如 Claude-3、Qwen-Max),熔断策略(错误率阈值、超时时间),负载均衡策略(轮询、权重、最少连接)。
你的代码完全不需要改动,只需要在创建模型时使用函数计算 AgentRun 的模型名称,所有的容错、切换、负载均衡都由平台自动处理。
企业级 Sandbox:安全执行代码

函数计算 AgentRun 提供的 Sandbox 不是简单的代码执行环境,而是企业级的安全隔离沙箱。每个 Sandbox 实例都是独立隔离的,支持多种执行类型:
Code Interpreter 支持 Python、Node.js、Java、Bash 等语言,可以执行数据分析、文件处理等任务。Browser Tool 提供浏览器自动化能力,支持网页爬取、表单填写、截图等操作。All In One 集成了代码解释器和浏览器工具,提供更丰富的交互能力。
使用时,通过 sandbox_toolset() 函数就可以获取相应的工具集合,这些工具会自动转换为你使用的框架所需的格式。
工具和 MCP:标准化集成

函数计算 AgentRun 提供统一的工具管理和 MCP(Model Context Protocol)机制。你可以从工具市场选择现成的工具,也可以自定义工具并发布到市场。
更强大的是 MCP 的 Hook 机制。通过前置 Hook,可以在工具调用前自动注入用户凭证、记录请求日志、校验参数合法性。通过后置 Hook,可以对结果进行转换、记录审计日志、处理异常情况。这些通用逻辑不需要在每个工具中重复实现,大大提升了开发效率。
全链路可观测:不再是黑盒

这是函数计算 AgentRun 最强大的能力之一。你的代码不需要做任何改动,平台会自动记录 Agent 的完整执行链路
在可观测平台上,你可以看到:Agent 接收到用户请求的时间和内容,调用了哪个模型、使用了多少 Token、花费了多少钱,调用了哪些工具、每个工具的执行时间和结果,访问了哪些知识库、检索了多少数据,每个环节的耗时分布,完整的调用链 Trace。
这些能力都是平台自动提供的,通过探针注入实现,无论是高代码还是低代码创建的 Agent,都自动享受这些可观测能力。
记忆和知识库:数据不出域

函数计算 AgentRun 深度集成了 RAGFlow、Mem0 等开源项目,提供灵活的记忆和知识库管理。你可以选择一键托管模式,由平台统一管理部署运维,享受 Serverless 的弹性和按量付费优势。也可以选择绑定模式,将 Agent 连接到已经部署在企业 VPC 或 IDC 内的实例,数据完全不出企业内网
这种灵活性让你可以根据数据的敏感级别选择不同的策略:核心业务数据私有化部署,一般数据托管上云,在安全性和便利性之间找到最佳平衡。
立即体验函数计算 AgentRun

函数计算 AgentRun 的无代码到高代码演进能力,现已开放体验:

  • 快速创建:访问控制台(https://functionai.console.aliyun.com/cn-hangzhou/agent/explore),60秒创建你的第一个 Agent
  • 深度定制:当需要更复杂功能时,一键转换为高代码
  • 持续演进:利用函数计算 AgentRun 的基础设施能力,持续优化你的 Agent
从想法到上线,从原型到生产,函数计算 AgentRun 始终是你最好的伙伴。欢迎加入“函数计算 AgentRun 客户群”,钉钉群号:134570017218
快速了解函数计算 AgentRun

一句话介绍:函数计算 AgentRun 是一个以高代码为核心的一站式 Agentic AI 基础设施平台。秉持生态开放和灵活组装的理念,为企业级 Agent 应用提供从开发、部署到运维的全生命周期管理。
2.png

函数计算 AgentRun 架构图
AgentRun 运行时基于阿里云函数计算 FC 构建,继承了 Serverless 计算极致弹性、按量付费、零运维的核心优势。通过深度集成 AgentScope、LangChain、RAGFlow、Mem0 等主流开源生态。函数计算 AgentRun 将 Serverless 的极致弹性、零运维和按量付费的特性与 AI 原生应用场景深度融合,助力企业实现成本与效率的极致优化,平均 TCO 降低 60%
让开发者只需专注于 Agent 的业务逻辑创新,无需关心底层基础设施,让 Agentic AI 真正进入企业生产环境。

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册