itemgetter:返回一个函数,函数取输入dict的某个指定key
Runnable 的基本方法有 invoke、 batch、 await、 ainvoke、 abatch 同步转异步
Runnable 还具有的方法:bind、 with_config。 input_schema 属性、output_schema 属性
with_retry方法:失败重试
也可以启动调试机制
config_schema() 方法:可接受的配置类型,指定为一个pydantic模型。
RunnableBinding类:用额外的功能封装一个Runnable。可运行的装饰器。包含方法:bind(绑定kwargs)、with_config(绑定配置)等等
RunnableLambda 将python函数转为Runnable
RunnableParallel 并行计算,并赋值一个key
RunnableAssign 一般与RunnableParallel结合,将输入数据复制保留,将产生的数据用 RunnableParallel的key记录下来
assign: 将上面的进行合并处理 xx.assign = xx | RunnableAssign(RunnableParallel(kwargs))
ICEL:声明式的方法。 主要的组合原语是 RunnableSequence 【顺序调用】和 RunnableParallel 【并发调用】。
ChatPromptTemplate 聊天模版、示例:
from langchain_core.prompts import ChatPromptTemplate
prompt = ChatPromptTemplate.from_messages([
("system", "You are a world class technical documentation writer."),
("user", "{input}")
])
StrOutputParser类 将 Message定向解析
模型:ChatModels、 LLMs
ChatModels: 输入是聊天消息列表、输出是AI消息
LLMs:纯文本补全模型
提示模板:ChatPromptTemplates
BaseExampleSelector 示例选择器
输出解析器 CommaSeparatedListOutputParser 解析逗号分隔值
partial 部分参数预先被填充
定义工具schemas: Pydantic类