[ PROMPT_NODE_24924 ]
jupyter-notebook
[ SKILL_DOCUMENTATION ]
# Jupyter Notebook 技能
创建干净、可复现的 Jupyter Notebook,主要用于两种模式:
- 实验与探索性分析
- 教程与教学导向的演练
优先使用捆绑的模板和辅助脚本,以保持结构一致并减少 JSON 错误。
## 何时使用
- 从零开始创建新的 `.ipynb` 笔记本。
- 将粗略的笔记或脚本转换为结构化的笔记本。
- 重构现有的笔记本,使其更具可复现性和易读性。
- 构建供他人阅读或重新运行的实验或教程。
## 决策树
- 如果请求是探索性的、分析性的或基于假设的,请选择 `experiment`。
- 如果请求是指导性的、分步骤的或针对特定受众的,请选择 `tutorial`。
- 如果是在编辑现有笔记本,请将其视为重构:保留意图并改进结构。
## 技能路径(设置一次)
bash
export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
export JUPYTER_NOTEBOOK_CLI="$CODEX_HOME/skills/jupyter-notebook/scripts/new_notebook.py"
用户范围的技能安装在 `$CODEX_HOME/skills` 下(默认:`~/.codex/skills`)。
## 工作流
1. 锁定意图。
确定笔记本类型:`experiment` 或 `tutorial`。
明确目标、受众以及“完成”的标准。
2. 从模板构建。
使用辅助脚本以避免手动编写原始笔记本 JSON。
bash
uv run --python 3.12 python "$JUPYTER_NOTEBOOK_CLI"
--kind experiment
--title "Compare prompt variants"
--out output/jupyter-notebook/compare-prompt-variants.ipynb
bash
uv run --python 3.12 python "$JUPYTER_NOTEBOOK_CLI"
--kind tutorial
--title "Intro to embeddings"
--out output/jupyter-notebook/intro-to-embeddings.ipynb
3. 用小而可运行的步骤填充笔记本。
保持每个代码单元专注于一个步骤。
添加简短的 Markdown 单元格,解释目的和预期结果。
当简短的总结有效时,避免产生大量嘈杂的输出。
4. 应用正确的模式。
对于实验,遵循 `references/experiment-patterns.md`。
对于教程,遵循 `references/tutorial-patterns.md`。
5. 在处理现有笔记本时安全地进行编辑。
保留笔记本结构;除非能改善从头到尾的叙事逻辑,否则不要重新排序单元格。
优先进行针对性编辑,而不是完全重写。
如果必须编辑原始 JSON,请先查看 `references/notebook-structure.md`。
6. 验证结果。
在环境允许的情况下,从头到尾运行笔记本。
如果无法执行,请明确说明。