【GPT入门】第22课 langchain LCEL介绍

【GPT入门】第22课 langchain LCEL介绍

  • [1. LCEL介绍与特点](#1. LCEL介绍与特点)
  • [2. 原生API与LCEL的对比](#2. 原生API与LCEL的对比)
  • [2. 简单demo](#2. 简单demo)

1. LCEL介绍与特点

LCEL 即 LangChain Expression Language,是 LangChain 推出的一种声明式语言,用于简化和优化在 LangChain 框架内构建复杂链和应用的过程 。以下详细介绍其特点和作用:
特点

声明式语法:传统的链式操作构建方式可能需要编写较多的代码和复杂的逻辑,而 LCEL 使用简洁的声明式语法,让开发者能够以一种直观的方式描述数据在各个组件之间的流动。例如,使用 | 操作符来连接不同的组件,就像搭积木一样轻松组合各个模块,大大提高了代码的可读性和可维护性。

易于组合:支持将不同的 LangChain 组件(如提示模板、语言模型、文档加载器、检索器等)灵活组合在一起,形成复杂的处理流程。开发者可以根据具体需求,快速调整和扩展链的结构,而无需对底层代码进行大规模修改。

流式处理:能够对数据进行流式处理,这意味着在处理大型数据集或长时间运行的任务时,可以逐步获取和处理结果,而不是等待整个任务完成后再获取输出。这种流式处理的方式可以提高系统的响应速度和用户体验。

作用
简化开发流程

开发者可以使用 LCEL 快速搭建起复杂的自然语言处理应用,而无需编写大量的样板代码。例如,在构建一个知识问答系统时,可以通过简单的链式操作将文档检索器、提示模板和语言模型连接起来,实现从文档中检索相关信息并生成答案的功能。

2. 原生API与LCEL的对比

2. 简单demo

c 复制代码
from langchain.prompts import PromptTemplate
from langchain_openai import ChatOpenAI
from langchain.schema.runnable import RunnablePassthrough

# 定义提示模板
prompt = PromptTemplate.from_template("关于 {topic} 的信息:")

# 初始化语言模型
llm = ChatOpenAI()

# 使用 LCEL 构建链式操作
chain = (
    {"topic": RunnablePassthrough()} | prompt | llm
)

# 运行链式操作
topic = "历史故事"
result = chain.invoke(topic)
print(result)

支持流式输出: 对于需要实时反馈的应用场景,如聊天机器人,LCEL 的流式处理功能可以让用户更快地看到部分结果,增强交互的实时性和流畅性。

c 复制代码
for chunk in chain.stream("科技前沿"):
    print(chunk, end="", flush=True)
相关推荐
我真会写代码3 小时前
LangChain 从0入门:模型、消息、Prompt、Tools、记忆、Agent与LangSmith实战
langchain·prompt
七牛云行业应用3 小时前
MIT “权重空间编程”:GPT-6 Astra 修改 0.016% 的 Qwen 权重,MATH-500 从 7.9% 升至 48.1%
人工智能·gpt·ai
GISer_Jing10 小时前
SuperAgent
ai·langchain
前端精髓11 小时前
langchain 短期记忆(状态)动态运行时上下文
python·langchain
一缕82年的清风15 小时前
智能体“自适应慢思考”的算力黑洞:当 Claude 5.5 与 GPT-6.1 Sol 陷入推理自旋,为什么高并发架构必须重构“认知预算熔断与快慢推测执行”?
gpt·claude·gemini
在努力的前端小白1 天前
基于FastAPI+LangChain+LangGraph+Agent+多模态的AI Agent 有渔渔具网站
人工智能·langchain·vue·fastapi
用户9421812761341 天前
两条线:LangGraph 如何把状态流和控制流拆开(AI 生成)
langchain
gugugu.1 天前
同一个 ReAct,两种手写方式:LangChain 文本协议 vs LangGraph 状态图
ai·langchain
掘黄金的打工人1 天前
LangChain PromptTemplate 提示词模板
langchain·ai编程
AI 编程助手GPT1 天前
GPT 排的日志时间线差一小时?用 zoneinfo 复现夏令时回拨
人工智能·python·gpt