ChatPromptTemplate的使用

ChatPromptTemplate 是 LangChain 中专门用于管理多角色对话结构的提示词模板工具。它的核心价值在于,开发者可以预先定义不同类型的对话角色消息(如系统指令、用户提问、AI历史回复),并通过数据绑定动态生成完整对话上下文。

1.角色消息模板化

为每类对话角色设置预设的消息格式,支持动态变量插值:

python 复制代码
from langchain_core.prompts import ChatPromptTemplate

template = ChatPromptTemplate.from_messages([
    ("system", "你是一个{topic}领域的专家"),  # 系统指令,可替换topic变量
    ("user", "{query}"),                    # 用户提问内容占位符
    ("assistant", "好的,我会仔细思考这个问题"),  # 预置AI回复样本
    ("human", "请继续分析以下内容:{input}")     # 新用户信息输入
])

2.动态参数注入

通过字典传入变量值,自动生成完整对话结构:

python 复制代码
prompt = template.format_messages(
    topic="量子物理",
    query="如何解释量子纠缠现象?",
    input="量子纠缠与时空结构的关系是什么"
)

3.关联模型调用链路

搭配模型组成处理链条,可直接生成响应:

python 复制代码
chain = template | llm  # llm为语言模型实例
response = chain.invoke({
    "topic": "编程教学", 
    "query": "如何学习Python?",
    "input": "推荐具体的学习路径"
})

演示:

相关推荐
艺杯羹3 分钟前
全网首发!Claude Code 国内用法保姆级教程:API配置+VS Code插件,15分钟轻松上手
vscode·ai·ai编程·模型·claude code
Data-Miner7 分钟前
61页可编辑PPT | 人工智能基础知识培训
人工智能
TDengine (老段)13 分钟前
红有软件重构智能油田时序数据底座,支撑生产实时感知与设备预测性维护
大数据·数据库·人工智能·重构·时序数据库·tdengine
极智视界19 分钟前
分类数据集 - 糖尿病视网膜病变检测图像分类数据集下载
人工智能·yolo·数据集·图像分类·算法训练·医学影像分析·糖尿病视网膜病变检测
摘星编程21 分钟前
# 当AI学会了“打电话“:MCP协议如何重塑Agent生态
网络·人工智能
2401_8274999924 分钟前
机器学习06(黑马)-集成学习
人工智能·机器学习·集成学习
小小高不懂写代码29 分钟前
RAG--检索增强生成--原理及实战
前端·人工智能
lwyingdao30 分钟前
Claude桌面版安装教程
人工智能·ai工具
godspeed_lucip41 分钟前
LLM和Agent——专题1:大模型工具调用从入门到实战(2)
人工智能
沪漂阿龙41 分钟前
大模型技术通俗指南:从“大力出奇迹”到AI的“格调养成”
人工智能