前端进阶之旅前端进阶之旅
基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
返回 AI 情报前线
All News · 全部资讯9827
  • SpriteShip MCP:将 2D 游戏美术资源引入 AI 编程工作流
  • 构建千页书籍 RAG 踩坑:嵌入模型选型与长文本摘要失败教训
  • 开发者必读:系统最小权限实施指南
  • OpenAI披露电脑操控智能体最新进展:Codex已形成代码编写测试闭环
  • AI模型评估的陷阱:评分标准本身不可靠
  • Docker 硬化镜像多阶段实践与 GitHub Actions 流水线集成
  • 图灵奖得主 Sutton:合成数据是大错特错
  • Slack 推出协作 vibe-coding 频道,Claude/Devin 可直接建代码频道
  • AI没有贬值初级工程师,反而提升了其价值
  • 250 美元复刻 Kimi K3 小模型,击败 GPT-2
  • 从零构建生产级 AI Agent:LangGraph 实战模板解析
  • OmnisRouter:给每次LLM调用附带消费收据
  • AI生成代码的审查方法清单
  • Explyt MCP:让AI coding agent读懂JetBrains
  • 让AI coding agent自己完成网站部署
  • 用用户抱怨作为 Agent 自进化数据源:反馈→PR 闭环实战
  • CoSnitch 攻击提醒:你的 Chatbot 会被诱导泄露架构信息
  • Supabase发布官方MCP Server
  • AI 生成数据库迁移的五大风险与安全流程
  • Automox MCP Server:Claude Code 可直接管理万台终端
  • Amazon Bedrock AgentCore实现多Agent共享客户记忆
  • 嵌入式工程师实战:三大 AI 编程助手深度横评
  • Anthropic内部模型"Model 2"超越所有公版Claude
  • 渐进式自主权:让AI Agent安全落地的设计模式
  • AI Agent 调用 API 的七种失败模式
  • Next.js 缓存机制可能把用户 A 的数据泄露给用户 B
  • 五年做游戏后用C手写引擎的完整复盘
  • Kimi K3用Harness逼近Opus 5:18个Agent自主科研
  • Qwen-UI-Agent:能真正操作GUI的AI Agent基座
  • 构建结构化排错Agent:从堆栈到诊断与修复建议
  • Binance开放AI Agent自主交易
  • 数据库只读设计: 让AI安全查询生产环境
  • Mojo编译器正式开源,GitHub原生Stacked PRs上线
  • 选LLM别光比token单价——按任务成本评估才准确
  • 我为AI助手写了MCP记忆服务器,六周后效率大幅提升
  • AI沙箱失效:OpenAI Agent越狱在Hugging Face潜伏4.5天
  • 使用DPO+TRL+LoRA审计HH-RLHF偏好偏见
  • 陶哲轩:AI或将引发数学界自 Gödel 以来最大危机
  • 用状态机范式重塑网页爬虫开发
  • 生产级RAG系统:上下文压缩与提示构建
  • 本地LLM推理框架:基于VRAM自动选择最优模型
  • AI自动化踩坑:四个静默失败的真实案例
  • AI编程助手上下文加载机制深度解析
  • 一行代码解除LLM厂商锁定
  • 六大生产级LLM架构优化:降低Token消耗与延迟
  • Scrapewright 开源:让 AI 代理的重复网页抓取告别「掷骰子」
  • Hacker News热议:粘贴AI输出请三思
  • DeepSeek Desktop:本地运行的免费隐私优先 AI 桌面工具
  • OpenAI 推出隐私安全系统:企业可不上传数据同时检测滥用
  • 五款多语言Embedding模型实测对比
  • 美团搜索3.0:LLM语义表征落地实践
  • 已加载 51 / 9827
8.0
热点
AI SCORE
技术实践2026-08-20 18:24

Amazon Bedrock AgentCore实现多Agent共享客户记忆

n8n Blog#AWS#Agent#多Agent架构
Editor brief · 编辑速览

通过单个AgentCore支撑多个专业Agent(数值计算、AWS指导、调查)协同工作,且每个客户会话共享同一记忆,避免重复提问。

文章思维导图
Knowledge map
拖拽缩放
Full translation

完整中文译文

客户发消息给你的客服机器人,说他们的夜间同步自更换 API 密钥后就一直失败。分诊 agent 读取消息后判断这是配置问题,于是转交给集成专家处理。专家问他们指的是哪个集成。

但客户已经说过了。就在这条消息里,四十秒前发的,就在这个对话里——而专家还在看的那条对话。站在客户角度,这是和同一家公司的同一场对话。但站在工作流角度,这是两个 agent,第二个 agent 一无所获。你可以把所有对话记录传给每个专家——在对话长度超出上下文窗口之前这招管用。你可以把历史存入向量数据库——这也管用,但你现在要运维一个数据库和一套 embedding 流水线。本文走第三条路。

Amazon Bedrock AgentCore 是一个平台,用于大规模构建、连接和优化 agent,支持任意框架或模型。AgentCore Harness现已正式发布,它为模型提供了托管能力的脚手架:你通过配置定义一个 agent,包括它使用的模型、调用的工具、拥有的技能以及遵循的指令,然后 AgentCore 为你组装并运行循环。正是这个能力的两个特性使得专家团队变得切实可行。

AgentCore 的托管内存按 actor 和 session 划分作用域。因此,用标识客户而非任何单一 agent 的 Actor ID,可以让每个专家读到和写入相同的历史记录,且该历史记录的生命周期长于单个工作流的执行。另外,由于工具、技能、模型和指令随每次调用携带而非绑定在已部署的 agent 上,一个 agent 可以服务于全部四个专家,而无需为四个专家各配一个。

本文中,你将在 n8n 编辑器中构建这个支持团队:一个分诊 agent 对每个入站问题进行分类并路由给三个专家之一——一个持有 AgentCore Code Interpreter 用于计算,一个持有 AWS 技能目录用于架构指导,一个处理其他所有问题。回答第三个问题的专家已经知道第一个专家学到的东西,无需运维向量存储,也无需部署任何基础设施。

Step 1: Connect your credentials

Step 2: See how one harness serves four agents

Step 3: The customer asks about their bill

Step 4: The same customer asks what to do about it

Where to go from here

文章配图

Figure 1: Triage picks one specialist per question. All four agents run on the same harness and read and write one memory of the customer.

客户在 When Chat Message Received 中提出问题。Set Customer Context 将聊天会话转换为客户标识符,然后每个 agent 都将其作为 Actor ID 和 Session ID 发送出去。Triage Agent 读取问题并以 JSON 形式返回分类,Read Triage Decision 解析该分类。Route To Specialist 将问题发送给匹配的 agent,该 agent 使用该次调用授予的工具来回答。Format Reply 解开答案,Post Answer To Slack 将其发布出去,并标注产生该答案的专家。

由于每次调用都携带相同的 Actor ID,每个专家都读写相同的历史记录,第二个问题因此受益于第一个问题。客户对使用量数据有异议,分析专家据此计算出了数据。他们随后追问如何重构,不同的专家直接使用这些数据作答,而无需客户再次告知。

这一切在哪里运行与它做什么同样重要,因为这决定了你需要运维什么。

文章配图

Figure 2: Your n8n instance holds the workflow and the credentials. AgentCore runs the agent in your AWS account, under the execution role rather than the caller's keys.

职责划分很清晰。n8n 负责触发、路由决策和回复。AgentCore 负责 agent 循环和超过工作流运行生命周期的内存,且每个 session 都在独立的 Firecracker 微 VM 中运行,无共享状态也无共享文件系统。画布上十个节点,两个凭证,一个 harness 资源——而不是四个。流量全部为出站,所以你这边无需暴露任何东西到互联网:n8n 用 SigV4 签名每个请求并调用 AWS。两个 IAM 身份做不同的工作,下一节将介绍如何配置。

一个 n8n 实例。自托管或 n8n Cloud 均可与此节点配合使用。

节点已安装。@aws/n8n-nodes-agentcore 是一个经验证的社区节点,你可以在节点面板中找到它。添加一个节点,搜索 Amazon Bedrock AgentCore,然后选中它。你也可以通过设置 > 社区节点 > 安装,输入 @aws/n8n-nodes-agentcore 来安装。

一个 AWS 账户,且在支持的 AWS 区域中可访问 AgentCore Harness。

在 Amazon Bedrock 控制台中启用基础模型。模型访问是按账户和按区域 opt-in 的,所以在首次运行前启用你计划使用的 Claude 模型。

两个 AWS IAM 身份,下一节将详细介绍。

用于回复的 Slack 凭证。如果你想直接在 n8n 中查看答案,可以删除该节点。

两个 IAM 身份

AgentCore Harness 使用两个独立的 IAM 主体,知道哪个是哪个可以省掉大部分首次运行的调试工作。调用者(caller)是其访问密钥写入 n8n 凭证的身份,它创建并调用 harness。执行角色(execution role)是 agent 在运行时作为哪个身份运行,因此它需要模型、代码解释器、技能目录和内存的权限。

AgentCore Harness 安全指南包含两个身份的标准策略,其示例执行角色策略已涵盖此工作流用到的所有内容。节点仓库在 docs/iam-trust-policy.json 中提供了信任策略,README 则将每个功能映射到它需要的策略块。首次运行时出现 AccessDenied,几乎总是执行角色上缺少某个 action,而不是调用者上。

尽可能使用来自 AWS IAM Identity Center 或 AWS STS 的临时凭证。

关于成本的说明:Harness 本身不单独收费。你只需为使用的底层 AgentCore 能力付费,托管内存按标准 AgentCore Memory 费用收取,涵盖短期事件、存储的长期记忆记录和检索请求。此工作流为所有四个 agent 创建一个 harness,而不是每个各创建一个。用完后删除 agent,详见 Amazon Bedrock AgentCore 定价。

导入免费模板到你的 n8n 实例中,边看边跟进。画布加载后将包含全部十个节点,已连线且已配置。

Step 1: Connect your credentials

打开四个 agent 节点中的每一个,选择你的 Amazon Bedrock AgentCore API 凭证。

打开 Post Answer To Slack,选择你的 Slack 凭证。

在 Set Customer Context 中,将 slackChannel 设置为你的机器人已加入的频道。

没有 harness 需要部署,没有容器需要构建,没有 agent 代码需要编写,也没有向量存储需要配置。

运行前,检查画布上任意节点的警告标记。n8n 在运行任意节点前会验证每个节点,所以任何一个未设置的凭证都会导致工作流停止。

Step 2: See how one harness serves four agents

打开 Triage Agent。它的 Harness ARN 字段为空,这告诉节点在首次运行时创建 agent,之后复用。 在 Provisioning Options 下,托管内存已启用,采用语义总结、摘要和用户偏好策略。

文章配图

Figure 3: Only the Triage Agent provisions a harness. Memory is configured here because memory is a property of the harness rather than of an individual call.

现在打开 Analysis Specialist。它的 Harness ARN 是一个表达式:

{{ $json.harnessArn }}

这就是 Triage Agent 返回的 ARN。该专家调用同一个 harness 而不是创建自己的,并在单次调用中为自己授予 AgentCore Code Interpreter。Architecture Specialist 同样操作,授予的是 AWS 技能目录。

每次调用时授予工具也使每个专家的成本更低,因为工具定义会计入模型输入 token,即使 agent 从未调用该工具。而每个 session 都自带两个内置工具,无论你如何配置——一个 shell 和一个 file_operations,这也是为什么 Research Specialist 完全没有配置也能工作。

有一个细节需要注意:Set Customer Context 中的 Agent Name 是 harness 的缓存键,因此也是团队记忆的缓存键。修改它会创建一个新的 harness,之前积累的客户历史记录将无法从该工作流访问。

Step 3: The customer asks about their bill

打开画布底部的聊天面板,发送一条真实客户会发的消息——一条包含数字的消息:

Your dashboard says I went over my 50,000 API calls a day plan but my own logs for the five busiest days are 41200, 38900, 52300, 61800, 58400. Am I actually over on average?

首次运行需要两到三分钟,因为 AWS 要配置 agent。之后再运行只需几秒。

文章配图

Figure 4: Triage classified this as analysis because answering it means computing something, and routed it to the specialist holding the code interpreter.

打开 Analysis Specialist 的输出,展开 toolUses。其中包含 agent 编写并执行的 Python 代码:

import statistics
calls = [41200, 38900, 52300, 61800, 58400]
print(statistics.mean(calls), statistics.pstdev(calls))

文章配图

Figure 5: The AgentCore Code Interpreter runs Python in a sandbox, so the number in the answer is the output of an execution rather than a prediction of one.

平均值是 50,520。客户确实超标了,日均超出 520 次调用,基线是 50,000,比例是 1%。这里的答案是执行的结果,trace 准确显示了它是如何得出的。在一起计费争议中,这个差异就是整场对话的核心。

Step 4: The same customer asks what to do about it

留在同一聊天中,发送一条完全不包含数字的后续消息:

