Langchain快速上手编程-Runnable 与 LCEL

  1. Runnable 接口
    1. Runnable 接口 是 使用 Langchain 组件的基础
  2. Runnable 定义了一个标准接口,允许 Runnable组件(Runnable提供的方法):
    1. Invoked(调用):单个输入转化为输出
    2. Batched(批处理):多个输入被有效的转化为输出
    3. Streamed(流式处理):输出在生成时进行流式传输
    4. Inspected(检查):可以访问有关 Runnable 的输入,输出,和配置的原理图信息
    5. Composed(组合):可以组合多个 Runnable ,为了使用 LCEL 协同工作以创建复杂的管道
  3. 在简单的Langchain的使用中 model 和 解析器 都是 Runnable 街斗的示例,都使用了 Inbvoked 的能力

如果使用 接入原生大模型,会存在一个问题---->切换大模型困难

而在 Langchain 中,只需要 再加一行代码:model = ChatGoogleGenerativeAI()

然后使用 invoke 就可以切换大模型

LCEL(Langchain Expression Language)-----链(编排解决方案)

LCEL:采用声明性方法,从现有 Runnable 对象构件新的Runnable对象,通过LCEL构建出新的 Runnable 对象,被称为 RunnableSequence,表示可运行序列。RunnableSequence 就是一种链。通过调试,就能发现,chain 的类型就是 RunnableSequence。

RunnableSequence 也是 Runnable 接口 的示例,它是实现了 完整的 Runnable 接口,因此可以用其他任何 Runnable相同的姿势使用

上一个 Runnable示例(组件)的执行(.invoke)结果 传输给 下一个 Runnable实例的输入

其他写法:

相关推荐
传奇开心果编程33 分钟前
【Rust入门知识点学与练】第21课:Trait 进阶 Advanced Traits
开发语言·学习·rust
新时代牛马42 分钟前
字符设备驱动完整篇:从 cdev_add、file_operations 到chrdev_open 与排障
开发语言·python
swordbob1 小时前
ReentrantLock 与 AQS 完整学习手册
java·开发语言
m0_587383002 小时前
全民健身解决方案软件开发实战:从架构设计到落地指南
java·spring boot·spring·架构·需求分析
白山编程大哥2 小时前
Java OutputStreamWriter 详解:从字符到字节的桥梁
java·开发语言·python
ToTensor2 小时前
DataGen——合成数据生成器:把一句任务描述变成可校验的训练数据
langchain·agent
shmily麻瓜小菜鸡2 小时前
JavaScript / TypeScript 易踩坑知识点 —— 异步编程类
开发语言·javascript·typescript
一技安身3 小时前
【信创】Docker‑Compose V2 两种离线部署(独立模式、插件模式)简易教程
java·docker·eureka
七夜zippoe3 小时前
为什么 2026 年每个 Java 团队都该懂 AI Agent
java·开发语言·人工智能
znnnk3 小时前
【Python】GUI 开发从入门到实战(三):PyQt/PySide 进阶之路
开发语言·python·pyqt