auto-paper-demo について
auto-paper-demoは、論文の中心的なアイデアを説明するインタラクティブなmarimoノートブックを作るスキルです。AlphaXivから論文内容を取得し、コードとスクロールを抑えた例を重視します。
主な機能
- 01AlphaXivから論文の概要と本文を取得
- 02実演する中心的なアイデアを選定
- 03簡潔なインタラクティブmarimoノートブックを作成
- 04コードを隠し、出力を上部に配置
活用シーン
- 01arXiv論文の解説ノートブックを作成
- 02焦点を絞った例で手法を比較
- 03チャートや操作部品で論文の概念を提示
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ marimo-team/ skills --skill auto-paper-demoインストール後、Claude Code で/auto-paper-demoを入力して読み込まれたか確認します。
同梱ファイルreferences/ANYWIDGET.md
詳細
論文から伝える魅力的なストーリーを考えてください。ユーザーにフィードバックや入力を求めないでください。自分でじっくり考え、最善のストーリーを見つけてください。
AlphaXiv を使って論文を取得する
alphaxiv.org を使うと、構造化された LLM 向けの論文コンテンツを取得できます。生の PDF を読もうとするよりも、速く、信頼性の高い方法です。
論文 ID を抽出する
ユーザーから提供された情報から論文 ID を読み取ります。
| 入力 | 論文 ID |
|---|---|
https://arxiv.org/abs/2401.12345 | 2401.12345 |
https://arxiv.org/pdf/2401.12345 | 2401.12345 |
https://alphaxiv.org/overview/2401.12345 | 2401.12345 |
2401.12345v2 | 2401.12345v2 |
2401.12345 | 2401.12345 |
AI 生成の概要を取得する(まずはこちらを試してください)
curl -s "https://alphaxiv.org/overview/{PAPER_ID}.md"
論文を構造化して詳細に分析した内容が、プレーンな Markdown で返されます。1 回の呼び出しで済み、JSON の解析も不要です。
論文の全文を取得する(フォールバック)
概要に必要な詳細(特定の数式、表、証明など)が含まれていない場合:
curl -s "https://alphaxiv.org/abs/{PAPER_ID}.md"
論文から抽出した全文が Markdown で返されます。
エラー処理
- 概要の 404:この論文のレポートはまだ生成されていません。代わりに全文を試してください。
- 全文の 404:テキストはまだ処理されていません。最後の手段として、
https://arxiv.org/pdf/{PAPER_ID}の PDF を案内してください。 - 認証は不要です。これらは公開エンドポイントです。
優れた実装とは?
優れた実装ではストーリーを伝えます。これが最も重要です。ストーリーはシンプルであるべきですが、欠けていてはいけません。
論文には通常、複数の概念が含まれています。つまり、伝えるストーリーを選ぶ必要があります!論文を完全に実装したり、大規模なベンチマークを再実行したりすることが目的ではありません。CPU で簡単に実行できるノートブックで、ある教訓やアイデアを取り上げ、非常にわかりやすく説明することが目的です。そうすれば、ユーザーは簡単に実行して何かを学べます。ノートブックを見るとき、掘り下げる価値があると思う主な概念やアイデアは何でしょうか?ストーリーを伝える概念は何でしょうか?
最小限のコード例で最も説明しやすいアイデアを選んでください。最小限のコード例を効果的なものにするには、グラフを 1 つ、あるいは 2 つ用意するとよいでしょう。設定を変えられるドロップダウンを用意してもよいでしょう。スライダーを付けることもできます。ただし、ユーザーが大量にスクロールしなくて済むようにすることが重要です。
2 つのアプローチを比較することが多いでしょう。ただし、例はストーリーに最も大きく影響するため、少し時間をかけて考えてください。ほとんどの場合、おもちゃのような例は避けるべきです。情報が少なく、使い古されています。どちらかのアプローチが真価を発揮する場面を示す、独創的な例を作るほうがよいでしょう。都合のよい例だけを選ぶのは避けたいですが、よく使われている例も避けたいところです。
コードを書く前に、ストーリーと例について実際に考えることがどれほど重要か、いくら強調してもしすぎることはありません。じっくり考えてください。ユーザーが操作できるようにしつつ、スクロールをできるだけ減らす工夫をしてください。優れた例は、単に事実を述べるだけではなく、ストーリーを伝えます。
この選択についてじっくり考えてかまいませんが、最適なアイデアが明確になったら、すぐに marimo ノートブックの作成に進んでください。
この作業には marimo-notebook スキルを使い、カスタムウィジェットを使うことでストーリーがより良くなる場合に限り、anywidget スキルも使用してください。カスタム anywidget が適切だと強く感じる場合は、references/ANYWIDGET.md を参照してください。
準備ができたら、すべてのコードを非表示にし、入出力のあるセルをファイルの先頭に移動してください。
例:
@app.cell
def _(hide_code=True):
import marimo as mo
return mo