当前位置: 首页 > article >正文

ChatPromptTemplate的使用

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

1.角色消息模板化

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

from langchain_core.prompts import ChatPromptTemplate

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

2.动态参数注入

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

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

3.关联模型调用链路

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

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

演示:


http://www.kler.cn/a/588830.html

相关文章:

  • 将分支`XXX`合并到远程分支`master
  • MySQL 数据库备份
  • 使用 Docker 部署前端项目全攻略
  • 【操作系统安全】任务2:用户与用户组
  • 基于小参数量大语言模型(Small Language Models) ---- 在制造业落地降本增效应用:可行性研究初探
  • LinuX---Shell---变量
  • 2025-03-13 学习记录--C/C++-PTA 练习2-14 求奇数分之一序列前N项和
  • STM32上实现简化版的AUTOSAR DEM模块
  • C++:类和对象(从底层编译开始)详解[前篇]
  • CF 230B. T-primes
  • zend server试用分析
  • C++程序设计语言笔记——抽象机制:运算符重载
  • 电机控制常见面试问题(十)
  • SpringBoot入门-(1) Maven【概念+流程】
  • 【设计模式】通过访问者模式实现分离算法与对象结构
  • 串口全解析
  • Python库安装报错解决思路以及机器学习环境配置详细方案
  • Nacos命名空间Namespace:微服务多环境管理的“秘密武器”如何用?
  • Flutter中的const和final的区别
  • k8s集群----helm部署wordpress