mcpField
I
implement-paper

implement-paper

github.com/marimo-team数据与数据库1772.7k 次安装10 周前更新
代码仓库

关于 implement-paper

implement-paper 是将研究论文转为交互式 marimo 笔记本的技能。它先根据读者目标确定范围,再指导构建精简实现,并加入说明、可视化和适当交互。

主要功能

  1. 01明确论文范围与学习目标
  2. 02获取结构化论文内容
  3. 03规划聚焦的笔记本大纲
  4. 04构建带说明和交互的笔记本
  5. 05用图表和公式呈现方法

适用场景

  1. 01探索论文的核心算法
  2. 02复现选定的实验结果
  3. 03以交互方式讲解论文方法

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/marimo-team/skills --skill implement-paper

安装后在 Claude Code 中输入/implement-paper确认已加载。

附带文件references/anywidget.mdreferences/fetching-papers.md

详细介绍

实现论文

将一篇研究论文转化为交互式 marimo 笔记本。有关 marimo 笔记本的通用约定(单元格结构、PEP 723 元数据、输出渲染、marimo check、变量命名等),请参阅 marimo-notebook 技能。

第 1 步:了解用户的需求

在获取或阅读任何内容之前,先与用户简短交流,明确工作范围。询问用户:

  • 论文中哪部分最令你感兴趣? 一篇论文可能有多项贡献,用户可能只关心其中一两项。不要实现整篇论文。
  • 目标是什么? 他们是想理解方法、复现结果、将方法应用到自己的数据,还是教给别人?这会影响笔记本的语气和深度。
  • 想使用特定数据集吗? 如果相关,请询问。否则,建议模拟数据。
  • 是否需要使用 PyTorch? 有些论文需要,很多则不需要。如果不确定,请询问——它是一个重量级依赖。
  • 你的背景是什么? 论文旨在填补知识空白——了解用户已经掌握的内容,才能让笔记本贴合他们的水平。跳过他们熟悉的基础知识,解释他们尚不了解的前置知识。

只有在充分了解要构建的内容后,才能继续。

第 2 步:获取论文

如果用户提供了 Arxiv/AlphaXiv 链接,你可以高效地阅读论文。

有关如何通过 alphaxiv.org 获取论文内容,请参阅 references/fetching-papers.md。这样可以避免阅读原始 PDF,并获取结构化 Markdown。

第 3 步:规划笔记本

阅读论文后,在编写代码前先向用户概述笔记本结构。

尽可能精简笔记本。 有时,只需一个交互式控件就能很好地说明核心思想——如果需要自定义控件,可以考虑使用 anywidget 技能。其他时候则需要完整的训练循环——如果是这样,可以考虑使用 marimo-batch 技能处理繁重计算。目标是用尽可能少的代码传达核心思想。

典型结构:

章节目的常见元素
标题与背景让读者了解主题使用 mo.md() 展示论文标题、作者和链接
背景知识介绍前置知识Markdown + 公式
方法分步讲解核心算法代码与 Markdown 交替呈现
实验复现关键结果交互式控件 + 图表
结论总结要点mo.md()

并非每本笔记本都需要包含所有章节。先与用户分享大纲,并在编写代码前根据反馈调整。

第 4 步:构建笔记本

遵循 marimo-notebook 技能的约定来创建 marimo 笔记本。

关键指南:

  • 切勿假定数据集。 使用用户在第 1 步指定的数据集。如果用户没有指定,就模拟数据。
  • 确保内容自包含。 读者无需阅读完整论文,也能理解笔记本。
  • 使用 KaTeX 展示公式。 使用 mo.md(r"""$...$""") 渲染关键公式,让笔记本沿用论文中的符号。确保符号与论文保持一致。
  • 在有助于理解时加入交互功能。 超参数滑块、数据集变体下拉菜单或消融实验开关,都能帮助读者建立直觉。
  • 用图表说话,而不只是文字说明。 尽量用图表或表格代替段落说明。
  • 在可行的情况下,使用与论文一致的变量名(例如 alpha、X、W),并添加注释说明它们对应的公式编号。

提示

  • 不要复现整篇论文。 聚焦于用户在第 1 步提出的需求。
  • 通过视觉效果逐步迭代。 逐步构建图表(例如,先展示数据,再展示模型拟合结果,最后展示残差),而不是把所有内容都塞进一张图中。
  • 如果论文使用了大量复杂符号,请添加一个简短的“符号参考”单元格,用 Markdown 表格列出符号及其说明。

如果用户想要自定义 anywidget,请参阅 references/anywidget.md。

评论

支持 Markdown