LangChain智能体核心组件概述

智能体(Agent) 是将 大语言模型(LLM) 与工具相结合,创建能够 对任务进行推理、决定使用哪些工具并迭代地寻求解决方案 的系统。

LLM智能体循环运行各种工具以实现目标。智能体持续运行,直到满足停止条件为止------即模型发出最终输出或达到迭代次数限制。


1. 模型(Model)

模型是智能体的 推理引擎。它可以通过多种方式进行指定,支持静态和动态选择模型。

  • 静态模型

    静态模型在创建智能体时配置一次,并在整个执行过程中保持不变。这是最常见、最直接的方法。

  • 动态模型

    动态模型的选择是在运行时环境基于当前状态以及上下文信息。这使得复杂的路由逻辑和成本优化成为可能。


2. 工具(Tools)

工具赋予智能体执行操作的能力。

  • 基于单个提示词的连续调用工具
  • 在适当时并行调用工具
  • 根据先前结果动态选择工具
  • 工具的重试逻辑和错误处理
  • 跨工具调用保持状态持久性

3. 系统提示词

系统提示词是智能体的核心操控杆,通过给智能体提供系统提示词来控制智能体处理任务的方式。可以动态设置系统提示词。


4. 结构化输出

在某些情况下,您可能希望智能体以特定格式返回输出。LangChain 通过response_format参数提供了结构化输出的策略。


5. 记忆

智能体通过 消息状态 自动维护对话历史。存储在状态中的信息可以视为智能体的短期记忆。


6. 中间件

中间件给智能体提供了强大的扩展性,可用于在执行的不同阶段自定义智能体的行为。

  • 在调用模型之前处理状态(例如,消息修剪、上下文注入)
  • 修改或验证模型的响应(例如,防护措施、内容过滤)
  • 使用自定义逻辑处理工具执行错误
  • 基于状态或上下文实现动态模型选择
  • 添加自定义日志记录、监控或分析功能

中间件可以无缝集成到智能体的执行图中,使开发者能够在关键点拦截和修改数据流,而无需更改智能体核心逻辑。


7. 调用

可以通过向智能体的状态传递一个更新来调用它。所有智能体的状态中都包含一个消息序列;要调用智能体,只需传递一条新消息。可以进行流式调用。

相关推荐
HIT_Weston1 小时前
45、【Agent】【OpenCode】本地代理分析(请求&接收回调)
人工智能·agent·opencode
鬼先生_sir2 小时前
Spring AI Alibaba 1.1.2.2 完整知识点库
人工智能·ai·agent·源码解析·springai
是小蟹呀^2 小时前
【总结】LangChain中工具的使用
python·langchain·agent·tool
是小蟹呀^4 小时前
【总结】提示词工程
python·llm·prompt·agent
进击的野人7 小时前
MCP协议:让AI应用像插USB一样连接外部世界
人工智能·agent·mcp
wasp5208 小时前
从 Vibe Coding 到真·生产力:OpenHarness 的“Harness 方程式”及其实战分析
人工智能·架构·开源·agent
SuAluvfy10 小时前
2026年大模型免费版体验评测:从“无限供给”到“精细配额”的转折点
人工智能·agent
冲上云霄的Jayden10 小时前
一文了解 Agent Skill的定义、编写、script、references
agent·script·技能·skill·tool
Fzuim10 小时前
大模型Agent工程化:从“模型至上”到“Harness为王”——2026年趋势研究报告
人工智能·agent·skill·harness
花千树-01010 小时前
MCP + Function Calling:让模型自主驱动工具链完成多步推理
java·agent·react·mcp·toolcall·harness·j-langchain