Community影像github.com

erlingerwu0925/paper-illustration

使用 Gemini 圖像生成技術,為學術論文產生可出版品質的 AI 插圖。能繪製架構圖、方法插圖,並包含 Claude 監督的迭代精煉迴圈。

paper-illustration 是什麼?

這項技能提供了一個多階段、由 Claude 嚴格監督的工作流程,用於生成符合 CVPR/ICLR/NeurIPS 等頂級學術會議標準的出版品質圖表。使用者可以要求「畫架構圖」或「為論文生成插圖」,系統便會啟動一個包含五個階段的流程:首先由 Claude 擔任規劃者,解析請求並建立詳細提示;接著由 Gemini 模型進行佈局優化和風格審查;最後由 Claude 擔任嚴格審查員,對生成的圖像進行 1 到 10 分的評分,只有達到 9 分以上的作品才會輸出。技能的核心設計哲學在於透過多階段的迭代反饋迴圈,確保圖表在視覺吸引力、專業度與學術嚴謹性之間取得平衡。它使用 `gemini-3-pro-image-preview` 進行高品質圖像渲染,並支援可選的 `--style-ref` 參數,讓使用者可以參考特定論文的結構性慣例(如圖說長度、圖表密度),但嚴格禁止複製其視覺設計。此技能適用於產生架構圖、方法說明圖與概念圖,但不適用於統計圖表或寫實照片,需要設定 `GEMINI_API_KEY` 環境變數才能運作。

相容平台✓Claude Code✓Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/erlingerwu0925/Skills/tree/HEAD/collections/02-autonomous-research/ARIS/skills/paper-illustration

Installed? Explore more 影像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

論文插圖:多階段 Claude 監督式圖表生成

使用多階段工作流程,並以 Claude 作為嚴格的監督者/審查者,產生可供出版使用的插圖。

核心設計理念

┌──────────────────────────────────────────────────────────────────────────┐
│                     多階段迭代工作流程                                     │
├──────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│   使用者請求                                                              │
│       │                                                                  │
│       ▼                                                                  │
│   ┌─────────────┐                                                        │
│   │   Claude    │ ◄─── 步驟 1:解析請求,建立初始提示                      │
│   │  (規劃者)   │                                                        │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │   Gemini    │ ◄─── 步驟 2:最佳化佈局描述                              │
│   │ (gemini-3-pro)│      - 改良元件定位                                    │
│   │  佈局       │      - 最佳化間距與分組                                  │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │   Gemini    │ ◄─── 步驟 3:CVPR/NeurIPS 風格驗證                      │
│   │ (gemini-3-pro)│      - 檢查色板符合性                                  │
│   │  風格       │      - 驗證箭頭與字型標準                                │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │ Paperbanana │ ◄─── 步驟 4:渲染最終圖像                               │
│   │ (gemini-3-  │      - 高品質圖像生成                                   │
│   │ pro-image)  │      - 內部代號:Nano Banana Pro                        │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │   Claude    │ ◄─── 步驟 5:嚴格的視覺審查 + 評分 (1-10)               │
│   │  (審查者)   │      - 驗證每個箭頭方向                                  │
│   │   嚴格!    │      - 驗證每個區塊內容                                  │
│   └──────┬──────┘      - 驗證美學與視覺吸引力                              │
│          │                                                               │
│          ▼                                                               │
│   分數 ≥ 9? ──是──► 接受並輸出                                            │
│          │                                                               │
│          否                                                              │
│          │                                                               │
│          ▼                                                               │
│   生成特定的改善反饋 ◄── 回到步驟 2                                      │
│                                                                          │
└──────────────────────────────────────────────────────────────────────────┘

常數

  • IMAGE_MODEL = gemini-3-pro-image-preview — Paperbanana (Nano Banana Pro) 用於圖像渲染
  • REASONING_MODEL = gemini-3-pro-preview — Gemini 用於佈局最佳化與風格檢查
  • MAX_ITERATIONS = 5 — 最大改良輪數
  • TARGET_SCORE = 9 — 最低可接受分數 (1-10) — 為品質而提高
  • OUTPUT_DIR = figures/ai_generated/ — 輸出目錄
  • API_KEY_ENV = GEMINI_API_KEY — 環境變數

