mcpField
A
academic-figure-generation

academic-figure-generation

github.com/jxtseクリエイティブ・メディア7440 回インストール23 週間前に更新
リポジトリ

academic-figure-generation について

academic-figure-generationは、PaperBananaを呼び出して論文用の図を作成する軽量なコマンドラインラッパーです。手法の説明文から図を作りたい研究者向けで、モデル設定はPaperBanana側で管理し、複数のPNG候補を出力します。

主な機能

  1. 01手法の説明文と図キャプションを入力
  2. 02複数の図候補を生成
  3. 03パイプラインモードの選択
  4. 04候補数と並列数の指定
  5. 05画像のアスペクト比を指定

活用シーン

  1. 01論文の手法概要図の作成
  2. 02システム構成図やフローチャートの作成
  3. 03ベースラインと提案手法の比較
  4. 04アブレーション実験の図示

インストール

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

$npx skills add https://github.com/jxtse/scientific-research-skills --skill academic-figure-generation

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

同梱ファイルscripts/generate.py

詳細

学術論文向け図の生成

PaperBanana(別名 PaperVizAgent)を使った、学術論文向けのマルチエージェント図生成パイプラインを呼び出す薄い CLI ラッパーです。

このスキルが提供するスクリプトは scripts/generate.py の1つだけです。メソッドのテキストとキャプションを PaperBanana に渡し、候補となる PNG を N 枚書き出します。モデルの選択と API キーは PaperBanana 独自の configs/model_config.yaml から読み込まれます。このラッパーで上書きすることはありません。

初回セットアップ

  1. PaperBanana を使いやすい場所にクローンします。

    git clone https://github.com/dwzhu-pku/PaperBanana.git ~/PaperBanana
    cd ~/PaperBanana
    uv venv && uv pip install -r requirements.txt
    
  2. configs/model_config.yaml を設定します — 画像モデルと対応する API キーを指定します。よく使われる設定は次の2つです。

    defaults:
      image_model_name: "gemini-3-pro-image-preview"   # or "openai/gpt-5.4-image-2"
      model_name: "gemini-3.1-pro-preview"             # text model for Planner/Stylist/Critic
    
    api_keys:
      google_api_key: "..."        # required for Gemini models
      openrouter_api_key: ""       # required for openai/gpt-5.4-image-2
    

Google AI のキーがあれば Gemini を、OpenRouter のキーがあれば OpenRouter 経由で GPT-Image-2 を使います。どちらかを選んでください。それ以外に設定するものはありません。

ワークフロー

ステップ 1:入力を集める

必要なものは次のとおりです。

  1. メソッドのテキスト:アプローチを説明している論文の該当セクション(./method.md または ./method.tex)。
  2. 図のキャプション:対象のキャプション。例:"Figure 1: Overview of our framework"。

ユーザーの依頼が曖昧な場合は、次の点を尋ねます。

  • 図ではメソッドのどの側面に焦点を当てますか?
  • スタイルはどうしますか?(ブロック図、フローチャート、パイプライン、アーキテクチャ、比較)
  • 投稿先/段組み幅は?(ACL ≤ 7.5"、NeurIPS の1段組み 5.5")
ステップ 2:生成する
~/PaperBanana/.venv/bin/python scripts/generate.py \
  --paperbanana-root ~/PaperBanana \
  --method-file ./method.md \
  --caption "Figure 1: Overview of our framework" \
  --out-dir ./figures/v1 \
  --candidates 3 \
  --aspect-ratio 16:9
フラグデフォルト備考
--paperbanana-root(必須)PaperBanana のチェックアウト先のパス
--method-file(必須)メソッドのセクションを記載したテキスト/Markdown ファイル
--caption(必須)対象の図のキャプション
--out-dir(必須)PNG の出力先
--candidates3独立した図の候補数
--max-concurrent2同時実行数の上限(クォータに配慮してください)
--exp-modedemo_full全パイプライン(Planner+Stylist+Visualizer+Critic)。Stylist を省略するには demo_planner_critic、単一生成には vanilla を使います。
--aspect-ratio16:921:9、16:9、3:2、1:1 のいずれか
--max-critic-rounds2批評と修正の反復回数(Critic が「変更不要」と判断した場合は早期終了します)
ステップ 3:提示して反復する
  • すべての候補をユーザーに提示します。
  • よくある調整項目:配色、レイアウト、ラベルのテキスト、フォントサイズ。
  • キャプションを調整するか、候補数を増やして再実行します。
ステップ 4:エクスポートする
  • PNG は --out-dir 内に candidate_0.png、candidate_1.png、…として書き出されます。
  • 投稿用 PDF を作成するには、magick candidate_0.png candidate_0.pdf を実行します。

スタイルガイドライン

  • 色:一貫性のある、色覚多様性に配慮したパレット
  • フォント:論文の本文フォントに合わせます(ACL/EMNLP では Times、多くの ML 系投稿先では Helvetica/Arial)
  • ラベル:簡潔にし、図の中に完全な文章を入れないでください
  • 矢印:データの流れには実線、オプションの経路やフィードバックループには破線を使います
  • 余白:詰め込みすぎないでください。査読者は数秒で図に目を通します

よくある図の種類

種類使用する場面主な要素
パイプライン/フローチャート順次処理ボックスと矢印、左から右または上から下
アーキテクチャシステムの概要入れ子のボックス、明確なモジュール境界
比較変更前/変更後、ベースライン対提案手法横並びのパネル
アブレーション各コンポーネントの寄与棒グラフ、強調表示した行
フレームワーク概念レベルの概要抽象的な図形、最小限の詳細

トラブルシューティング

  • Gemini で 429 RESOURCE_EXHAUSTED が発生する:Google AI Studio の月間利用上限に達しています。https://ai.studio/spend で上限を引き上げるか、image_model_name を openai/gpt-5.4-image-2 に切り替えて OPENROUTER_API_KEY を設定してください。
  • OpenRouter Client not initialized が発生する:環境変数に OPENROUTER_API_KEY がなく、YAML にも openrouter_api_key がありません。
  • 出力ディレクトリに PNG がない:out_dir/results.json で候補ごとの生の応答とエラーメッセージを確認してください。
  • 処理に時間がかかる(5分超):所要時間の大半は画像モデルによるものです。--candidates を減らすか、反復を速めるために --exp-mode vanilla を使ってください。

リンク

コメント