LangChain入门实战
文章平均质量分 92
LangChain是一个基于LLM开发应用的框架。它集成了一系列使用的工具、组件和接口,使开发者能够轻松构建高效、灵活的应用。
SunnyRivers
在通信、游戏、互联网、新能源等不同行业从事过多年大数据开发相关工作,想通过博客和大家一起分享大数据技术带来的经验和乐趣。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
LangChain高级用法之检索
检索(Retrieval) 正是为解决这些问题而生——它能在用户提问时动态获取相关的外部知识。原创 2026-02-09 16:45:03 · 103 阅读 · 0 评论 -
LangChain多智能体之Router
路由器模式(Router pattern) 是一种 多智能体(multi-agent) 架构:系统通过一个路由步骤对用户输入进行分类,并将其分发给多个专用智能体,最终将各智能体的结果合成为一个统一的回答。该模式特别适用于企业知识分散在多个垂直领域(verticals) 的场景——每个领域都有其独立的知识体系,需要专属的智能体、工具和提示词(prompt)来处理。在本教程中,你将构建一个多源知识库路由器,并通过一个贴近真实企业需求的案例来展示其优势。原创 2026-02-09 15:50:12 · 156 阅读 · 0 评论 -
LangChain多智能体之Skills
技能概念由 Claude Code 推广,本质上是基于提示词的:即针对特定业务任务的自包含专用指令单元。在 Claude Code 中,技能以文件系统中的目录形式存在,通过文件操作被发现。技能通过提示词引导行为,并可提供工具使用说明,或包含供编码智能体执行的示例代码。💡带有渐进式披露的技能可视为一种 RAG(检索增强生成) 形式,其中每项技能都是一个检索单元——尽管不一定依赖嵌入(embeddings)或关键词搜索,而是通过浏览内容的工具(如文件操作,或本教程中的直接查找)来实现。原创 2026-02-09 13:10:53 · 154 阅读 · 0 评论 -
LangChain多智能体之交接机制
在 Handoffs(交接)架构 中,系统行为会根据状态动态变化。其核心机制是:工具(tools) 会更新一个跨轮次持久化的状态变量(例如 current_step 或 active_agent),而系统则读取该变量以调整自身行为——要么应用不同的配置(如系统提示词、可用工具),要么将控制权路由至另一个 智能体(agent)。这种模式既支持不同智能体之间的交接,也支持单个智能体内动态配置的切换。💡 术语说明。原创 2026-02-09 10:28:33 · 442 阅读 · 0 评论 -
LangChain多智能体之子代理
在 子代理架构 中,一个中心化的主 代理(通常称为 监督者(supervisor))通过将子代理作为 工具(tools) 来调用,从而协调多个子代理的工作。主代理负责决定调用哪个子代理、提供什么输入,以及如何整合子代理返回的结果。子代理本身是无状态的(stateless)——它们不会记住过去的交互,所有的对话记忆都由主代理维护。这种设计实现了 上下文隔离(context isolation):每次调用子代理时,它都在一个干净的上下文窗口中工作,从而避免主对话的历史记录不断膨胀(即“上下文膨胀”问题)。原创 2026-02-09 09:26:26 · 490 阅读 · 0 评论 -
LangChain多智能体简介
PatternOne-shotSubagents4 callsHandoffs3 callsSkills3 callsRouter3 calls如何选择合适的模式?原创 2026-02-08 16:56:36 · 409 阅读 · 0 评论 -
LangChain核心组件之Structured output
"""从会议记录中提取的待办事项"""task: str = Field(description="具体任务")assignee: str = Field(description="负责人")priority: Literal["low", "medium", "high"] = Field(description="优先级")tools=[],tool_message_content="待办事项已捕获并添加至会议纪要!原创 2026-01-07 16:46:53 · 600 阅读 · 0 评论 -
LangChain核心组件之Streaming
若要在工具执行过程中流式输出自定义信息,可以使用 get_stream_writer。"""获取指定城市的天气。"""# 可流式输出任意数据writer(f"正在查询城市from langchain . agents import create_agent from langgraph . config import get_stream_writer def get_weather(city : str) - > str : """获取指定城市的天气。原创 2026-01-07 13:01:11 · 787 阅读 · 0 评论 -
LangChain核心组件之Short-term memory
记忆是一种用于记录先前交互信息的系统。对于 AI Agent(智能体)而言,记忆至关重要——它使智能体能够记住过往对话、从用户反馈中学习,并适应用户的偏好。随着智能体处理的任务越来越复杂、交互轮次越来越多,这种能力对提升效率和用户体验变得不可或缺。短期记忆允许你的应用在单个线程(thread)或一次会话(conversation)中记住之前的交互内容。注:一个 线程(thread) 用于组织一次会话中的多次交互,类似于电子邮件中将多条消息归为同一对话的方式。最常见的短期记忆形式就是对话历史。原创 2026-01-06 17:47:27 · 682 阅读 · 0 评论 -
LangChain核心组件之Tools
创建工具最简单的方式是使用 @tool 装饰器。@tool"""在客户数据库中搜索匹配指定查询条件的记录。Args:query: 要搜索的关键词limit: 返回结果的最大数量"""return f"找到from langchain . tools import tool @tool def search_database(query : str , limit : int = 10) - > str : """在客户数据库中搜索匹配指定查询条件的记录。原创 2026-01-06 16:35:06 · 1022 阅读 · 0 评论 -
LangChain核心组件之Messages
在 LangChain 中,消息(Messages) 是模型上下文的基本单元。它们代表了模型的输入与输出,既包含实际内容,也携带元数据,用于在与大语言模型(LLM)交互时完整表达对话状态。LangChain 提供了一套标准化的消息类型,可在所有模型提供商之间通用,确保无论调用哪个模型,行为都保持一致。原创 2026-01-06 15:11:47 · 722 阅读 · 0 评论 -
LangChain核心组件之Models
多数聊天模型集成支持配置 API 请求的 Base URL,便于使用兼容 OpenAI API 的模型服务或通过代理服务器调用。许多厂商提供 OpenAI 兼容 API(如vLLM使用 init_chat_model时只需指定base_url若直接使用聊天模型类实例化,参数名可能因厂商而异。请查阅对应参考文档。代理支持因集成而异,请查阅具体厂商的参考文档。原创 2026-01-06 13:32:20 · 998 阅读 · 0 评论 -
LangChain核心组件之Agents
将工具列表传递给智能体即可。工具可以是普通的 Python 函数,也可以是 协程(coroutines)。你可以使用。原创 2026-01-05 17:05:46 · 1112 阅读 · 0 评论 -
LangChain的哲学理念
在设计 LangGraph 时,我们汲取了 LangChain 的经验教训,内置了流式响应(Streaming)、持久化执行(Durable Execution)、短期记忆(Short-term Memory)、人在回路(Human-in-the-loop)等关键能力。原始 LangChain 聚焦于 LLM 抽象和高层接口,但缺乏一个底层编排层,让开发者精确控制 Agent 的执行流程。LangChain 的使命是:成为使用大语言模型(LLM)构建应用最简单、最灵活且可直接投入生产的起点。原创 2026-01-05 14:45:47 · 898 阅读 · 0 评论 -
10分钟入门LangChain
恭喜!理解上下文并记住对话智能地使用多个工具以一致的格式提供结构化响应通过上下文处理用户特定信息在交互之间保持对话状态的 AI 智能体!原创 2026-01-05 13:30:18 · 1102 阅读 · 0 评论 -
LangChain开发环境搭建
在搭建LLM环境时,必须在性能和成本之间做出权衡,即在专有大语言模型和开源大语言模型之间做出选择。如果不想在本地私有化搭建LLM环境,可以选择专业的LLM提供者,通过其API来进行开发,详细参考。(2)安装完成后,运行Ollama,在Ollama官网的模型库中选择自己喜欢的LLM。,下载适合自己系统的Ollama版本,运行相应的命令安装。,当然也可以在python官网下载相关包,参考。这里直接用Ollama在本地搭建LLM环境。(3)打开终端,执行相应命令下载和运行模型。下载完成后直接安装即可。原创 2025-06-04 23:07:35 · 637 阅读 · 0 评论
分享