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": "推荐具体的学习路径"
})

演示:

相关推荐
leeyi1 分钟前
Agent Transfer:让 AI 把任务交给更合适的 AI
aigc·agent·ai编程
小星AI10 分钟前
Claude Code 从入门到精通,一步到位
人工智能
后端小肥肠16 分钟前
Codex + Obsidian 做人生副本视频:输入主题文案,直通剪映草稿
人工智能·aigc·agent
百度Geek说1 小时前
全链路研发智能体 ——从"体感能用"到"实际可用"的工程实践
人工智能
甲维斯2 小时前
500块的豆包,能帮我搞定这个么?!
人工智能
火山引擎开发者社区2 小时前
当 Agent 自己做 SRE:详解 ArkClaw 自动化可观测体系的工程实践
人工智能
threerocks4 小时前
什么?我连 A2A、MCP 都没学会,现在又来了 AG-UI、A2UI.
前端·aigc·ai编程
Coffeeee4 小时前
两个例子,帮你快速理解什么是Token
人工智能·程序员·ai编程
饼干哥哥4 小时前
用AI全自动剪辑,日更 100条爆款视频——HyperFrames、Remotion、Git使用入门
人工智能·机器学习·ai编程
用户83244598541325 小时前
深入拆解 AlexNet:跟着一张猫咪照片,看数据如何流动
人工智能