prompt比拖拉拽更适合新手做复杂agent!LangSmith+Milvus教程

2026-01-06

By 尹珉

prompt比拖拉拽更适合新手做复杂agent!LangSmith+Milvus教程

过去一段时间,我们介绍了很多小白入门级的agent框架,也介绍了包括langchain在内的很多专业级agent搭建框架。

但总是会收到一些提问:完全不会写代码,但是想要搭建一套能解决复杂问题的agent系统,这个现实吗?

在相当长一段时间里,这个问题是无解的。因为这背后藏着一个悖论:很多入门级的产品,会选择拖拉拽式的大多数可视化工作流平台,看起来很直白简洁。但问题是,做生产级的复杂agent,各种调用以及逻辑关系错综复杂,进度只到一半,可能页面就已经连成了毛线团。

那怎么解决?

或许新手小白搭建复杂agent,回归prompt 工程,反而是一个更实用的办法。

这也是langchain不久前推出LangSmith Agent Builder 的原因,它跳出了画布的传统路径,而是将所有逻辑都收敛到 prompt,通过 LLM 来动态决策。

更人话一点翻译,就是Agent Builder 会引导你把自己的想法清晰表达出来,然后自动创建规范标准的提示词,并选择对应工具,然后帮助你搭建agent。

那么这个产品应该怎么用?最关键的记忆环节怎么搭建?本文将重点解读

01 Agent Builder 架构介绍一个对话框,四个部分

Agent Builder 的界面极简,没有拖拽区、没有节点库,只有一个对话框。你在其中描述想做什么,系统通过提问来细化需求,最后生成一个完整的 Agent。这个 Agent 由四个部分构成:

640.webp 640.webp

Prompt 是 Agent 的大脑。所有行为逻辑都写在这里,包括任务目标、工作流程、边界约束。Agent Builder 的 Meta Prompting 功能会通过多轮对话帮你扩展这个 prompt。比如你说"我要一个日程助手",系统会追问:从哪里读取日程?发送到哪里?什么时间触发?这些回答会自动整合成一个详细的系统指令。

Tools 是 Agent 与外界交互的接口。Agent Builder 基于 Model Context Protocol (MCP) 标准接入工具,内置了 Gmail、Slack、Linear 等常用服务的连接器。你也可以自建 MCP Server 来暴露内部 API。

对于需要向量检索能力的场景,Milvus 官方提供了 mcp-server-milvusclaude-context 两个 MCP Server 实现。前者专注于向量数据的 CRUD 操作,后者则提供了完整的上下文管理能力。使用时需要注意:这些 MCP Server 需要在你的本地或服务器上运行并暴露服务端点,Agent Builder 才能通过网络调用访问。工具调用前需要 OAuth 授权,系统会在创建流程中引导你完成认证。

Triggers 决定 Agent 何时启动。除了手动触发,还支持定时任务(每天早上 6 点)、事件监听(收到特定 Slack 频道消息)、Webhook 触发(外部系统推送)。Trigger 本质上是一个启动条件,满足条件就实例化一个新的执行线程。

Subagents 用于任务拆解。主 Agent 可以通过 task 工具把子任务委托给专门的子 agent。每个子 agent 有独立的 prompt 和工具集,执行完毕后把结果返回给主 agent。这个机制继承自 DeepAgents 的 SubAgentMiddleware,避免了把所有逻辑塞进一个 prompt 导致的混乱。

02 Agent 怎么记住我的偏好?

Agent Builder 最有趣的设计是记忆机制。比如:Agent 正准备发送一条 Slack 消息,用户在 debug 模式下说:"以后所有消息都要用诗歌结尾。“Agent 收到这个指令后,调用了 read_file 工具读取自己的记忆文件,然后用 edit_file 工具修改文件内容,在指令末尾加上"Always close the briefing with a short uplifting poem”。

这个记忆文件就是 Agent 的系统 prompt。每次 Agent 启动,都会读取这个文件作为指令上下文。用户的纠正会触发 Agent 去编辑这个文件,相当于 Agent 在运行时重写自己的行为规则。这比传统的 conversation history 更高效,因为修改是结构化的,而不是堆叠在对话历史的某一条消息里。

这套设计直接继承自 DeepAgents 的 FilesystemMiddleware。Agent Builder 把文件系统抽象成了记忆层,用户看不到底层的 lswrite_filegrep 调用,只能通过对话来引导 Agent 更新记忆。这降低了上手门槛,但也牺牲了一些控制粒度——如果你需要精细化管理记忆存储(比如把记忆持久化到 Milvus 进行语义检索),可以在 Agent Builder 中通过自定义 MCP Server(如 mcp-server-milvus)来接入,或者回到 DeepAgents 的代码层进行更深度的定制。

