由上边的内容,引出LangChain抽象的一些核心模块:LangChain通过模块化的方式去高级抽象LLM在不同场景下的能力,其中LangChain抽象出的最重要的核心模块如下:‘
LangChain的chain模块是其框架中用于构建智能对话和任务式应用的核心组件之一,主要负责流程控制和数据传递。以下是chain模块的一些详细介绍:
LLMChain 是 LangChain 中最简单的链,作为其他复杂 Chains 和 Agents 的内部调用,被广泛应用。一个LLMChain由PromptTemplate和语言模型(LLM or Chat Model)组成。它使用直接传入(或 memory 提供)的 key-value 来规范化生成 Prompt Template(提示模板),并将生成的 prompt (格式化后的字符串)传递给大模型,并返回大模型输出。案例如下:
设置chain.verbose =True可以给出中间推理过程。2-3、Sequential Chain(顺序链)
SequentialChain是一种链(Chain)类型,用于定义一系列步骤或组件,这些步骤或组件将按顺序执行。SequentialChain的核心功能是将多个处理步骤串联起来,使得每一步的输出成为下一步的输入,从而形成一个有序的执行流程。顺序链(Sequential Chain )允许用户连接多个链并将它们组合成执行特定场景的流水线(Pipeline)。有两种类型的顺序链:
RouterChain: 是LangChain框架中的一个组件,用于构建可以根据输入动态选择下一个执行链条的系统。它主要包含两个部分:RouterChain本身和destination_chains(目标链)。RouterChain负责选择下一个要调用的链条,而destination_chains是RouterChain可以路由到的链条集合以下是RouterChain的一些关键特点和用途:
Transform Chain: 主要用于对数据进行转换处理,然后再将转换后的结果输出给后续的处理链。参考文章:
欢迎光临 AI创想 (http://llms-ai.com/) | Powered by Discuz! X3.4 |