使用OpenAI GPT - 2和GPT - 3模型进行文本生成
1. 导入和定义模型
我们将使用 interactive_conditional_samples.py
来激活与模型的交互。需要导入位于 /content/gpt - 2/src
中的三个模块:
import model, sample, encoder
这三个程序的作用分别如下:
- model.py :定义模型的结构,包括超参数、多头注意力的 tf.matmul
操作、激活函数以及其他所有属性。
- sample.py :处理交互并控制生成的样本。它确保生成的标记更有意义。 Softmax
值有时可能比较模糊, sample.py
中有一个名为 temperature
的变量,可使值更清晰,增大高概率值,减小低概率值。它还可以激活Top - k采样和Top - p采样。Top - k采样对预测序列的概率分布进行排序,过滤掉分布尾部的低概率标记;Top - p采样不排序概率分布,选择高概率的单词,直到子集概率之和超过 p
。
- encoder.py :使用定义的模型、 encoder.json
和 vocab.bpe
对样本序