03 动手试试:10分钟搭个Milvus 顾问

前面我们了解了 Agent Builder 的设计理念,现在通过一个实操来走一遍构建流程。我们要构建一个能回答 Milvus 技术问题、搜索官方文档、记住用户偏好的智能助手。

1.登录LangChain官网

https://smith.langchain.com/

640-1.webp 640-1.webp

2.设置Anthropic API 密钥

说明:默认支持Anthropic,也支持自定义模型(类型列表由官方提供)

640-2.webp 640-2.webp

2.1添加密钥

640-3.webp 640-3.webp

2.2输入密钥并保存

640-4.webp 640-4.webp

3.新建Agent

说明:点击Learn More可以查看使用文档

640-5.webp 640-5.webp

640-6.webp 640-6.webp

3.1配置自定义模型(可选)

640-7.webp 640-7.webp

3.1.1输入参数并保存

640-8.webp 640-8.webp

640-9.webp 640-9.webp

4.描述需求创建Agent

说明:自然语言描述创建Agent

#英文描述 
I need a Milvus technical consultant to help me answer technical questions about vector databases. 
Search the official documentation and remember my preference for the index type I use. 
========== 
#中文描述 
需要一个 Milvus 技术顾问,帮我回答向量数据库的技术问题, 
搜索官方文档,记住我使用的索引类型偏好.

640-10.webp 640-10.webp

4.1系统会开始提问细化需求:

问题1:选择希望 Agent 记住的 Milvus 索引类型

640-11.webp 640-11.webp

问题2:选择希望 Agent 如何处理技术问题

640-12.webp 640-12.webp

问题3:选择Agent 专注Milvus 特定版本指导

640-13.webp 640-13.webp

5.确认生成的 Agent

说明:系统自动生成 Agent 配置

640-14.webp 640-14.webp

创建前可以查看元数据、工具、提示等信息,确认无误后点击创建

640-15.webp 640-15.webp

640-16.webp 640-16.webp

6.了解功能区域

创建完成后,你会看到左下角的三个功能区:

Triggers(触发器)

让 Agent 响应外部事件或按时间表自动运行:

  • Slack:特定频道收到消息时激活

  • Gmail:收到邮件时触发

  • Cron:定时任务

640-17.webp 640-17.webp

Toolbox(工具箱)

Agent 可调用的工具集。图中三个工具是创建时自动生成的,可通过 “Add tool” 添加更多。

640-18.webp 640-18.webp

如果你的 Agent 需要向量检索能力(比如在大量技术文档中做语义搜索),可以部署 Milvus 的 MCP Server(mcp-server-milvusclaude-context),然后在这里通过"MCP"按钮添加自定义 MCP 服务端点。记得确保 MCP Server 已在可访问的网络地址上运行,Agent Builder 才能成功调用。

640-19.webp 640-19.webp

640-20.webp 640-20.webp

Sub-agent(子代理)

创建专门处理特定子任务的独立代理模块,实现模块化设计:

640-21.webp 640-21.webp

7.测试 Agent

点击右上角 “Test” 进入测试模式,以下是部分测试结果展示

640-22.webp 640-22.webp

640-23.webp 640-23.webp

640-24.webp 640-24.webp

640-25.webp 640-25.webp

04 该选Agent Builder 还是 DeepAgents?

Agent Builder 适合快速原型和内部工具场景。你不需要关心底层实现,只要描述需求、配置工具、观察运行。记忆机制是托管的,工具调用是封装好的,人机协作通过 Inbox 界面完成。

DeepAgents 适合需要精细控制的生产场景。你可以自定义 middleware、替换 backend 存储(比如把记忆持久化到 Milvus)、接入任意 Python 工具、控制 agent 的状态图。代价是你需要写代码、管理依赖、处理错误。

两者的技术栈是连续的:Agent Builder 底层就是 DeepAgents,只是把配置能力从代码迁移到了对话界面。如果你在 Agent Builder 里验证了可行性,想要更灵活的部署方式,可以无缝切换到 DeepAgents。反过来,如果你用 DeepAgents 实现了某个模式,也可以把这个模式封装成 Agent Builder 的模板,让非技术人员复用。

LangSmith Agent Builder 把 Agent 开发的门槛从会写 Python降到了会描述需求。这个转变背后的技术支撑是 DeepAgents 三年来在规划、记忆、工具调用上的积累。现在这些能力不再是开发者的专属工具,而是每个人都能使用的生产力平台。

  • 尹珉

    尹珉

    Zilliz 黄金写手

    准备好开始了吗?

    立刻创建 Zilliz Cloud 集群,存储和检索您的向量。

    免费试用 Zilliz Cloud

    AI Assistant