可選:風格參考 (-- style-ref: <來源>, 自願加入)

讓使用者針對結構性的圖表慣例(如母論文中的圖說長度、面板數量分佈、圖表與表格比例)參考一篇論文。預設為關閉 — 當使用者未傳入 -- style-ref 時,其行為與先前完全相同。

僅當 $ARGUMENTS 中包含 -- style-ref: <來源> 時,才「先」執行輔助工具,然後才產生提示:

# 透過標準的嚴格安全鏈解析 $STYLE_HELPER(請參閱
# shared-references/integration-contract.md §2)。政策 A — 閘門:
# 若輔助工具無法解析,則表示 --style-ref 無法滿足,因此中止。
cd "$(git rev-parse --show-toplevel 2>/dev/null || pwd)" || exit 1
if [ -z "${ARIS_REPO:-}" ] && [ -f .aris/installed-skills.txt ]; then
    ARIS_REPO=$(awk -F'\t' '$1=="repo_root"{print $2; exit}' .aris/installed-skills.txt 2>/dev/null) || true
fi
if [ -z "${ARIS_REPO:-}" ] && [ -f "$HOME/.aris/repo" ]; then
    ARIS_REPO=$(cat "$HOME/.aris/repo" 2>/dev/null) || true
fi
STYLE_HELPER=".aris/tools/extract_paper_style.py"
[ -f "$STYLE_HELPER" ] || STYLE_HELPER="tools/extract_paper_style.py"
[ -f "$STYLE_HELPER" ] || { [ -n "${ARIS_REPO:-}" ] && STYLE_HELPER="$ARIS_REPO/tools/extract_paper_style.py"; }
[ -f "$STYLE_HELPER" ] || {
  echo "錯誤:extract_paper_style.py 無法解析至 .aris/tools/、tools/、$ARIS_REPO/tools/ 或透過 ~/.aris/repo 找到。" >&2
  echo "       修正:重新執行 bash tools/install_aris.sh 或 smart_update.sh(會重新整理 ~/.aris/repo)、匯出 ARIS_REPO,或將輔助工具複製到 tools/。" >&2
  echo "       --style-ref 無法滿足;正在中止。" >&2
  exit 1
}
STYLE_STATUS=0
CACHE=$(python3 "$STYLE_HELPER" --source "<來源>") || STYLE_STATUS=$?
case "$STYLE_STATUS" in
  0) ;;                                       # 使用 $CACHE/style_profile.md 作為結構性指導
  2) echo "警告:style-ref 已跳過(缺少可選依賴項)" >&2 ;;
  3) echo "錯誤:--style-ref 來源失敗;正在中止插圖生成" >&2 ; exit 1 ;;
  *) echo "錯誤:輔助工具意外失敗;正在中止插圖生成" >&2 ; exit 1 ;;
esac

接受的來源:本機 TeX 目錄/檔案、本機 PDF、arXiv ID、http(s) URL。Overleaf URL/ID 將被拒絕 — 請先透過 /overleaf-sync setup <id> 複製,然後再傳入本機複製路徑。

嚴格規則(完整合約請參閱 tools/extract_paper_style.py 的文件字串):

  • 使用 style_profile.md 使圖說長度和圖表密度與參考論文保持一致。上述的 CVPR/ICLR/NeurIPS 視覺標準仍具有優先權 — --style-ref 僅調整長度和密度傾向,絕不影響圖像內容。
  • 切勿複製快取中任何可觸及的圖像內容、色板或特定設計元素。視覺設計來自使用者的提示,而非參考文獻。
  • 切勿將 -- style-ref(或快取內容)傳遞給 Claude 視覺檢查器 / Gemini 推理檢查器子代理來評分生成的圖像 — 圖像必須根據其自身品質進行評判。

CVPR/ICLR/NeurIPS 頂級會議風格指南

「CVPR 風格」的實際含義:

