ITPub博客

首页 > 人工智能 > 人工智能 > 智能体LangChain(七)核心模块:链(Chains),手把手教你搞定工作流(1)

智能体LangChain(七)核心模块:链(Chains),手把手教你搞定工作流(1)

原创 人工智能 作者:accps115202 时间:2025-09-07 18:00:17 0 删除 编辑

    

一、链类型介绍

   LangChain 的链类型丰富多样,可根据具体需求灵活组合,类型包括基础链(LLMChain、SequentialChain)、路由链(RouterChain)、检索链(RetrievalQA、VectorDBQA)、记忆链( ConversationChain)、对话链(ChatVectorDBChain)、工具链(TransformChain、LLMCheckerChain)和自定义链等。

有时更新不及时,最新的文章和动态请关注公众号:我和AI的成长

二、链实战
1.  LLMChain
最基础的链,它把提示模板(PromptTemplate)和大语言模型(LLMs)结合在一起。其工作流程是,先根据提示模板生成输入文本,再将该文本传递给大语言模型,最后得到输出结果。如上一篇提示词文章中的示例, 通过链(Chain)动态生成提示,可结合不同组件的输出。 通过前置链生成上下文,再结合主提示提升准确性。 代码示例如下:





2.  SequentialChain ( 顺序链)

顺序链形式, 将多个链按顺序连接起来, 每个步骤都有输入和输出, 前一个链的输出会作为后一个链的输入。顺序链包括:SimpleSequentialChain(单输入单输出,所有链必须匹配输入 / 输出格式)和 SequentialChain(多输入多输出,可指定特定的输入 /  输出变量)
2.1 SimpleSequentialChain
最简单的顺序链形式,如以下步骤:
步骤1:输入A → 输出B

步骤2:输入B → 输出C

步骤3:输入C → 输出D

代码示例如下:


2.2 SequentialChain

更灵活的顺序链形式, 当链需要多个输入变量时, 可以指定完整的输入输出变量映射。 需要访问中间步骤的输出结果时可保留所有中间结果。支持更复杂的 数据流模式。 如以下步骤:
步骤1:输入A、输入B → 输出C
步骤2:输入C、输入D → 输出E
步骤3:输入E、输入F  → 输出G
代码示例如下:





3. RouterChain

    路由链(Router Chain)是一种特殊的链结构, 能够依据输入内容, 把请求导向不同的子链, 动态地选择合适的子链来处理任务。适用于 多领域问答系统(如区分科学、历史、技术问题等)。路由链工作原理和步骤包括: 接收用户的输入、运用路由逻辑(可以是基于规则的,也可以是由 LLMs 驱动的)来分析输入、依据分析结果,选择对应的子链、将输入传递给选中的子链进行处理、返回子链的处理结果。常用的类型包括:

A. RouterChain

它是路由链的核心抽象类,定义了基本接口,负责接收输入并将其路由到合适的子链。 通常需要和下游的 destination chain(目标链)一起使用,形成 “一个网关路由 + 多个下子链” 的架构。该类 不提供具体的路由逻辑, 子类需要自己实现来决定如何将输入路由到不同的子链,实际使用时需要结合具体的路由逻辑来实现。

B. MultiPromptChain

用于在多个提示词之间路由输入,内部维护着一个提示选择器(PromptSelector), 它包含一个提示列表和一个路由逻辑,它根据输入内容挑选出最匹配的提示模板, 能够将输入映射到对应的提示和链上进行处理。

C. MultiRouteChain

提供多路由能力的基类,实现了基本的路由逻辑框架,但需要子类提供具体的路由策略。

D. LLMRouterChain

它利用语言模型(LLM)来生成路由决策。 使用时需要传入作为基底的大语言模型和用作路由的prompt, 包含对用户输入的解析、对路由的指引。 通过对输入进行分析,预测出合适的子链或者工具。

3.1  MultiPromptChain
代码示例如下:


3.2  MultiRouteChain

代码示例如下:



三、总结

    LangChain提供了丰富的链类型,从简单的 LLM 调用到复杂的代理系统,覆盖了各种应用场景。在实际开发中,应根据任务需求选择合适的链类型,遵循 "从简单到复杂" 的原则,合理组合现有组件,并在必要时自定义链以满足特定需求。通过遵循最佳实践,可以构建出高效、可维护、更强大且安全的 LLM 应用。





来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70046654/viewspace-3095123/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
15+年程序员,轻创业中,财富自由记录者。酷爱副业探索和理财。欢迎一起交流一起成长~

注册时间:2025-06-05

  • 博文量
    7
  • 访问量
    8384