paper2code
arxivの論文URLまたは論文IDをもとに、引用箇所を明示した最小限のPython実装を生成します。ユーザーが `/paper2code` コマンドをarxiv URLとともに実行したとき、「この論文を実装して」と依頼したとき、またはarxivリンクを貼り付けて実装を求めたときに起動します。論文に記載のない実装の詳細は一切補完せず、曖昧な点は正直に提示します。
description の原文を見る
Converts an arxiv paper into a minimal, citation-anchored Python implementation. Trigger when user runs /paper2code with an arxiv URL or paper ID, says "implement this paper", or pastes an arxiv link asking for implementation. Flags all ambiguities honestly. Never invents implementation details not stated in the paper.
SKILL.md 本文
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 ページ内の公式コード リポジトリを検索し、見つかったリンクを official_code キーの下の paper_metadata.json に保存します。これらのリンクに依存する前に検証してください — pipeline/01_paper_acquisition.md のステップ 8 を参照してください。
ステージ 2 — 貢献度の特定
以下を読んで従います: pipeline/02_contribution_identification.md
パースされた論文セクションを読みます。単一の中心的な貢献を特定します。論文の種類を分類します。貢献度ステートメントを作成します。.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 - オプティマイザー、LR スケジュール、バッチサイズのセマンティクス →
knowledge/training_recipes.md - クロスエントロピー、コントラスティブロス、拡散ロス、ELBO →
knowledge/loss_functions.md - フレームワーク固有の落とし穴、記法の不一致 →
knowledge/paper_to_code_mistakes.md
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- prathamlearnstocode
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/prathamlearnstocode/paper2code / ライセンス: MIT
関連スキル
doubt-driven-development
重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。
apprun-skills
TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。
desloppify
コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。
debugging-and-error-recovery
テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。
test-driven-development
テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。
incremental-implementation
変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。