視覺標準

  • 乾淨的白色背景 — 無裝飾性圖案或漸層(除非很細微)
  • 無襯線字型 — Arial、Helvetica 或 Computer Modern;最小 14pt
  • 微妙的色板 — 非彩虹色;使用 3-5 種協調的顏色
  • 適合列印 — 必須在灰階下可讀(許多審稿人會列印論文)
  • 專業邊框 — 細 (2-3px)、實色,不花俏

佈局標準

  • 水平流向 — 從左到右是流程圖的標準
  • 清晰分組 — 使用微妙的背景框來分組相關模組
  • 一致的大小 — 相似元件應具有相似大小
  • 平衡的留白 — 不擁擠,不稀疏

箭頭標準(最關鍵)

  • 粗線條 — 最小 4-6px(細箭頭在列印時會消失)
  • 清晰的箭頭頭部 — 大的、填滿的三角形頭部
  • 深色 — 黑色或深灰色 (#333333);避免彩色箭頭
  • 標籤 — 每個箭頭都應指示通過它的資料流類型
  • 無交叉 — 重新組織佈局以避免箭頭交叉
  • 正確的方向 — 箭頭必須指向「正確的」目標!

視覺吸引力(科研風格 - Professional Academic Style)

目標:既不保守也不花哨,找到平衡點

✅ 應該有的視覺元素:

  • Subtle gradient fills — 淡雅的漸層填充(同色系從淺到深),不是炫彩
  • Rounded corners — 圓角矩形(6-10px radius),現代感但不誇張
  • Clear visual hierarchy — 透過大小、顏色深淺區分層次
  • Consistent color coding — 統一的配色方案(3-4種主色)
  • Internal structure — 大模組內部顯示子元件(如 Encoder 內部的 layer 結構)
  • Professional typography — 清晰的標籤,適當的字級層次

✅ 配色建議(學術專業):

  • Inputs: 柔和的綠色系 (#10B981 / #34D399)
  • Encoders: 專業的藍色系 (#2563EB / #3B82F6)
  • Fusion: 優雅的紫色系 (#7C3AED / #8B5CF6)
  • Outputs: 溫暖的橙色系 (#EA580C / #F97316)
  • Arrows: 黑色或深灰 (#333333 / #1F2937)
  • Background: 純白 (#FFFFFF),不要花紋

❌ 要避免的過度裝飾:

  • ❌ Rainbow color schemes (彩虹配色)
  • ❌ Heavy drop shadows (重陰影效果)
  • ❌ 3D effects / perspective (3D透視)
  • ❌ Excessive gradients (誇張的多色漸層)
  • ❌ Clip art / cartoon icons (卡通圖標)
  • ❌ Decorative patterns in background (背景花紋)
  • ❌ Glowing effects (發光效果)
  • ❌ Too many small icons (過多小圖標)

✓ 理想的視覺效果:

  • 一眼看上去專業、清晰
  • 有適度的視覺吸引力,但不搶眼
  • 符合CVPR/NeurIPS論文的審美標準
  • 列印友好(灰階模式下也能清晰辨認)
  • 像精心設計的學術圖表,而不是 PPT 模板

應避免的事項(關鍵)

  • ❌ 彩虹色調(太多顏色)
  • ❌ 細如髮絲的箭頭(箭頭必須夠粗)
  • ❌ 無標籤的連線
  • ❌ 樸素無聊的矩形(應加入一些視覺趣味)
  • ❌ 過度裝飾(陰影/發光/圖標)(過於花俏)
  • ❌ 列印時無法閱讀的小字
  • ❌ 錯誤的箭頭方向 — 這是不可接受的!

範圍

圖表類型品質範例
架構圖優秀模型架構、流程圖、編碼器-解碼器
方法插圖優秀概念圖、演算法流程圖
概念圖良好比較圖、分類樹

不適用於: 統計圖表(請使用 /paper-figure)、寫實照片

工作流程:必須執行所有步驟

步驟 0:飛行前檢查

# 檢查 API 金鑰
if [ -z "$GEMINI_API_KEY" ]; then
    echo "錯誤:GEMINI_API_KEY 未設定"
    echo "從以下網址取得您的金鑰:https://aistudio.google.com/app/apikey"
    echo "設定方式:export GEMINI_API_KEY='your-key'"
    exit 1
fi

# 建立輸出目錄
mkdir -p figures/ai_generated

步驟 1:Claude 規劃圖表(您在此處)

關鍵:Claude 必須先分析使用者的請求,並建立詳細提示。

解析輸入:$ARGUMENTS

Claude 的任務:

  1. 理解使用者想要什麼樣的圖表
  2. 識別所有元件、連線、資料流
  3. 為 Gemini 建立一個詳細、結構化的提示
  4. 包含風格要求和視覺吸引力要求

Claude 要產生的提示模板:

請根據 CVPR/ICLR/NeurIPS 標準,建立一個專業、視覺上吸引人、可供出版使用的學術圖表。

## 視覺風格:科研風格(Academic Professional Style)
### 目標:平衡 — 既不保守也不花哨

#### 應該有:
- **Subtle gradients** — 同色系淡雅漸層(如 #2563EB → #3B82F6),不是多色炫彩
- **Rounded corners** — 圓角矩形(6-10px),現代感
- **Clear visual hierarchy** — 透過大小、深淺區分層次
- **Internal structure** — 大模組內顯示子元件結構
- **Consistent color coding** — 統一的3-4色方案
- **Professional polish** — 精緻但不誇張

#### 不應該有:
- ❌ Rainbow/multi-color gradients (彩虹漸層)
- ❌ Heavy drop shadows (重陰影)
- ❌ 3D effects / perspective (3D效果)
- ❌ Glowing effects (發光效果)
- ❌ Excessive decorative icons (過多裝飾圖標)
- ❌ Plain boring rectangles (完全平淡的方塊)

#### 理想效果:
像頂會論文中精心設計的架構圖 — 專業、清晰、有適度的視覺吸引力

## 圖表類型
[架構圖 / 流程圖 / 比較圖 / 等]

## 應包含的元件(請具體說明內容)
1. [元件 1]:
   - 標籤:「[確切文字]」
   - 副標籤:「[下方較小文字]」
   - 位置:[左/中/右, 上/中/下]
   - 樣式:[邊框顏色、填充、內部結構]
2. [元件 2]: ...

## 佈局
- 方向:[從左到右 / 從上到下]
- 間距:[緊密 / 正常 / 寬鬆]
- 分組:[元件應如何分組]

## 連線(請明確說明方向)
確切的箭頭規格:
1. [元件 A] → [元件 B]:箭頭從 A 指向 B,標籤為「[資料類型]」
2. [元件 C] → [元件 D]:箭頭從 C 指向 D,標籤為「[資料類型]」
...
驗證:每個箭頭必須指向正確的目標!

## 風格要求(CVPR/ICLR/NeurIPS 標準)

### 視覺風格
- 色板:專業學術色
  - Inputs: 綠色 (#10B981)
  - Encoders: 藍色 (#2563EB)
  - Fusion modules: 紫色 (#7C3AED)
  - Outputs: 橙色 (#EA580C)
- 字型:無襯線字型 (Arial/Helvetica),最小 14pt,標籤加粗
- 背景:乾淨的白色,無圖案
- 區塊:圓角矩形 (8-12px radius),微妙的漸層填充,彩色邊框 (2-3px)
- 微妙的陰影以營造深度感
- 適合列印(必須能在灰階下運作)

### 關鍵:箭頭與資料流要求
1. **所有箭頭必須非常粗** - 最小 5-6px 線條寬度
2. **所有箭頭必須有清晰的箭頭頭部** - 大的、可見的三角形頭部
3. **所有箭頭必須是黑色或深灰色** - 不要彩色
4. **為每個箭頭加上標籤**,說明通過它的資料流類型
5. **驗證箭頭方向** - 每個箭頭都必須指向正確的目標
6. **無模糊的連線** - 每個箭頭都應有明確的來源和目的地

### 邏輯清晰度要求
1. **資料流必須一目了然** - 觀看者應能理解管線

…

[因長度限制而截斷]

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相關技能