📘 原文信息
- 项目名:ResearchStudio
- 机构:Microsoft Research + 多家高校(作者团队 30+ 人)
- 发布日期:2026-07-03(Idea 部分)/ 2026-07-08(Reel 部分)
- 项目地址:https://github.com/microsoft/ResearchStudio ↗
- Idea 论文:https://arxiv.org/abs/2607.04439 ↗
- Reel 论文:https://arxiv.org/abs/2607.04438 ↗
- Demo:https://researchstudio.site/ ↗
- 许可证:MIT
- 推荐模型:Claude Opus 4.6+ / GPT-5.5+
- 运行环境:Claude Code / Codex
一、为什么这个项目值得读?#
2026 年的 AI Agent 圈有一个明显的趋势:从”对话”走向”技能”——Anthropic 推 Claude Skills、OpenAI 推 Codex/OpenAI Apps、MCP 协议把”工具调用”标准化。微软 ResearchStudio 是这条趋势上最重磅的”垂直域落地”:把”做研究”这件最复杂、最依赖专业知识的工作,拆成一组可被 Agent 调用的 Skills。
它解决的核心问题是:一个研究者从”模糊方向”走到”一份完整发布物料”,过去要 3-6 个月;现在被一组 Skills 串起来,可以压缩到几天甚至几小时。
更让人震撼的是这套系统的工程深度——整个仓库 3,620 行 SKILL.md、几百个 Python 脚本、10+ 个 Phase 的精细编排、严格的”Faithful by construction”原则。这不是一个 demo 项目,而是一个真有人会用的工具栈。
本文按论文 + SKILL.md + 实际代码三个维度做一次重述与解读,重点是:
- 为什么”Skills 协议”是 Agent 走向实用化的关键?
- ResearchStudio 的整体架构怎么拆?
- IdeaSpark 的 5 阶段工作流是怎么解决”AI 生成研究想法”这个难题的?
- Paper2Reel 5 个 Skills 怎么共享资产包?
- 从评测结果看,这套系统”真能”超过专家吗?
二、项目定位:AI 科研副驾驶,不是一个工具#
ResearchStudio 的 Slogan 写在 README 第一行:
“Our AI co-author, from research problem to final publication.”
它不是某个”AI 论文写作助手”或者”AI 文献综述工具”——它要做的是整个研究生命周期:
研究问题(模糊)
↓
ResearchStudio-Idea
↓
想法卡片(可投的提案)
↓
实施 + 写论文
↓
论文 PDF(写完的成果)
↓
ResearchStudio-Reel
↓
发布物料(海报 / 视频 / 博客 / 交互页)plaintext注意:它不替代”实施”和”写论文”这两个最核心的环节——这两件事仍然需要人来做。它做的是”前”和”后”两端——Idea 是”前”,Reel 是”后”。这是一种非常聪明的定位:避开 LLM 最不擅长的”长程创造”,把”两端”的工作流化、可工具化。
三、整体架构:两个互补的子项目#
仓库结构极其简洁——只有两个子项目加一个统一安装脚本:
ResearchStudio/
├── README.md
├── install.sh # 统一安装器,自动检测 + symlink 到 Claude Code / Codex
├── ResearchStudio-Idea/ # 前半段:研究想法
│ ├── skills/
│ │ ├── idea_spark/ # 端到端:问题 → 想法卡片(5 阶段 workflow)
│ │ ├── paper_search/ # 文献检索(6 个库并发)
│ │ └── scoop_check/ # 查新("这事有人做过吗?")
│ └── evaluation/ # 评测协议(vs Opus-4.8 / GPT-5.5)
└── ResearchStudio-Reel/ # 后半段:论文发布物
└── skills/
├── paper2assets/ # PDF → 结构化资产包
├── paper2poster/ # 资产包 → 海报(HTML + PDF + PNG + PPTX)
├── paper2video/ # 资产包 → 讲解视频(MP4 + PPTX)
├── paper2blog/ # 资产包 → 中英双语博客(DOCX)
└── paper2reel/ # 海报 + 视频 + 博客 → 交互式 reel viewerplaintext3.1 两个子项目的能力对比#
| 维度 | ResearchStudio-Idea | ResearchStudio-Reel |
|---|---|---|
| 解决的问题 | 我要做什么研究? | 我做完了怎么发布? |
| 输入 | 一个研究问题 / 方向 | 一篇论文 PDF |
| 输出 | 一张”可被审稿人接受”的想法卡片 | 海报 / 视频 / 博客 / 交互页 |
| 核心方法 | 15 种 ideation 模式 + 5 阶段工作流 | 共享 asset bundle + 多个 renderers |
| 数据底座 | 1,947 篇 ICLR / ICML / NeurIPS 论文 + 实时检索 | 单篇 PDF 全文解析 |
| 运行时 | Claude Code / Codex | Claude Code / Codex |
| 评测锚点 | ICLR-2026 Oral 论文 | 实际发表论文 |
3.2 共同的设计原则#
两个子项目共享几条核心设计哲学:
- Faithful by construction——每个论断要么有引用,要么显式标记为模型补全。这是 IdeaSpark 的核心承诺。
- 可单独使用 + 可组合——每个 Skill 都是独立可调用的,但通过共享的 Output Contract 组合起来不会重复计算。
- 显式可失败——IdeaSpark 有 3 种 terminal outcome(成功 /
do_not_generate/phase_3_failed),Reel 的 paper2poster 有两个 hard gate(figure fill ≥ 90% / section full 0.90-1.00)。 - 默认用最便宜的模型跑最简单的事——文献模式分类、Ideas 的 derive 阶段都用
NOVELTY_LLM_CLASSIFY_FAST_CMD路由到便宜模型;只有推理密集阶段才用大模型。
四、IdeaSpark:5 阶段 Workflow 怎么解决”AI 生成研究想法”#
IdeaSpark 是 Idea 部分的旗舰,也是整个项目最复杂的 Skill。它把”从模糊问题到可投稿想法”拆成 5 个阶段,每个阶段都有自己的 SKILL.md、prompt、validator。
4.1 为什么”AI 生成研究想法”特别难?#
普通的 RAG / Agent 任务里,LLM 只需要”找答案”或者”汇总”。但”生成研究想法”需要的是:
- 理解现有文献——一个 ML 领域可能有上千篇论文,AI 要知道”哪些已被做过”
- 找到 bottleneck——不是简单”还没人做”,而是”为什么没人做?做不出来是因为什么?”
- 跨越模式——好的研究想法往往是”把领域 A 的方法搬到领域 B”,需要跨域联想
- 可证伪——必须能写出”如果这个想法对,那么实验 X 应该出现现象 Y”——即 falsifiability
- 可实施——算力预算、数据需求都要现实
LLM 在前两点经常”幻觉”,在第三点经常”太保守”,在第四点经常”含糊”,在第五点经常”超现实”。
4.2 五阶段 Workflow#
IdeaSpark 用一个严格序列化 + 多层 gate 的 5 阶段 workflow 解决这些难题:
Phase 0: Literature grounding
↓ (必须:全文本抓取,hard gate)
Phase 1: Bottleneck identification
↓ (必须:proceed / do_not_generate)
Phase 2: Selection + Generation (2.1 + 2.2 + 2.3 coherence gate)
↓ (citation gate + coherence gate 都过)
Phase 3: Quality gauntlet (3.1 collision + 3.2 audit + 3.3 revise)
↓ (advance / revise / abandon)
Phase 4: Expansion + packaging (skeleton + fill + assemble + audit + render)
↓
输出: 想法卡片 (Markdown + PDF + LaTeX)plaintext每个阶段都有自己的 prompt、validator、和失败处理逻辑。让我按阶段展开:
Phase 0:Literature grounding(文献接地)#
- 多源并发检索:同时跑 4 个 connector(arxiv 0-6mo / openalex 6-24mo / semanticscholar 6-24mo / openreview 0-6mo)
- 非重叠时间窗:避免同一篇论文被不同源重复抓
- 全文本抓取(MANDATORY):Phase 0 一落地立刻抓全文到
fulltext_cache.json——Phase 1 hard-gate 在这个文件上 - 缓存机制:跨 run 共享
~/.cache/ideaspark/fulltext/,TTL 30 天 - 机制优先查询:用户问题先做 intent recognition,问题被转成”机制视角”的查询(避免被综述类论文稀释)
💡 小吴笔记:Phase 0 的”全文本抓取是 hard gate”是这个项目最值得学习的设计之一。“用摘要做综述”是 LLM 圈最容易出错的地方——摘要会漏掉方法细节、限制条件、消融实验。IdeaSpark 直接把”没读到全文就不能进 Phase 1”做成系统约束,用工程强制保证 factuality。这是”Faithful by construction”原则在底层架构上的体现。
Phase 1:Bottleneck identification(找瓶颈)#
核心产出:
bottleneck_statement——必须 inline 引用 ≥ 2 个 paper_idclosest_adjacent[]——最接近的相邻工作(Phase 3 collision 的预热)what_phase_0_did_not_address[]——Phase 0 没覆盖到的 gap(每个 gap 都要以 stakes clause 结尾:“这事重要是因为…”)state ∈ {proceed, do_not_generate}——明确的二元路由
OOD short-circuit(out-of-domain 短路):
- “Too broad” → do_not_generate
- “No anchor”(没找到具体论文做参照)→ do_not_generate
- < 5 个真正相关论文 → do_not_generate
- 纯 benchmark / dataset construction → do_not_generate
Phase 2:Selection + Generation(选 + 生)#
这是 IdeaSpark 最有方法论价值的一节,分 2.1 / 2.2 / 2.3 三个子步骤:
Phase 2.1——“选”:从 15 种 ideation 模式 + 31 种子模式里选一个或组合,要求是:
- 必须 ≥ 2 种不同模式(默认),以 CHAIN(在 anchor 上的连续操作)或 SIBLING(共享 anchor 但贡献独立的额外模式)的形式组合
- Anchor-only 是合法但少见的选择(需要
composition_note解释为什么 anchor 单独就够) - 单一模式选择必须能通过”removal test”——去掉这个模式,anchor 的故事不完整
Phase 2.2——“生”:产出 12 字段的 JSON,包括 core_mechanism / falsification_prediction / compute_budget 等。其中几个 hard rule 特别值得展开:
| Hard Rule | 含义 |
|---|---|
| Premises ledger | 必须列出机制的所有 load-bearing premises;涉及采样 / 估计的必须有 observation-model / estimand 声明 |
| Naive-baseline audit | 必须声明”naive 版本是什么?为什么它不够?“——branch (i) 直接被否定 (ii) naive 就够 (iii) naive 工作但领域不信 |
| Existing artifacts only | 引用的数据集 / 模型 / 工具必须是已存在的具体名字;自建资源必须有 cost 计算 |
| Defensible claim strength | 措辞强度必须匹配假设——有假设就用 guarantee 级措辞并写明假设 |
Phase 2.3——coherence gate:用一个全新 context 的 LLM 调用验证 internal validity,方法是执行 5 个 trace actions(不是 review):
- formalize dataflow(找 undefined symbols / missing producers / circular deps)
- numeric dry-run(一个具体实例上的量级 / 概率运算)
- degenerate probes(empty / k=0 / ties)
- claim → step mapping(每个 assertion 映射到建立它的 step)
- naive-baseline comparison(独立构造 naive 版本,同实例跑,对照 candidate 的 branch)
这是个非常硬核的设计——coherence gate 用”执行”而不是”评审”来检查内部一致性。“逻辑错误用流畅的语言读不出来,但算出来就能发现”——这种工程化的”反幻觉”思路和 PaperQA2 的 render-then-verify 一脉相承。
Phase 3:Quality gauntlet(质量门槛)#
Phase 3 是整套流程的”质量关卡”,分 3 个子步骤:
Phase 3.1 collision——主动检索”撞车”:
- 两个通道:signature(候选 idea 的
signature_terms[]在 10 个月窗口)/ alias(候选 idea 的alias_terms[]在 48 个月窗口) - 关键洞察:仅靠 signature 窗口扩张是抓不到”renamed ancestor”的——比如 “goal-conditioned success detector” vs “goal-image conditioned scorer”,是词汇差异不是时间差异。所以 alias 通道必须独立存在。
Phase 3.2 audit——5 项 corpus-anchored 检查:
| 检查 | 问的问题 |
|---|---|
gap_closure_reject_check | 是否命中 cited sub-pattern card 里的 Reject lesson? |
recipe_application_check | candidate 的 core_mechanism 是否真的执行了 cited C## cluster 的战术模式(不只是父模式的泛义)? |
anti_pattern_check | gap_closure[].main_pattern 集合是否触发 anti-pattern mitigation? |
paper_pointed_threat | 最具体的 subsuming / competing paper 是哪一篇? |
falsification_structure_check | falsification_prediction 是否有 minimal experiment + metric + load-bearing variable + non-tautological negative control? |
判定分两层:hard floor(LLM 不能 override,必须 abandon)+ soft judgment(advance 或 revise with concrete revision_targets)。
Phase 3.3 revise——patch-only 修改(永远不重新判 verdict),然后 merger 合并到 final_candidate.json。
Information-gain retry rule——如果 abandon,每次 retry 必须携带新 lessons(不是同样失败再来一次)。直到 3 次 candidate cycles / bottleneck re-diagnosis / no new lessons → phase_3_failed.md 终态。
Phase 4:Expansion + packaging#
把通过审核的 candidate 扩展成最终的可投卡片:
- skeleton(deterministic)——填充所有机械字段(kill-switch echoes、differentiation、feasibility validation、reviewer_concerns 等)
- fill(one isolated LLM call)——写技术性 TODO paths →
fill_map.json - assemble (partial) → derive → assemble (final)——assembler 合并 fill_map 和 derive_map(derive 用便宜模型做 register 转换)
- implementability audit (4.1.5)——skeptical engineer persona 重写每个 method step 为可构建 spec(EN+ZH),标记 underspecified points
- validate + render——templating only(无 model 调用),输出
idea.std.zh.md/idea.std.en.md/idea.detail.en.md+ LaTeX → PDF
输出:3 张卡片 + LaTeX 源 + 每阶段的 JSON 中间产物。
4.3 几个工程上最值得说的设计#
4.3.1 Context discipline:三规则防 timeout#
IdeaSpark 一次完整 run 会积累 180-250k tokens 的中间状态。如果让 host LLM 在自己的 context 里带着这些状态跨阶段跑,Phase 1 / 2.2 / 4.fill 经常撞到 [API Error · Request timed out · Retrying...]。
解法是三条规则:
- 每个 LLM 驱动的 phase 都在 isolated context(sub-process / sub-agent / manual reset 三选一)
- 每个 phase 的 artifact 直接 Write 到磁盘,不 paraphrasing 到 chat 里
- 在 phase 之间 compact(Phase 0+ / 1 / 2 / 3.2 之后)
💡 小吴笔记:这是”工程换智能”的又一个好例子。LLM 的能力上限在今天,但 host LLM 的 context window 是有上限的——把”长流程跑在单 context 里”换成”短流程 + 持久化 artifact”,用文件系统当 LLM 的外存,整套系统的可靠性立刻上一个台阶。
4.3.2 Cross-run dedup#
如果同一用户连着跑几个相邻方向(比如先 “KV cache compression” 再 “long-context inference”),不做 dedup 的话容易重复发明同一个 mechanism family。
IdeaSpark 在 Phase 2 emit 里自动扫描 sibling run dirs,把最近 5 个的 canonical candidate titles + signature terms 作为 soft-negative-anchor 输入注入。这样新 run 不会被同样的 anchor 困住。
4.3.3 Citation gate 和 kill-switch integrity#
Phase 2 输出后必须跑两个 hard validator:
| Validator | 检查 |
|---|---|
| subpattern_citation_consistency | 每个 gap_closure[].sub_pattern 必须真在 overview.md 里存在,parent 是 cited main_pattern |
| kill_switch_integrity | falsification_prediction + compute_budget 必须在 Phase 2.2 → 3.3 → 4 整条链路上 byte-identical |
kill_switch_integrity 这个名字起得很有意思——“kill switch”指的就是这两字段是后续阶段都不能改的硬约束(除非是 audited 的 falsification rewrite)。这种”防止后续 LLM 调用悄悄改关键字段”的设计是对”LLM 偷改 prompt”这一类失败模式的硬防御。
五、ResearchStudio-Reel:5 个 Skills 怎么共享一个资产包#
Reel 部分的设计哲学和 Idea 完全不一样——它更”工业”,更像是数据处理 pipeline。核心创新是 Output Contract——5 个下游 renderer 共享同一个 <outdir>/ bundle。
5.1 Output Contract:bundle 的标准布局#
<paper-name>/
├── manifest.json # 包索引(paths + counts + source-PDF sha256)
└── assets/
├── figures/ # 清洗后的图表 PNG (~432 dpi)
├── logos/ # 每个机构的 logo(从 Wikimedia Commons)
├── qr/ # 论文 / 代码 URL 的 QR 码
├── audio/ # paper2poster 生成的 TTS 音频
├── fonts/ # Inter 字体
└── meta/
├── paper_spec.md # 9 节结构化摘要(Problem / Motivation / Contribution / Method / ...)
├── metadata.json # title / authors / institutes / venue / paper_url / code_url
├── text.txt # PDF 全文(所有引用数字的权威来源)
├── figures.json # 每个图表的元数据
├── captions.json # 检测到的 "Figure N: ..." 标题
├── sections.json # paper_spec.md 解析为 per-section JSON
└── narration.json # TTS 脚本(无音频;renderer 自己合成)plaintext关键规则:
- 顶层只放 deliverable FILES(poster.html / blog_zh.docx / video.mp4 / reel.html)——没有松散中间产物
- 每个依赖都放到
assets/下,按用途分子目录 - deliverable 引用资产用 root-relative path(
assets/figures/...)—— bundle 是 self-contained 且可移动的
这个设计的好处是反重复计算——比如你先用 paper2poster 出了一版海报,发现博客里某个段落需要重写;只要 paper2assets 的产物还在,下游 renderer 都不需要重跑。
5.2 paper2assets:唯一的 hard stage#
Reel 的所有 5 个 Skill 里,paper2assets 是唯一必须真的解析 PDF 的 stage,其他 4 个 renderer 都是”读 paper2assets 的产物 + 渲染”。
paper2assets 的流程(7 步):
- Cache check——如果 outdir 里已有 artifacts,直接 stop,不重复做。这避免每次跑都重新提取(每次要 5-10 min Claude tokens + 风险覆盖用户编辑)。
- Figure 提取——优先级:先试 source_figures.py(从 arXiv 源码或用户提供的链接拿原图),只有失败才 fallback 到 PDF 裁剪。
- PDF 文本 + captions 提取——
pdftotext -layout+ 检测 “Figure N: …” 模式。 - metadata.json——模型从 paper front matter 抽取 title / authors / institutes / venue / paper_url / code_url。
- paper_spec.md——模型按 9 个固定 section(Problem / Motivation / Contribution / Method / Dataset/Benchmark / Key Result / Ablation Study / Headline Numbers / Takeaway)生成结构化摘要,每节有 Necessary / Additional / Audio script 三个 subfield。
- Logos + QR——Wikimedia Commons 拉机构 logo + 论文 / 代码 URL 的 QR 码。
- build_package——sections.json + narration.json + manifest.json。
5.3 paper2poster:迭代式”填版面”#
paper2poster 是 Reel 里工程最复杂的 Skill——它把 paper_spec.md 渲染成单页 HTML 海报,导出 PDF + PNG,再用 bundled 的 html2pptx 子 Skill 生成可编辑的 PPTX(不是位图,是原生 shapes)。
它有两个 hard gate——任何一项不满足都必须重新迭代:
- 每张 figure fill ≥ 90%——海报上每张图必须在某个轴上填满 90-100% 的 section 区域。低于 90% 就是”小图章贴在卡片里”——明显的视觉缺陷。
- 每个 section 都在 FULL 区间——fullRatio 必须在 [0.90, 1.00]。OVERFLOW (>1.10) / SPILLAGE (1.00-1.10) / SPARSE (0.70-0.90) / EMPTY (<0.70) 都是不可接受的终态。
整个流程是一个measure → select → apply → review 循环,每轮根据 check_poster.py slack 和 check_poster.py polish 的反馈调整:
check_poster.py slack → section full ratio
check_poster.py polish → figure fill ratioplaintext具体调整方法有 16 种 reusable CSS widgets(callouts / key-stat / vs-compare / numbered-steps / timeline / chips / definition / highlight-table / pullquote / bento / equation / banner),按 5 种”shave-back”规则(cap tune / 收紧 prose / 缩短 caption / 重新平衡列)迭代。
💡 小吴笔记:paper2poster 的”迭代式填版面”是 2026 年 LLM agent 工程里非常漂亮的设计。它把”设计海报”这种创造性任务工程化为一个 measure-driven loop——LLM 在每轮根据精确反馈调整,而不是凭直觉自由发挥。这是 “LLM 写代码” 和 “LLM 做设计” 共同的未来——用 metrics / gates 替代人审。
一个有意思的细节:海报自带的 TTS 音频——打开 HTML 按 a 键,每个 section 都有 ~80 词的朗读 MP3,“Full Listen” 把这些拼接成完整的音频导览。默认用免费的 Microsoft Edge TTS,不需要 API key。这让海报本身从静态 PDF 升级成”可听的演示”——一个对盲人或通勤者都很友好的设计。
5.4 paper2blog:中英双语的”非翻译”设计#
paper2blog 把论文转成中英两个 .docx 文章。它最特别的设计是:两篇文章不是翻译,是”按各自调性重写”:
- 中文版(
_zh)按微信公众号调性写——克制、有节奏感、强调”读者能用得上什么” - 英文版(
_en)按研究博客调性写——中立、信息密度高、强调”读者能从技术上学到什么”
但两篇文章共享同一份证据图、图表、数字、引用链接——这是通过共享 paper2assets 的 figures/ 目录 + paper_spec.md 里的 fact-only 字段实现的。
输出目录:
<outdir>/
├── blog_zh.docx # 中文公众号版
├── blog_en.docx # 英文研究博客版
└── assets/
├── meta/ # QA reports / outlines / previews
└── figures/ # 共用的裁剪图(paper2assets 复用)plaintext5.5 paper2video:从 paper 到带讲解的视频#
paper2video 把论文转成讲解视频。输出很丰富:
<outdir>/
├── video.mp4 # 带字幕的最终视频
├── video_no_subtitles.mp4 # 无字幕版(给 paper2reel 用,避免双字幕)
├── video.pptx # 可编辑的 PPTX
└── assets/
├── audio/ # TTS 音频
├── captions/ # 字幕
├── frames/ # 每一帧 slide 的 PNG
├── clips/ # 原始视频片段
├── visual_cues/ # 视觉聚焦标注
├── timeline/ # 时间轴元数据
└── qa/ # QA 报告plaintext默认视觉聚焦风格叫 spotlight_laser——在每张幻灯片上有一个羽化聚光(feathered spotlight)+ 一个红色激光点(red laser-pointer dot),激光点跟着 narration 节奏移动。这个设计的目的是让观众的眼睛跟着讲解走——而不是被迫扫整张幻灯片。
它和 paper2poster 一样有一个 strict QA gate——必须通过 references/qa_gates.md 的硬约束才能算完成。
5.6 paper2reel:交互式发布页#
paper2reel 是 Reel 部分的”集大成”——它把 poster + video + blog + slide 拼成一个交互式 HTML viewer:
- 打开
reel.html,poster-first 展示 - hover 到某个 section 时高亮
- 双击打开同步 modal:video + slide 缩略图 + caption + 中英 blog 内容
- 自带 CC toggle(用
video_no_subtitles.mp4避免双字幕) - 提供 paper / code 的下载链接
本地验证必须用 skills/paper2reel/scripts/serve_reel.py——因为 video seeking 需要 HTTP Range 支持(直接 file:// 打不开)。
六、评测:IdeaSpark 真能超过专家吗?#
6.1 评测协议#
- 种子:100 个 ICLR-2026 Oral 论文的标题(去掉方法后缀 + 摘要里的瓶颈),每个作为 problem seed
- 对照:4 个系统在同一 seed 上各产出 1 张想法卡片
- IdeaSpark(Claude Opus 4.8)
- Opus-4.8 (bare)——裸模型 + 同一 prompt
- Opus-4.8 (self-gen)——裸模型 + self-generation prompt
- GPT-5.5 (bare)——GPT-5.5 + 同一 prompt
- 评分:
- Quality:
idea-qualityskill 评 Title / Motivation / Method 三轴,给 0-100 分 + verdict - Novelty:
scoop-checkskill 评 5 级 overlap
- Quality:
6.2 关键结果#
| 系统 | Quality | Novelty |
|---|---|---|
| IdeaSpark | 最高(在所有 21 个 ICLR 主领域都是第一) | 保持 novel |
| Opus-4.8 (bare) | 次低 | 较低(容易重复 anchor) |
| Opus-4.8 (self-gen) | 中间 | 高(但容易撞) |
| GPT-5.5 (bare) | 最低 | 较高 |
IdeaSpark 在 每个 ICLR primary area 都排第一——这说明 IdeaSpark 的优势不是某个特定领域赢,而是跨域一致地强。
6.3 为什么 IdeaSpark 强?#
把 IdeaSpark 的 5 阶段 workflow 反推,它胜在几个地方:
- 强制读全文——避免在摘要层面做出错误判断
- 15 模式 + 31 子模式的 taxonomy——不是让 LLM 自由发挥,而是给它一个**“已经被验证有效的模式空间”**
- Coherence gate 实际跑算法——比”评审”更可靠地发现逻辑漏洞
- 5 项 audit + collision 检索——在最后一关把”撞车”风险降到最低
- Hard validator + kill-switch integrity——用工程保证关键字段不被偷偷改
💡 小吴笔记:IdeaSpark 的成功本质上是**“用工程手段把 LLM 逼到正确路径”**。LLM 单跑容易出错的几个地方——幻觉、撞车、逻辑漏洞、不可证伪——分别被 Phase 0 全文、Phase 3 collision、Phase 2.3 coherence、Phase 3 audit 这几个 gate 堵住。这给所有”LLM 做创意任务”的项目一个范式:不要单押 LLM 的能力,用工程化 gate 做质量保障。
七、Skills 协议:Agent 走向实用化的关键基础设施#
最后我想单独聊一下**“Skills 协议”**本身——这可能是 ResearchStudio 这个项目最有战略意义的部分。
7.1 什么是 Skills 协议?#
每个 Skill 在文件系统里是一个目录:
skills/
├── idea_spark/
│ ├── SKILL.md # YAML frontmatter + 操作手册
│ ├── scripts/ # 可执行脚本
│ ├── references/ # 引用材料(prompt / rubrics / patterns)
│ └── ...
├── paper_search/
│ └── ...plaintextSKILL.md 的 YAML frontmatter 包含三件事:
name:skill 的标识符description:自然语言触发条件——告诉 Agent “什么时候用我”allowed-tools:这个 skill 可以调用的工具列表
当 Agent 运行时(比如 Claude Code),它会扫描所有 skills 的 frontmatter,根据用户输入决定调用哪个 skill。每个 skill 内部的 SKILL.md 正文是给 Agent 看的操作手册——不是给人看的文档。
7.2 Skills vs MCP / Tools / GPTs#
| 维度 | Skills (Claude Code) | MCP Tools | OpenAI GPTs |
|---|---|---|---|
| 协议 | Markdown + YAML | JSON-RPC | Apps SDK |
| 发现 | 扫描 SKILL.md frontmatter | 客户端列表 | GPT Store |
| 触发 | LLM 看 description 决定 | LLM 调 function call | 用户主动开启 |
| 文档 | 操作手册(agent 视角) | Schema + 函数签名 | 配置文件 |
| 复用 | 跨 agent(Claude / Codex) | 跨 LLM | 跨 ChatGPT 用户 |
| 典型例子 | ResearchStudio、Anthropic 官方 skills | 文件系统 / GitHub / 数据库 | 各种 GPT 应用 |
7.3 为什么 Skills 是 Agent 的未来?#
Skills 协议的三个关键优势:
- 自然语言触发——
description字段让 LLM 自己决定什么时候调哪个 skill,比硬编码 function call 列表更灵活 - 可执行手册——SKILL.md 不只是文档,是给 LLM 看的 SOP,可以包含 if/else / retry 策略 / 多阶段编排
- 跨 runtime 复用——同一个 skill 目录可以 symlink 到 Claude Code 和 Codex 的 skills 目录,一次开发多处运行
ResearchStudio 在 install.sh 里就是这么做的:
CLAUDE_SKILLS_DIR="${CLAUDE_SKILLS_DIR:-$REPO_ROOT/.claude/skills}"
CODEX_SKILLS_DIR="${CODEX_SKILLS_DIR:-$REPO_ROOT/.codex/skills}"
# 把选中的 skills symlink 到对应目录bash八、总结与启示#
回头看 ResearchStudio 的整体设计,它给”AI 做科研”这件事立了一个非常清晰的标准:
| 维度 | 旧做法 | ResearchStudio 新做法 |
|---|---|---|
| 任务边界 | 一个工具做一件事 | 多个 Skills 串成完整 workflow |
| 协议 | Function call 列表 | Skills(Markdown + YAML) |
| 质量保证 | 凭感觉 + benchmark | 多阶段 hard gate + coherence trace + cross-run dedup |
| 可复用 | 每次重做 | Output Contract + shared asset bundle |
| 失败处理 | 默默出错 | 显式 do_not_generate / phase_3_failed / retry rule |
| 可解释 | 黑箱 LLM 调用 | 每个 phase 的 prompt + 中间产物都可审计 |
给做 Agent / Skills / 科研工具的工程师的几点启示#
- “Faithful by construction”比”声称事实性”重要。IdeaSpark 强制”每个论断有引用或显式标记为模型补全”,把事实性从 LLM 的能力转移到系统约束。这是所有”LLM 做严肃任务”的范式。
- Skills 协议是 Agent 走向实用化的关键基础设施。把”怎么做”以可执行手册(SKILL.md)的形式给 LLM,比硬编码 function call 灵活得多。Anthropic、OpenAI、Microsoft 都押注 Skills / Apps / GPTs 这条路不是巧合。
- Context discipline 是长流程 Agent 的命门。IdeaSpark 的”每 phase isolated context + artifact 持久化”是任何”超过 5 步 LLM 调用”的项目必须解决的设计问题。
- Coherence gate 用”执行”而不是”评审”。让 LLM 在小实例上真的算一遍,比让它”自己审自己”靠谱得多。这是 PaperQA2 的 render-then-verify 在 Agent 编排层的同类思想。
- 跨 run dedup + signature vs alias 双通道——这些”看着很小但很关键”的设计是真正能用的系统和 demo 的分水岭。IdeaSpark 把”撞车检测”做成两层(signature 10mo / alias 48mo),就是为了覆盖”renamed ancestor”这种盲区。
- Output Contract 是 pipeline 工程的灵魂。paper2assets → paper2poster → paper2video → paper2blog → paper2reel 共享同一个 bundle,反重复计算 + 反版本不一致——这是任何”多 stage pipeline”项目应该借鉴的设计模式。
- 用 metrics / gates 替代人审。paper2poster 的”figure fill ≥ 90% / section full 0.90-1.00”两个 hard gate 把”海报做得好不好”从主观判断变成 objective measure。这是 LLM 时代所有 creative work 的未来方向。
局限与未来#
作者也提到几个未解决的问题:
- OOD 边界——哪些方向应该
do_not_generate还需要更多领域知识 - Ideation 模式的可扩展性——15 模式 + 31 子模式覆盖了 ML 主流,但物理 / 化学 / 生物等可能需要新的模式
- TTS 质量——默认 Microsoft Edge TTS 是免费的但语调比较平,复杂讲解场景可能需要更强的 TTS
- Reel 的本地化——目前双语只支持中英,西班牙语版也在做,但需要更多语言支持
- Agent runtime 的兼容性——目前只支持 Claude Code 和 Codex,其他 runtime(Cursor / Cline 等)需要适配
参考资料: