Anthropic 发布 anthropics/commerce-agents,包含购物 Agent 和商户 Agent 的完整蓝图,涵盖 Agent 循环、工具层、审批门和评测套件。
大多数团队在构建购物助手或 Agent 时,都会重新搭建相同的基础架构:Agent 循环、基于目录的工具层、审批门控和评估套件。Anthropic 如今将这套架构作为代码发布了。本周,他们开源了 anthropics/commerce-agents(一个参考蓝图),其中包含一个购物 Agent 和一个商户 Agent,并附带四个可运行的垂直场景:零售、旅游、电信和娱乐。该项目同时发布了两篇详细文档:产品公告和一篇工程技术深度解析——A guide to the anatomy of effective commerce agents。
是否可直接部署?完全可以。仓库采用 Apache 2.0 协议,可在本地运行(Python 3.11+ 和 Node 22),仅需配置 ANTHROPIC_API_KEY 环境变量即可。由于运行时兼容任何 anthropic 客户端,同一套代码可以部署在 Claude API、Amazon Bedrock、Microsoft Foundry 或 Google Cloud Vertex AI 上。
购物 Agent 部署在商户自有应用内,具备以下能力:搜索目录、处理多商品请求、对比选项、构建购物车,以及在同一对话中回答订单和退货问题。它拥有五项核心技能:search-discovery(搜索发现)、purchase-research(购买调研)、planning-goals(规划目标)、customer-care(客户服务)和 memory-personalization(记忆个性化)。部署时需要基于商户的目录、购物车、订单和策略系统实现一个 StorefrontBackend。
商户 Agent 的服务对象是门店员工:销售业绩查询、库存预警、定价及促销建议,以及营销活动文案撰写。其技能包括:performance-insights(业绩洞察)、catalog-listings(目录管理)、inventory-operations(库存运营)、pricing-promotions(定价促销)和 marketing-campaigns(营销活动),底层由 MerchantBackend 支撑。
两种 Agent 均支持三种运行方式——Messages API、Claude Agent SDK 和 Claude Managed Agents(beta)——共用同一套 prompts、skills、工具契约和门控定义。此外还提供了一个 Claude Code 插件 commerce-builder,通过 /scaffold-commerce-agent 命令可快速脚手架一个新 Agent,或通过 /review-commerce-agent 审查现有 Agent。
架构层面的主张是最具迁移价值的部分。Anthropic 明确反对意图路由(intent router)架构,也反对为每个领域单独配置一个子 Agent 的设计。 commerce 会话是一个紧密耦合的对话过程,而每次交接都会造成状态丢失:Orchestrator 持有购物车、偏好和历史记录,每次交接不仅会丢失这些上下文,还可能消耗数倍于正常情况的 token 量并增加数秒延迟。此外,各领域之间存在大量重叠——例如退货流程同时需要订单历史、购物车和目录信息。
Agent Skills(技能) 在不产生上述损耗的前提下提供了同等的模块化优势,因为技能指令直接加载到已经持有历史记录的 Agent 中。在多个企业级部署中,Anthropic 报告称:采用单一 Agent 加技能的设计,在质量维度上优于"一个大 prompt"和"子 Agent"两种方案,且通常成本更低、延迟更小。子 Agent 并非没有价值,它仍适用于窄领域、自我闭环的工作场景,例如深度研究。
关于 prompt 与 skill 的划分依据是调用频率:大约三分之一或更多的流量放在系统 prompt 中,其余部分放在 skills 中。安全规则、品牌约束和关键用户事实信息始终置于 prompt 内。
大多数 commerce 响应本质上是组件,而非散文。蓝图没有让模型生成自定义标签,而是将每个组件实现为一个工具:present_products、present_itinerary、present_plan_comparison 等,这些工具带有类型化参数,由服务端在客户端渲染前完成校验。由于这些调用原生存在于 messages 数组中,重载历史记录无需自定义解析器,且 Agent 可以从上一次呈现调用中解析"第一家酒店"等引用。对于 token 级流式输出,配置 eager_input_streaming: true 可跳过服务端缓冲,同时保证 schema 的确定性。
延迟、缓存、内存
一次渲染后的响应约含 500–700 个输出 token,若不开启流式输出,用户将面临长达 5 秒的加载等待。Anthropic 将端到端延迟与感知延迟区分处理:组件在形成时即流式输出,同时渲染纯语言的进度提示行。Eager tool dispatch(每个调用在其参数流式传输完成后立即执行,这是 Agent SDK 的默认行为)据报道可将原本数秒的间隔缩短至几百毫秒。
Prompt 缓存是主要的成本杠杆。请求按全局 → 会话 → 易失(volatile)顺序排列,因为缓存基于前缀匹配,若在系统 prompt 顶部放置时间戳,每次请求都会破坏缓存命中率。缓存读取成本是新鲜 token 的十分之一,缓存写入则携带约 1.25 倍的溢价,而最优部署可达到 90–99% 的命中率。记忆提取在独立进程中异步运行;Anthropic 测量发现,相比在主对话轮次中保存事实的工具调用,异步记忆提取的事实召回率高出 13%。
查看 Anthropic 工程技术深度解析、产品公告、GitHub 仓库和 Commerce 演示。此外,欢迎关注我们的 Twitter,别忘了加入我们的 15 万+ ML SubReddit 并订阅我们的通讯。你用 Telegram 吗?现在也可以加入我们了。
希望与我们合作推广您的 GitHub 仓库、Hugging Face 页面、产品发布或网络研讨会?请联系我们。
Asif Razzaq 是 Marktechpost Media Inc. 的 CEO。作为一位有远见的企业家和工程师,Asif 致力于将人工智能的潜力用于社会公益。他最近的举措是推出了一个人工智能媒体平台 Marktechpost,该平台以深度报道机器学习和深度学习新闻著称,内容兼具技术深度和广泛读者群的可读性。该平台月均浏览量超过 200 万次,显示出其在受众中的受欢迎程度。