prompts 简介
此部分包含与提示相关的所有内容。提示符是传递到语言模型中的值。此值可以是字符串(一般LLM模型接受字符串参数-如openai的text-davinci-003模型)或消息列表(一般chat模型接受消息列表参数-如openai的gpt-3.5-turbo模型)。
我们可以通过langchain在向模型传递参数时调用提示模板,来对数据进行构造,langchain在这方面提供的优势包括:
- 字符串提示和消息提示的标准接口
- 字符串提示模板和消息提示模板的标准(入门)接口
- 示例选择器(Example Selectors):将示例插入到提示符中以使语言模型遵循的方法
- 输出解析器(OutputParsers):用于将指令插入到提示符中作为语言模型输出信息的格式的方法,以及用于然后将该字符串输出解析成格式的方法。
我们有关于特定类型的字符串提示、特定类型的聊天提示、示例选择器和输出解析器的深入文档。
在这里,我们将介绍一个标准界面的快速入门,以便通过简单的提示开始使用。
PromptTemplates
PromptTemplates负责构建提示值。这些PromptTemplates可以执行格式化、示例选择等操作。PromptTemplates是一种对象,它提供了一个format_prompt
方法,用于构建提示。在底层实现中,PromptTemplates可以实现各种功能,其灵活性非常高。这意味着我们可以根据需要进行任何操作,从而实现各种不同的提示方式。
from langchain.prompts import PromptTemplate, ChatPromptTemplate
string_prompt = PromptTemplate.from_template("告诉我一个关于{subject}的笑话")
chat_prompt = ChatPromptTemplate.