gpt4 book ai didi

jupyter-notebook - 防止 Jupyter 笔记本中的单元格保存到磁盘

转载 作者:行者123 更新时间:2023-12-04 07:21:33 25 4
gpt4 key购买 nike

我有一个 Jupyter Python 笔记本,其中一个特定的单元格具有非常大的视觉输出(包括嵌入数据在内的多兆字节的 Javascript)。有没有办法标记单元格,以便输出不会保存到 .ipynb文件?

最佳答案

我不知道有什么方法可以在不安装 Jupyter 扩展的情况下做到这一点。我认为这可以在前端完成,例如,使用 JS 代码的模板创建小部件扩展,然后填充模板作为输出,因为小部件状态是有选择地保存的。

如果您想要一个工作量最少的合理解决方案,并且您有权修改 Jupyter 服务器环境,我建议您使用 file save hookjupyter_notebook_config.py .文档中已经有一个用于剥离输出的示例。我已经修改了它(但没有对其进行测试!)删除标记为 no-save 的单元格的 JS 输出.

def scrub_output_pre_save(model, **kwargs):
"""scrub output before saving notebooks"""
# only run on notebooks
if model['type'] != 'notebook':
return
# only run on nbformat v4
if model['content']['nbformat'] != 4:
return

for cell in model['content']['cells']:
if cell['cell_type'] != 'code':
continue
metadata = cell['metadata']
if 'tags' in metadata and 'no-save' in metadata['tags']:
cell['outputs'] = []
cell['execution_count'] = None


c.FileContentsManager.pre_save_hook = scrub_output_pre_save

如果您需要它可安装/可重用,则可以将上述代码打包并分发为 Jupyter server extension .

关于jupyter-notebook - 防止 Jupyter 笔记本中的单元格保存到磁盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50843145/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com