That is closer than I thought. How should I restructure things so I stop going over?

文章配图

Figure 6: A different specialist answers, and it uses the call volumes from the first question.

分诊将其分类为架构指导,路由给了一个拥有不同工具的不同 agent:AWS 技能目录而非代码解释器。那个 agent 从未被告知客户的调用量,但它仍然使用了这些数据,因为两次调用都到达了同一个 harness 并携带了相同的 Actor ID。第一次对话被写入了该客户的内存,第二次调用从中读取。无需任何专家知道另一个专家的存在。

这是支持团队立刻能感受到价值的地方。没有共享内存的话,客户需要再次在同一个对话中粘贴那五个数字——给一家已经拥有这些数据的公司。

在面对真实客户之前,有一个作用域细节需要注意:内存事件按 Actor ID 加 Session ID 划分作用域,因此在同一个 harness 上使用不同的 Actor ID 将获得完全独立的内存。在此模板中,Actor ID 来自聊天会话;在生产环境中,你应该从你自己的用户、账户或工单 ID 中设置它。参见 Memory 了解保留策略以及如何调优检索。

现在发一条既不是计算问题也不是架构问题的问题:

Also, does the daily limit reset at midnight UTC or in my local time?

开放性问题路由到 Research Specialist,它使用每个 harness session 中都可用的 shell 和 file 工具工作。同一客户的三条消息,三个专家,一份不断积累的内存。站在客户角度,这是与同一家公司的单一对话。

文章配图

Figure 7: Each answer arrives in Slack tagged with the specialist that produced it.

Where to go from here

此模板是一个起点,每个方向的功能配置方式都与上述相同。

从你的客户已经在的地方触发它。聊天面板无需设置,这就是模板附带它的原因。Slack Trigger 或 Webhook 是自然的生产选择;两者都需要一个可从互联网访问的 n8n 实例。

使用你已经构建好的 agent。将专家的 Harness ARN 表达式替换为你通过 AgentCore CLI、控制台、CloudFormation 或 Terraform 创建的 harness ARN。节点直接调用它,配置字段成为每次调用的覆盖项。

添加一位专家。在 Switch 上再加一个分支,再加一个 agent 节点。给它一个远程 Model Context Protocol 服务器、一个用于对你自己的 API 进行受控访问的 AgentCore Gateway,或者 AgentCore Browser。

有关私有 VPC 网络、OAuth 认证调用、多提供商模型切换以及该节点支持的其他功能,请参阅 AWS Machine Learning Blog。

这个团队是你 AWS 账户中的一个 harness 资源,它配置了一个托管内存存储。用完后删除它以避免持续产生费用。

aws bedrock-agentcore-control list-harnesses --region us-west-2

然后删除此模板创建的那个,名为 support_team:

aws bedrock-agentcore-control delete-harness \
  --harness-id <harness-id> --region us-west-2

由于节点按 Agent Name 复用同一个 harness,无论你问了多少问题,测试此工作流都只会留下一个资源。

你构建了一支专家 agent 团队,每个客户共享一份记忆,无需向量存储、数据库或任何已部署的基础设施。三条理念使其成为可能:专家比通才做得更好,因为每个人都有适合其工作的工具;以客户为作用域的内存让团队能够在成员之间传递工作,而无需客户重复自己;每次调用时授予工具意味着专家团队无需成为一组独立资源 fleet 就能运作。

将此工作流导入你的 n8n 实例,所有节点已连线和配置。

有关该节点支持的其他功能(包括私有 VPC 网络和 OAuth 认证调用),请参阅 AWS Machine Learning Blog 上的 Run production AI agents in n8n with Amazon Bedrock AgentCore harness。了解更多底层能力,请参阅 AgentCore 文档。

此节点在 MIT 许可证下开源。AgentCore Harness 本身由 Strands Agents 驱动,这是来自 AWS 的开源 agent 框架。欢迎在 GitHub 仓库上提交贡献和反馈。

n8n 用户来自各种各样的背景、经验水平和兴趣领域。我们一直在寻找在博客文章中突出不同用户及其项目的机会。如果你正在使用 n8n 并希望启发社区,请联系我们 💌

Original source

本文由 AI 翻译整理自 n8n Blog,原文版权归原作者所有。

阅读英文原文
上一篇
Automox MCP Server:Claude Code 可直接管理万台终端
下一篇
嵌入式工程师实战:三大 AI 编程助手深度横评