自然语言处理从入门到应用——LangChain:提示(Prompts)-[基础知识]

分类目录:《自然语言处理从入门到应用》总目录


模型编程的新方法是使用提示(Prompts)。提示指的是模型的输入。这个输入通常由多个组件构成。PromptTemplate负责构建这个输入,LangChain提供了多个类和函数,使得构建和处理提示变得简单。《自然语言处理从入门到应用------LangChain:提示(Prompts)》系列文章包含一下几个部分:

  • LLM Prompt模板 :揭示如何使用PromptTemplate来提示语言模型
  • Chat Prompt模板 :揭示如何使用PromptTemplate来提示对话模型
  • 示例选择器 :在提示中包含示例往往很有用,这些示例可以根据需要进行动态选择
  • 输出解析器 :析语言模型和对话模型的输出文本。在很多时候,我们可能希望获得更结构化的信息,这就是输出解析器发挥作用的地方。
  • 输出解析器:指示模型应如何格式化输出, 将输出解析为所需的格式,也包括必要时进行重试。

提示是传递给语言模型的值,这个值可以是字符串(用于语言模型)或消息列表(用于对话模型)。这些提示的数据类型相当简单,但它们的构造却并非如此。LangChain的价值在于:

  • 用于字符串提示和消息提示的标准接口
  • 用于字符串提示模板和消息提示模板的标准接口
  • 示例选择器:用于将示例插入提示中,以便语言模型进行遵循
  • 输出解析器:用于将指令插入到提示中,作为语言模型输出信息的格式,以及将字符串输出解析为所需格式的方法。

自然语言处理从入门到应用------LangChain:提示(Prompts)》系列文章为特定类型的字符串提示、特定类型的聊天提示、示例选择器和输出解析器提供了深入的文档。在本文中,我们先介绍了一个用于简单提示的标准接口的快速入门指南。

PromptTemplates

PromptTemplates负责构建提示值。这些PromptTemplates可以执行格式化、示例选择等操作。从高层次上讲,这些基本上是公开了format_prompt方法以构建提示的对象。在内部,可以发生任何事情。

dart 复制代码
from langchain.prompts import PromptTemplate, ChatPromptTemplate
string_prompt = PromptTemplate.from_template("tell me a joke about {subject}")
chat_prompt = ChatPromptTemplate.from_template("tell me a joke about {subject}")
string_prompt_value = string_prompt.format_prompt(subject="soccer")
chat_prompt_value = chat_prompt.format_prompt(subject="soccer")
to_string

当传递给LLM(预期为原始文本)时调用的方法:

  • string_prompt_value.to_string()
  • chat_prompt_value.to_string()
to_messages

当传递给ChatModel(预期为消息列表)时调用的方法。

  • string_prompt_value.to_messages()
  • chat_prompt_value.to_messages()

示例:

dart 复制代码
[HumanMessage(content='tell me a joke about soccer', additional_kwargs={}, example=False)]

参考文献:

1\] LangChain 🦜️🔗 中文网,跟着LangChain一起学LLM/GPT开发:https://www.langchain.com.cn/ \[2\] LangChain中文网 - LangChain 是一个用于开发由语言模型驱动的应用程序的框架:http://www.cnlangchain.com/

相关推荐
齐齐大魔王7 小时前
COCO 数据集
人工智能·机器学习
AI营销实验室8 小时前
原圈科技AI CRM系统赋能销售新未来,行业应用与创新点评
人工智能·科技
爱笑的眼睛118 小时前
超越MSE与交叉熵:深度解析损失函数的动态本质与高阶设计
java·人工智能·python·ai
tap.AI9 小时前
RAG系列(一) 架构基础与原理
人工智能·架构
北邮刘老师9 小时前
【智能体互联协议解析】北邮ACPs协议和代码与智能体互联AIP标准的关系
人工智能·大模型·智能体·智能体互联网
亚马逊云开发者9 小时前
使用Amazon Q Developer CLI快速构建市场分析智能体
人工智能
Coding茶水间9 小时前
基于深度学习的非机动车头盔检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
图像处理·人工智能·深度学习·yolo·目标检测·机器学习·计算机视觉
Rose sait9 小时前
【环境配置】Linux配置虚拟环境pytorch
linux·人工智能·python
福客AI智能客服9 小时前
从被动响应到主动赋能:家具行业客服机器人的革新路径
大数据·人工智能
司南OpenCompass10 小时前
衡量AI真实科研能力!司南科学智能评测上线
人工智能·多模态模型·大模型评测·司南评测