总结:本章的知识地图
把整章内容压缩成一张表:
模块 解决的问题 核心工具 入参类型 输入以什么形态交给模型 str / 消息列表 / 元组 / 字典 消息类型 每条消息承担什么角色 SystemMessage / HumanMessage / AIMessage / ToolMessage 调用方式 输入如何发给模型 invoke / stream / batch + 异步版本 文本模板 字符串如何复用 PromptTemplate 对话模板 多角色消息如何复用 ChatPromptTemplate 消息占位符 历史对话如何动态插入 MessagesPlaceholder 外部文件 模板如何协作与版本管理 load_prompt + JSON / YAML
外部文件
from langchain_core.prompts import load_prompt
template= load_prompt("prompt.json",encoding="utf-8")
print(template.format(name="zhangsan",what="funny"))
prompt是指定的提示词文件,通过json文件格式加载模板,编码格式为utf-8
from langchain_core.prompts import PromptTemplete
template = PromptTemplete.from_templete{
"test {role}, test{question}"
}
prompt=templete.format(role="python",question="algorithm")
print(prompt)
print(type(prompt))