mcpField
P
paper2code

paper2code

github.com/prathamlearnstocode開発1.5k741 回インストール30 週間前に更新
リポジトリ

paper2code について

paper2codeは、arXiv論文をコードプロジェクトに変換する段階的なスキルです。論文の再現に取り組む研究者や開発者向けに、解析、貢献の特定、曖昧さの監査、コード生成、解説ノートブック作成を行い、複数のモードとフレームワークを選べます。

主な機能

  1. 01arXiv論文の取得と解析
  2. 02貢献の特定と曖昧さの監査
  3. 03論文に基づくコードプロジェクトの生成
  4. 04実行可能なチェック付き解説ノートブックの作成
  5. 05minimal、full、educationalモード

活用シーン

  1. 01arXiv論文をもとに実装を作成
  2. 02論文で未指定の実装詳細を整理
  3. 03生成コードに対応する解説ノートブックを用意

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/prathamlearnstocode/paper2code --skill paper2code

インストール後、Claude Code で/paper2codeを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

guardrails/
badly_written_papers.md
hallucination_prevention.md
scope_enforcement.md
knowledge/
loss_functions.md
paper_to_code_mistakes.md
training_recipes.md
transformer_components.md
pipeline/
01_paper_acquisition.md
02_contribution_identification.md
03_ambiguity_audit.md
04_code_generation.md
05_walkthrough_notebook.md
scaffolds/
config_template.yaml
data_template.py
evaluate_template.py
loss_template.py
model_template.py
readme_template.md
reproduction_notes_template.md
train_template.py
scripts/
extract_structure.py
fetch_paper.py
worked/attention_is_all_you_need/
README.md
REPRODUCTION_NOTES.md
requirements.txt
review.md
worked/attention_is_all_you_need/configs/
base.yaml
worked/attention_is_all_you_need/notebooks/
walkthrough.ipynb
worked/attention_is_all_you_need/src/
data.py
evaluate.py

詳細

paper2code — オーケストレーション

paper2code スキルを実行しています。このファイルでは、全体の流れを定めています。各ステージでは、pipeline/ 内の詳細な推論プロトコルを実行します。ステージを省略してはいけません。ステージを統合してはいけません。順番どおりに実行してください。

引数の解析

ユーザーの入力から以下を抽出します。

  • ARXIV_ID:arxiv 論文の ID(例:2106.09685)。URL のプレフィックスは削除してください。
  • MODE:minimal(デフォルト)、full、educational のいずれか。
  • FRAMEWORK:pytorch(デフォルト)、jax、numpy のいずれか。

https://arxiv.org/abs/2106.09685 のような完全な URL が指定された場合は、ID 2106.09685 を抽出してください。 2106.09685v2 のようなバージョン付き ID が指定された場合は、バージョンを維持してください。

作業ディレクトリの設定

一時作業ディレクトリ .paper2code_work/{ARXIV_ID}/ を作成します。 中間成果物はここに保存します。最終出力は、現在のディレクトリ内の {paper_slug}/ に保存します。

依存関係のインストール

Bash で実行します。

pip install pymupdf4llm pdfplumber requests pyyaml

パイプラインの実行

ステージ 1 — 論文の取得と解析

pipeline/01_paper_acquisition.md を読み、手順に従ってください。

ヘルパースクリプトを実行して、論文を取得・解析します。

python skills/paper2code/scripts/fetch_paper.py {ARXIV_ID} .paper2code_work/{ARXIV_ID}/

続いて、構造を抽出します。

python skills/paper2code/scripts/extract_structure.py .paper2code_work/{ARXIV_ID}/paper_text.md .paper2code_work/{ARXIV_ID}/

次に進む前に、出力が存在することを確認してください。抽出に失敗した場合は、pipeline/01_paper_acquisition.md のフォールバックプロトコルに従ってください。

