如何修复预写文件中的“ FileNotFoundError”?

时间:2019-08-06 16:40:29

标签: python python-3.x

我正在尝试使用以下教程设置GPT-2编码:

https://medium.com/@ngwaifoong92/beginners-guide-to-retrain-gpt-2-117m-to-generate-custom-text-content-8bb5363d8b7f

我正在尝试输入

python encode.py giselle.txt giselle.npz

在命令提示符下,但它一直为我提供一个来自编码器.json文件的FileNotFoundError文件,该文件已在尝试从中检索它的路径中。 我该如何解决这个问题?

我尝试编辑encode.py文件以指定编码器.json文件的确切路径,但它仍然提供FileNotFoundError

def get_encoder(model_name):
    with open(os.path.join('models', model_name, 'encoder.json'), 'r') as f:
        encoder = json.load(f)
    with open(os.path.join('models', model_name, 'vocab.bpe'), 'r', encoding="utf-8") as f:
        bpe_data = f.read()

我希望giselle.txt被编码为giselle.npz文件,但是在命令提示符下发送的所有内容都是

 File "C:\projectgiselle\gpt-2-finetuning\src\encoder.py", line 109, in get_encoder
    with open(os.path.join('models', model_name, 'encoder.json'), 'r') as f:
FileNotFoundError: [Errno 2] No such file or directory: 'models\\117M\\encoder.json'

1 个答案:

答案 0 :(得分:0)

我有同样的错误!

本教程适用于Windows用户,您可以将train.py和encode.py复制到/ src /目录中以实现“简单性”,从而不必修改PYTHONPATH。但是移动它们可能会违反代码对某些脚本所在位置的期望。解决方案是简单地相应地移动期望文件(encoder.json)。

我能够通过将整个/ model /文件夹复制并粘贴到/ src /中,从而将/ src / model /复制并成功地继续本教程。然后,您可以按照/ src /中的说明运行encode.py。