该章节我们来学习一下 “Text Completion” ,也就是 “文本完成” 。“Text Completion” 并不是一种模型,而是指模型能够根据上下文自动完成缺失的文本部分,生成完整的文本。
⭐ Text Completion 的介绍
Text Completion 也称为文本自动补全,Text Completion并不是一个独立的模型,而是自然语言处理模型中的一个功能。在自然语言处理模型中,Text Completion可以用于自动为用户完成一段文本的缺失部分。
完成端点可用于各种任务,它为我们的任何模型提供了一个简单但功能强大的界面。 当我们输入一些文本作为提示, 模型将生成一个文本补全,尝试匹配我们提供的任何上下文或模式。
比如输入"我今天去逛了",模型可以根据语言模型预测出 "商场"、"买了一件漂亮的衣服" 这一可能的文本。
这样,模型就可以为用户自动完成文本的缺失部分。
在实际应用中,Text Completion可以使用多种自然语言处理模型来实现,例如GPT(Generative Pre-trained Transformer)模型、LSTM(Long Short-Term Memory)模型、BERT(Bidirectional Encoder Representations from Transformers)模型等。这些模型可以根据上下文和已知信息推断出缺失文本的最可能内容,并生成完整的连续文本。
🌟 探索文本完成
想要探索文本完成的补全的最佳方式是通官方提供的 Playground ,Playground的在线访问地址:
https://platform.openai.com/playground
该页面只是一 个文本输入框, 我们可以在其中提交我们的 “提示-prompt” 以便后面生成 “完成-completion”。
当我们输入并提交如下文本: 我现在想开一家 "奶茶店",请为我准备1条用作宣传的广告语言。。
他大概率会给我们生成类似如下: "来试试奶茶店的新口味,满足你的口腹之欲!"
也许我们看到的实际完成情况可能有所不同,这是因为默认情况下 API 是不确定的
。这也就意味着即使我们发出的提示保持不变,但是每次调用它时可能会得到略微不同的完成。这是由于 API 默认的温度造成的,将温度设置为 0 时,“完成-completion” 将输出大部分具有确定性的结果,但可能会保留少量可变性。
下面我们来看一下演示的案例:
上图是一个简单的文本输入、文本输出界面,同时可供选择的多个模型意味着我们可以通过提供说明或希望它做什么的几个示例来展示任务的复杂性和提示的质量。一个写得很好的提示提供了足够的信息让模型知道你想要什么以及它应该如何响应。
比如上图中,我先是让 ChatGPT 设定了自己的身份 - “中文老师”,然后又让其返回了开奶茶店的几个广告语,可以看到 "温度"
越低,得到的 “完成-completion” 越是机械化。
🌟设计提示(应该如何提问)
但我们向 ChatGPT 提出一个问题,这个问题应该如何问?需要增加什么样的形容词、通过层层递进的形式,从而获得我们想要的答案?