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

【自然语言处理与大模型】LangChain大模型应用框架入门②

        本文介绍LangChain的另一个重要组件——提示词模板(Prompt Template)组件,它主要用于将用户输入和参数转换为语言模型可理解的指令。有助于引导模型生成符合预期的响应,帮助其更好地理解上下文,从而输出相关且连贯的语言结果。提示词模板的输入是一个字典,其中每个键对应模板中需要填充的变量名。输出是一个 PromptValue 对象。该对象可以直接传递给语言模型(LLM)或聊天模型(ChatModel),也可以转换为字符串或消息列表。引入 PromptValue 的目的是为了在字符串格式和消息格式之间灵活切换,提升使用的便捷性。

        简单介绍过后我们就可以开始学习两个重要的prompt类了,LangChain Prompt一共有四个类,但我觉得先学会两个重要的再说。

提示词模版功能描述
PromptTemplate定义基础提示词模板,支持变量替换
FewShotPromptTemplate支持注入少量示例(few-shot learning)以引导模型输出
PipelinePromptTemplate支持将多个 Prompt 模板组合串联使用
ChatPromptTemplate针对 ChatModel 设计的消息格式封装,适用于对话模型

(1)基础提示词模板

        基础提示词模板定义一个带变量的模板,你要替换的变量用 {{ }} 包裹住就行。

from langchain.prompts import PromptTemplatetemplate = "请回答以下问题:{question}"
prompt = PromptTemplate.from_template(template)# 使用
print(prompt.format(question="什么是人工智能?"))
# 输出是“请回答以下问题:什么是人工智能?”

(2)对话提示词模板

        对话提示词模板用于构造符合聊天模型格式的消息结构,之前的版本是用SystemMessage, HumanMessage类来构建的,现在可以用更简单的方式,使用元组并且第一个元素放上“对话角色”就可以了。

from langchain.prompts import ChatPromptTemplateprompt = ChatPromptTemplate.from_messages([("system", "你是一个知识丰富的助手。"),("human", "请介绍:{topic}")
])# 使用
messages = prompt.format(topic="深度学习")
print(messages)

相关文章:

  • 8分钟快速掌握Markdiwn
  • 阿里Qwen3 8款模型全面开源,免费商用,成本仅为 DeepSeek-R1 的三分之一
  • AIGC(生成式AI)技术全景图:从文本到图像的革命
  • Unity PBR基础知识
  • VS Code 的新AI Agent 模式绝了
  • OpenGL学习笔记(PBR)
  • 在Spark中通过jps命令看到的进程名,是哪个命令产生有什么作用
  • 【图片识别成表格】批量图片识别成excel表格,批量识别图片区域文字保存到excel表格,基于WPF和腾讯OCR的识别方案
  • 使用Forge API制作《我的世界》Java版MOD的一般步骤
  • 51LA使用方法与悟空统计,网站数据分析的双重选择
  • 证券项目场景题深度解析
  • 物联网平台厂商有哪些?2025物联网平台推荐?国内有哪些比较好的物联网平台?
  • Game Booster汉化版:一键优化,畅享游戏
  • STM32 SPI通信协议
  • Android Studio 中实现方法和参数显示一行
  • Element:Cheack多选勾选效果逻辑判断
  • 头歌java课程实验(文件操作)
  • UE5 Set actor Location和 Set World Location 和 Set Relative Location 的区别
  • SQL实战:03之SQL中的递归查询
  • 改进的山地无人机路径规划灰狼优化算法(I-GWO)
  • 淮安四韵·名城新章: 网络名人领略“运河之都”魅力
  • 李祥翔评《孔子哲学思微》︱理性秩序与美学秩序的碰撞
  • 稳就业稳经济五方面若干举措将成熟一项出台一项
  • 视觉周刊|2025上海车展的科技范
  • 屋顶上的阳光与火光:战争如何改变了加沙的能源格局
  • 马上评丨发钱奖励结婚,支持婚育就该系统性发力