自然语言处理从入门到应用——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/

相关推荐
吴佳浩18 小时前
Langchain 浅出
python·langchain·llm
lumi.18 小时前
Vue + Element Plus 实现AI文档解析与问答功能(含详细注释+核心逻辑解析)
前端·javascript·vue.js·人工智能
m0_6501082419 小时前
InstructBLIP:面向通用视觉语言模型的指令微调技术解析
论文阅读·人工智能·q-former·指令微调的视觉语言大模型·零样本跨任务泛化·通用视觉语言模型
金融小师妹20 小时前
基于NLP语义解析的联储政策信号:强化学习框架下的12月降息概率回升动态建模
大数据·人工智能·深度学习·1024程序员节
AKAMAI21 小时前
提升 EdgeWorker 可观测性:使用 DataStream 设置日志功能
人工智能·云计算
银空飞羽1 天前
让Trae CN SOLO自主发挥,看看能做出一个什么样的项目
前端·人工智能·trae
cg50171 天前
基于 Bert 基本模型进行 Fine-tuned
人工智能·深度学习·bert
Dev7z1 天前
基于Matlab图像处理的EAN条码自动识别系统设计与实现
图像处理·人工智能
Curvatureflight1 天前
GPT-4o Realtime 之后:全双工语音大模型如何改变下一代人机交互?
人工智能·语言模型·架构·人机交互
6***x5451 天前
C在机器学习中的ML.NET应用
人工智能·机器学习