📖 什么是 Chain?

Chain 是预定义的操作序列,将多个步骤串联成固定流程。适合确定性的工作流。

⚡ LCEL 表达式语言

LangChain Expression Language 是构建链的现代方式:

from langchain_openai import ChatOpenAI
from langchain.prompts import ChatPromptTemplate

llm = ChatOpenAI(model="gpt-4")
prompt = ChatPromptTemplate.from_messages([
("system", "你是{role}专家"),
("human", "{input}")
])

# 使用 | 运算符连接
chain = prompt | llm

result = chain.invoke({"role": "Python", "input": "什么是装饰器?"})

🔗 顺序链

from langchain.schema.output_parser import StrOutputParser

# 多步骤链
chain = prompt | llm | StrOutputParser()

# 添加处理步骤
chain = (
{"topic": RunnablePassthrough()} |
prompt |
llm |
StrOutputParser()
)

📊 Runnable 接口

方法说明
invoke()单个输入调用
batch()批量调用
stream()流式输出
ainvoke()异步调用

🔀 分支链

from langchain.schema.runnable import RunnableBranch

branch = RunnableBranch(
(lambda x: x["type"] == "code", code_chain),
(lambda x: x["type"] == "text", text_chain),
default_chain
)
上一页:安装部署下一页:Agents 代理