このスクリプトは、公式コードリポジトリも(論文本文と arxiv ページから)検索し、見つかったリンクを paper_metadata.json の official_code キーに保存します。これらのリンクを利用する前に確認してください。pipeline/01_paper_acquisition.md のステップ 8 を参照してください。

ステージ 2 — 貢献の特定

pipeline/02_contribution_identification.md を読み、手順に従ってください。

解析済みの論文セクションを読みます。中心的な貢献を 1 つ特定します。論文の種類を分類します。貢献の説明を記述します。.paper2code_work/{ARXIV_ID}/contribution.md に保存します。

ステージ 3 — 曖昧さの監査

pipeline/03_ambiguity_audit.md を読み、手順に従ってください。

このステージを読む前に、guardrails/hallucination_prevention.md も読んでください。

実装に関係するすべての詳細を確認します。それぞれを SPECIFIED、PARTIALLY_SPECIFIED、または UNSPECIFIED に分類します。監査結果を .paper2code_work/{ARXIV_ID}/ambiguity_audit.md に保存します。

ステージ 4 — コード生成

pipeline/04_code_generation.md を読み、手順に従ってください。

コードを記述する前に、以下を読んでください。

  • guardrails/scope_enforcement.md — 実装対象と対象外を判断するため
  • guardrails/badly_written_papers.md — 論文が曖昧または一貫性を欠く場合
  • 論文の分野に関連する knowledge/ 内のナレッジファイル
  • 想定されるファイル構成を確認するための scaffolds/ 内のスキャフォールドテンプレート

論文タイトルから paper_slug を決定します(小文字、アンダースコア区切り、特殊文字なし)。 現在の作業ディレクトリ内の {paper_slug}/ にすべてのファイルを生成します。

ステージ 5 — ウォークスルーノートブック

pipeline/05_walkthrough_notebook.md を読み、手順に従ってください。

論文の各セクションとコードをつなぎ、実行可能な健全性チェックを含むウォークスルーノートブックを生成します。{paper_slug}/notebooks/walkthrough.ipynb に保存します。

クリーンアップ

正常に完了したら、.paper2code_work/ ディレクトリを削除します。

最終出力

概要を出力します。

✓ paper2code complete for: {paper_title}
  Output directory: {paper_slug}/
  Files generated: {list of files}
  Unspecified choices: {count} (see REPRODUCTION_NOTES.md)
  Mode: {MODE} | Framework: {FRAMEWORK}

モード別の動作

  • minimal(デフォルト):中心的な貢献のみ。貢献にトレーニングが関わる場合に限り、トレーニングループを含めます。Dataset の骨組みを超えるデータパイプラインは含めません。
  • full:中心的な貢献に加え、完全なトレーニングループ、データパイプライン、評価パイプラインを含めます。コード量は増えますが、引用に関する厳密さは維持します。
  • educational:minimal と同じですが、ML の概念を説明するインラインコメントを追加し、理論セクションを含むウォークスルーノートブックを拡充し、論文をセクションごとに案内する PAPER_GUIDE.md を作成します。

ガードレール — 常に適用

以下はすべてのステージで適用されます。まだ読んでいない場合は、必ず読んでください。

  • guardrails/hallucination_prevention.md — このスキルで最も重要なファイル
  • guardrails/scope_enforcement.md — 実装する内容と省略する内容
  • guardrails/badly_written_papers.md — 論文が不明瞭な場合の対処方法

ナレッジベース — 必要に応じて参照

これらのコンポーネントを実装する前に、対応するナレッジファイルを読んでください。

  • Transformer レイヤー、アテンション、位置エンコーディング → knowledge/transformer_components.md
  • オプティマイザー、学習率スケジュール、バッチサイズの意味 → knowledge/training_recipes.md
  • クロスエントロピー、コントラスト損失、拡散損失、ELBO → knowledge/loss_functions.md
  • フレームワーク固有の落とし穴、表記の不一致 → knowledge/paper_to_code_mistakes.md

コメント