Kaggle后台运行Notebook时文件读取/保存异常的技术求助
Kaggle后台运行Notebook无法访问/kaggle/working文件的解决办法
Kaggle客户端会话和后台运行的Notebook运行在完全独立的计算实例中,两者的/kaggle/working目录完全隔离:
- 客户端会话里存储的文件仅属于当前临时实例,后台作业启动时会创建全新环境,无法访问客户端的
/kaggle/working内容 - 后台作业生成的文件只会留在该作业的独立
/kaggle/working目录,不会自动同步到客户端会话
解决办法
1. 让后台作业访问到依赖文件
把需要的CSV、模型文件等上传到Kaggle的输入数据源,而非仅存在客户端的/kaggle/working:
- 在Notebook界面右上角点击「Add data」,选择「Upload」上传目标文件
- 上传完成后,文件会被放置在
/kaggle/input/[你的文件名]路径下 - 修改代码,从
/kaggle/input/路径读取文件,客户端预览和后台运行均能正常访问
2. 保留后台作业生成的文件
后台作业生成的文件需通过Kaggle的输出机制归档:
- 代码中依然将文件写入
/kaggle/working/目录(后台作业的该目录为临时目录,但作业完成后会被系统归档) - 作业运行结束后,进入该作业的详情页面,切换到「Output」标签即可下载所有生成文件
- 若需后续客户端会话直接使用,可将输出文件添加到你的私有数据集
3. 避免文件缺失导致崩溃的检查代码
在代码开头添加文件检查逻辑,提前确认文件是否存在:
import os # 检查输入目录文件 print("输入目录文件列表:") for filename in os.listdir('/kaggle/input/'): print(os.path.join('/kaggle/input/', filename)) # 检查当前工作目录文件 print("\n工作目录文件列表:") for filename in os.listdir('/kaggle/working/'): print(os.path.join('/kaggle/working/', filename))
内容的提问来源于stack exchange,提问作者fede72bari
相关产品推荐
相关产品推荐

