You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用miniconda运行GPT-NEO相关Python脚本无法创建txt文件问题求助

问题排查&解决方案

1. 优先修复异常捕获逻辑

你当前代码的except Exception: pass会吞掉所有运行时错误,导致你完全看不到写入失败的具体原因,这是你找不到问题的核心原因。先把异常捕获部分修改为打印错误信息:

except Exception as e:
    print("运行报错:", e)

运行后就能直接看到是权限问题、路径问题还是编码问题。

2. 解决相对路径的工作目录匹配问题

你通过绝对路径调用Python脚本时,程序的**当前工作目录(CWD)**是你启动CMD时进入的目录,不是脚本本身所在的目录,你写的相对路径gpttext.txt会被写入到CWD下,而非gpt_neo_app文件夹,大概率文件已经生成在其他目录你没有找到。
你可以通过以下两种方式解决:

  • 运行脚本前先在CMD中进入脚本所在目录,再执行脚本:
cd C:\Users\Graham\Desktop\Files\programming\Languages\Python\gpt_neo_app
C:\tools\miniconda3\python ai.py
  • 代码中固定写入路径为脚本所在目录,避免路径混乱:
import os
# 获取脚本所在目录的绝对路径
base_dir = os.path.dirname(os.path.abspath(__file__))
file_path = os.path.join(base_dir, "gpttext.txt")
with open(file_path, "w", encoding="utf-8") as f:
    f.write(outtext)

3. 修复Windows默认编码问题

Windows系统默认使用GBK编码打开文件,GPT生成的文本可能包含GBK不支持的特殊字符,写入时会触发编码报错,在open方法中指定utf-8编码即可解决,参考上一点的代码示例。

4. 排查权限问题

如果你写入的目标路径属于系统受保护目录(比如C盘根目录、Program Files文件夹),普通权限启动的CMD没有写入权限,你可以右键点击命令提示符选择「以管理员身份运行」,再执行脚本测试。


修改后的完整参考代码

from os import system
import os
from transformers import pipeline
import json

try:
    # 打印当前工作目录,方便排查路径问题
    print("当前工作目录:", os.getcwd())
    # generator = pipeline('text-generation', model='EleutherAI/gpt-neo-2.7B', device=-1)
    generator = pipeline('text-generation', model='EleutherAI/gpt-neo-1.3B', device=-1)
    outjson = generator("unlock your hip flexors", do_sample=True, max_length=500, temperature=1.9)
    outtext = json.loads(json.dumps(outjson[0]))["generated_text"]
    # 构造脚本同目录的文件路径
    base_dir = os.path.dirname(os.path.abspath(__file__))
    file_path = os.path.join(base_dir, "gpttext.txt")
    with open(file_path, "w", encoding="utf-8") as f:
        f.write(outtext)
    print("写入成功,文件路径:", file_path)
    print(outtext)

except Exception as e:
    print("运行报错:", e)

内容的提问来源于stack exchange,提问作者graham23s

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 19:24:02