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

如何手动为jupyter notebook及py文件添加papermill参数并在转换后留存

问题解答

两个需求都可以实现,无需通过Jupyter/JupyterLab界面操作,也可以保证.py转.ipynb后参数配置正常生效。

具体实现方法

你使用jupytext的话,只需要在.py文件中按照jupytext的单元格标记规则,给参数单元格加上parameters标签即可,以常用的percent格式py文件为例:

# %% 普通代码单元格
import pandas as pd
import os

# %% tags=["parameters"]
# 此处定义参数默认值,papermill运行时会覆盖此处的赋值
input_path = "./default_input"
run_date = "2024-01-01"
batch_size = 100

# %% 后续业务逻辑单元格
df = pd.read_csv(f"{input_path}/data_{run_date}.csv")

执行转换命令即可生成带参数标签的ipynb文件:
jupytext --to ipynb <notebook>.py

转换生成的.ipynb文件中,上述标记的参数单元格会自动携带parameters标签,papermill可以直接识别,不会抛出警告,完全适配你预期的自动化工作流。

补充说明

你提到的无参数标签也能注入参数的情况,确实是papermill 2.0+版本的特性:即使没有找到带parameters标签的单元格,papermill也会自动在notebook的最开头插入一个参数单元格写入传入的参数值,仅会抛出对应警告不影响运行。不过仍然建议手动添加参数标签:

  • 可以自定义参数默认值,不传参时也能正常运行notebook
  • 参数注入位置可控,不会打乱原有代码的执行顺序
  • 避免无关警告输出

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 03:54:00