在默认模型gpt-2-simple python上从输入生成文本
我一辈子都不知道如何从默认模型中生成文本,并在前缀中输入: 我已经下载了模型,下面是我的代码:在默认模型gpt-2-simple python上从输入生成文本,python,tensorflow,gpt-2,Python,Tensorflow,Gpt 2,我一辈子都不知道如何从默认模型中生成文本,并在前缀中输入: 我已经下载了模型,下面是我的代码: import gpt_2_simple as gpt2 model_name = "124M" sess = gpt2.start_tf_sess() gpt2.generate(sess, model_name=model_name) gpt2.generate(sess, model_name=model_name, prefix="<|My name is |>") 知道我
import gpt_2_simple as gpt2
model_name = "124M"
sess = gpt2.start_tf_sess()
gpt2.generate(sess, model_name=model_name)
gpt2.generate(sess, model_name=model_name, prefix="<|My name is |>")
知道我做错了什么吗?您试图在不首先加载参数的情况下生成 下载的模型似乎用于培训(“微调”),但它们不是为生成而加载的 对于生成,库尝试运行以前保存的Tensorflow模型(TF术语中的“检查点”) 微调 您可以通过使用自己的数据集(或从中工作)为几个时代训练模型来生成检查点 否则,
gpt-2-simple
会让它变得简单。获取包含一些文本的文本文件并对其进行训练:
gpt_2_simple --sample_every 50 finetune yourtext.txt
让它运行几个时代,看看结果样本。每100个纪元将保存一个检查点。一旦你高兴了,按CTRL+C键,它将保存最后一个检查点
然后,您可以使用以下命令生成文本:
gpt_2_simple generate --prefix "Once upon a time" --nsamples 5
gpt\u 2\u simple
工具接受一个-h
参数以获取帮助。看看其他选项。从代码使用库类似于此工具工作流
在不进行微调的情况下生成
作者在本文中解释了完全跳过微调的过程。只需将模型复制到检查点目录(您需要先下载模型,查看该链接):
gpt_2_simple generate --prefix "Once upon a time" --nsamples 5
mkdir -p checkpoint/
cp -r models/345M checkpoint/run1