主题
助手
助手是 Agent Server 的一个概念,允许你将配置(例如提示词、LLM 选择、工具)与图的核心逻辑分开管理。这使你能够为同一图架构创建多个专门的版本,在运行时具有不同的行为。通过配置变化(而非对图做结构性更改),每个助手都针对不同的用例进行了优化。
例如,设想一个基于通用图架构构建的通用写作智能体。虽然结构保持不变,但不同的写作风格(如博客文章和推文)需要量身定制的配置以优化性能。为了支持这些变化,你可以创建多个助手(例如一个用于博客,另一个用于推文),它们共享底层图,但在模型选择和系统提示词上有所不同。

Agent Server API 提供了多个端点,用于创建和管理助手及其版本。有关更多详情,请参阅 API 参考。
INFO
助手是 LangSmith Deployment 的一个概念。它们在开源的 LangGraph 库中不可用。
助手如何与部署协同工作
当你使用 LangSmith Deployment 部署一个图时,Agent Server 会自动创建一个与该图默认配置绑定的默认助手。然后你可以为同一个图创建其他助手,每个助手都有自己的配置。
如果你的部署在 langgraph.json 中定义了多个图,则每个图都会获得自己的默认助手:
json
{
"graphs": {
"graph_id_1": "path_to_graph_id_1", // default assistant created for graph_id_1
"graph_id_2": "path_to_graph_id_2" // default assistant created for graph_id_2
}
}也就是说,可以有多个默认助手——为你部署中定义的每个图各一个。
助手具有若干关键特性:
- 通过 API 和 UI 管理:使用 Agent Server/LangGraph SDK 或 LangSmith UI 创建、列出、更新、创建版本并获取助手。
- 一个图,多个助手:单个已部署的图可以支持多个助手,每个助手具有不同的配置(例如提示词、模型、工具)。
- 版本化 配置:每个助手通过版本管理维护各自的配置历史。编辑助手会创建新版本,你可以将任意版本提升为活动版本,或回滚到任意版本。
- 配置 更新,无需更改图:通过助手配置更新提示词、模型选择和其他设置,从而无需修改或重新部署图代码即可快速迭代。
NOTE
调用助手时,你可以在 langgraph.json 中指定以下任一项:
- 图 ID(例如
"agent"):使用该图的默认助手 - 助手 ID(UUID):使用特定的助手配置
这种灵活性让你既可以用默认设置快速测试,也可以精确控制使用哪个配置。
配置
助手建立在 LangGraph 开源库的配置概念之上。
虽然配置在开源 LangGraph 库中可用,但助手仅存在于 LangSmith Deployment 中,因为它们与已部署的图紧密耦合。部署后,Agent Server 会使用图的默认配置设置为每个图自动创建一个默认助手。
在实践中,助手只是一个带有特定配置的图的实例。因此,多个助手可以引用同一个图,但可以包含不同的配置(例如提示词、模型、工具)。LangSmith Deployment API 提供了若干端点用于创建和管理助手。有关如何创建助手的更多详细信息,请参阅 API 参考 和此操作指南。
使用场景
当你需要使用不同的配置部署相同的图架构时,助手是理想之选。常见的使用场景包括:
用户级个性化
- 为每个用户自定义模型选择、系统提示词或工具的可用性。
- 存储用户偏好,并自动将其应用于每次交互。
- 让用户可以在不同的 AI 个性或专业水平之间进行选择。
特定客户或组织的配置
- 为不同的客户或组织维护独立的配置。
- 无需部署单独的基础设施即可为每个客户自定义行为。
- 将配置更改隔离到特定客户。
graph TD
A["Graph: agent<br/>(deployed)"]
A --> B["Customer A Assistant<br/>━━━━━━━━━━━━━<br/>Model: GPT-4<br/>Tone: Legal<br/>Tools: Custom"]
A --> C["Customer B Assistant<br/>━━━━━━━━━━━━━<br/>Model: Claude<br/>Tone: Casual<br/>Tools: Standard"]
A --> D["Customer C Assistant<br/>━━━━━━━━━━━━━<br/>Model: GPT-3.5<br/>Tone: Formal<br/>Tools: Limited"]
style A fill:#E5F4FF,stroke:#006DDD,stroke-width:3px,color:#030710
style B fill:#B3E0F2,stroke:#4A90E2,stroke-width:2px,color:#1E3A5F
style C fill:#B3E0F2,stroke:#4A90E2,stroke-width:2px,color:#1E3A5F
style D fill:#B3E0F2,stroke:#4A90E2,stroke-width:2px,color:#1E3A5F
特定环境的配置
- 为开发、预发布和生产环境使用不同的模型或设置。
- 在将配置更改推广到生产环境之前,先在预发布环境中进行测试。
- 在非生产环境中使用更小的模型来降低成本。
A/B 测试与实验
- 比较不同的提示词、模型或参数设置。
- 逐步向部分用户推出配置更改。
- 衡量不同配置变体之间的性能差异。
专用任务变体
- 为通用智能体创建特定领域的版本。
- 针对不同的语言、区域或行业优化配置。
- 在改变执行细节的同时保持图逻辑一致。
graph TD
A["Graph: writing-agent<br/>(deployed)"]
A --> B["Blog Assistant<br/>━━━━━━━━━━━━━<br/>Model: GPT-4<br/>Tone: Formal<br/>Style: Long-form<br/>Tools: SEO optimization"]
A --> C["Tweet Assistant<br/>━━━━━━━━━━━━━<br/>Model: GPT-4-mini<br/>Tone: Casual<br/>Style: 280-char limit<br/>Tools: Hashtag suggestions"]
A --> D["Email Assistant<br/>━━━━━━━━━━━━━<br/>Model: GPT-4<br/>Tone: Professional<br/>Style: Medium length<br/>Tools: Templates"]
style A fill:#E5F4FF,stroke:#006DDD,stroke-width:3px,color:#030710
style B fill:#B3E0F2,stroke:#4A90E2,stroke-width:2px,color:#1E3A5F
style C fill:#B3E0F2,stroke:#4A90E2,stroke-width:2px,color:#1E3A5F
style D fill:#B3E0F2,stroke:#4A90E2,stroke-width:2px,color:#1E3A5F
版本管理
助手支持版本管理以跟踪随时间发生的变化。创建助手后,后续的编辑会自动创建新版本。
- 每次更新都会创建助手的新版本。
- 你可以将任意版本提升为活动版本。
- 回滚到之前的版本只需将其设为活动版本即可。
- 所有版本都保留可供参考和回滚。
WARNING
更新助手时,你必须提供完整的配置负载。更新端点会从头创建新版本,不会与之前的版本合并。请确保包含你想要保留的所有配置字段。
有关如何管理助手版本的更多详细信息,请参阅管理助手指南。