1. 项目概述从零到一的AI科研自动化革命如果你是一名AI领域的研究者或工程师一定经历过这样的痛苦循环有了一个绝妙的研究想法兴奋地打开编辑器然后就被无尽的代码调试、实验排队、数据整理和论文撰写所淹没。从灵感到一篇结构完整、数据翔实的论文中间隔着无数个不眠之夜和反复试错。NanoResearch的出现正是为了终结这个循环。它不是一个简单的“AI写作助手”而是一个端到端的自主AI科研引擎能够将你的研究想法通过一个九阶段的深度流水线自动转化为一篇包含真实实验数据和完整LaTeX源码的学术论文。简单来说你只需要提供一个研究课题比如“Adaptive Sparse Attention Mechanisms”NanoResearch就能自动完成从文献调研、实验设计、代码生成、GPU训练、结果分析、图表绘制到论文撰写的全部流程。最核心的差异在于它真的会运行代码。论文里的每一张图表、每一个数据点都来自于在本地GPU或SLURM集群上实际执行的训练任务而不是大语言模型LLM的“合理想象”或编造。这从根本上解决了当前AI辅助科研工具“纸上谈兵”的痛点将自动化从文本生成推进到了实验验证的层面。这个项目适合所有希望提升科研效率的人无论是想快速验证想法的资深研究员需要批量生成基准测试Benchmark结果的工程师还是正在为论文初稿发愁的研究生。它为你构建了一个完整、可追溯、可复现的自动化工作空间让你能将宝贵的精力聚焦在最具创造性的部分——提出问题和定义方向上。2. 核心架构与九阶段流水线深度解析NanoResearch的强大源于其精心设计的模块化流水线架构。它不是一个单一的黑箱模型而是一个由多个智能体Agent协同工作的系统每个智能体负责科研流程中的一个特定环节并通过统一的状态机进行编排。理解这个流水线是高效使用它的关键。2.1 九阶段流水线详解整个流程被分解为九个顺序执行但支持断点续跑的阶段形成一个完整的闭环第一阶段IDEATION构思与文献检索这是整个研究的起点。系统会基于你提供的课题调用OpenAlex和Semantic Scholar的API自动检索相关的学术文献。它的目标不是简单地罗列论文而是进行“研究空白发现”——分析现有工作的局限性并提出一个具体、可验证的科学假说。同时它会收集一批高质量的必引文献为后续的论文写作打下基础。这个阶段决定了整个研究的方向和质量。第二阶段PLANNING实验方案设计有了假说接下来就需要设计实验来验证它。Planning Agent会将抽象的研究想法转化为一份极其详细的“实验蓝图”。这份蓝图会明确指定数据集使用哪个公开数据集或如何构建合成数据。基线模型Baselines需要与哪些经典或SOTA方法进行对比。评估指标使用准确率、F1分数、BLEU还是其他特定指标。消融实验Ablation Studies计划对模型的哪些组件如注意力头数、层数、特定模块进行消融以验证其有效性。 这个蓝图是后续所有编码和执行阶段的“宪法”确保了实验的系统性和可比性。第三阶段SETUP环境准备在这个阶段系统会为即将开始的实验创建一个独立、干净的工作空间。它会根据实验蓝图自动处理环境依赖例如生成requirements.txt或environment.yml文件确保代码的可复现性。如果实验需要下载特定的预训练模型或数据集它也会尝试自动完成这些准备工作。第四阶段CODING代码生成这是将蓝图变为现实的第一步。Code Generation Agent会根据实验方案生成完整、可运行的Python代码。这不仅仅是一个训练脚本而是一个小型的项目工程通常包括数据加载与预处理模块。模型定义基于PyTorch或TensorFlow。训练循环Trainer包含优化器、损失函数、学习率调度器。验证和测试逻辑。日志记录通常使用TensorBoard或WandB。 生成的代码力求简洁、模块化并包含必要的注释便于后续人工审查和调试。第五阶段EXECUTION实验执行——核心差异化环节这是NanoResearch的“灵魂”。它不仅仅是生成代码而是真正地执行它。系统会自动检测可用的计算资源本地GPU模式如果检测到本地有可用的NVIDIA GPU它会直接启动训练进程并实时监控日志和资源消耗。SLURM集群模式对于需要大量计算资源的任务它会自动生成符合规范的sbatch提交脚本将任务提交到高性能计算集群并持续监控作业状态Pending, Running, Failed, Completed。 更强大的是它的“自动调试与重试”机制。如果训练因代码错误如张量维度不匹配或资源问题如OOM而失败系统会分析错误日志尝试自动修复问题例如调整批量大小然后重新提交任务。这个能力极大地提升了自动化流程的鲁棒性。第六阶段ANALYSIS结果分析训练完成后系统会解析训练过程中产生的日志文件如TensorBoard event files或文本日志提取关键指标训练损失、验证准确率等并将其结构化为清晰的实验证据。它会对比不同实验设置如不同模型、超参数的结果并初步判断假说是否得到数据支持。第七阶段FIGURE_GEN图表生成“一图胜千言”。此阶段负责生成论文所需的所有配图包括方法架构图根据生成的代码自动或调用图像生成模型如Gemini绘制模型结构示意图。结果对比图将Analysis阶段的结构化数据通过Matplotlib或Seaborn生成折线图、柱状图直观展示主实验结果和消融实验。可视化图例如对于CV任务生成模型注意力热力图对于NLP任务生成词嵌入投影图等。 所有图表都基于真实的实验数据渲染并保存为高分辨率的矢量图如PDF、SVG或位图如PNG方便嵌入LaTeX。第八阶段WRITING论文撰写基于前面所有阶段的产出——研究假说、实验方案、代码、实验结果和图表——Writing Agent开始撰写完整的学术论文。它使用Jinja2模板引擎将内容填充到预定义的LaTeX模板如NeurIPS、ICML、arXiv格式中。论文会包含标准的IMRaD结构引言、相关工作、方法、实验、结果与讨论、结论。所有引用都会自动生成BibTeX条目并插入正确的位置。第九阶段REVIEW审稿与修订最后系统会扮演“审稿人”和“作者”的双重角色对生成的论文草稿进行多轮审查。它会检查逻辑一致性、实验描述的清晰度、图表与正文的对应关系、语法错误等并提出修订意见。然后系统会根据这些意见自动修订论文形成更完善的版本。2.2 状态管理与断点续跑整个流水线的状态由一个核心的manifest.json文件管理。这个文件记录了每个阶段的执行状态Pending, Running, Success, Failed、输入输出、以及产生的所有中间文件如检索到的论文PDF、实验日志、图表文件的路径。这种设计带来了一个至关重要的特性断点续跑。 如果流程在任何阶段因网络超时、API限制或代码错误而中断你无需从头开始。只需执行nanoresearch resume命令系统就会读取manifest.json自动定位到最后一个未完成的阶段并从那里继续执行。这对于需要数小时甚至数天运行的完整实验流程来说是保证可用性的基石。3. 三种驱动模式实战指南NanoResearch提供了三种互补的使用方式适应不同的用户习惯和技术环境。你可以根据场景灵活选择或组合使用。3.1 模式一Python CLI命令行接口—— 全功能控制这是功能最全面、最灵活的模式适合习惯在终端工作、需要对流程进行深度定制的用户。安装与配置首先克隆仓库并安装依赖。建议使用开发模式安装以便于后续贡献代码或自定义Agent。git clone https://github.com/OpenRaiser/NanoResearch.git cd NanoResearch pip install -e .[dev]接下来是核心的配置步骤。你需要创建一个配置文件~/.nanobot/config.json。最关键的是配置一个兼容OpenAI API的端点。如果你使用OpenAI官方API可以直接填写其地址和密钥。但更经济实惠的方案是使用诸如DeepSeek、Groq等提供的兼容端点或者本地部署的Ollama、vLLM等开源模型服务。{ research: { base_url: https://api.deepseek.com/v1/, // 例如DeepSeek的端点 api_key: your-deepseek-api-key-here, template_format: neurips2025, execution_profile: local_quick, // ... 其他配置 ideation: { model: deepseek-chat }, planning: { model: deepseek-chat }, code_gen: { model: deepseek-coder }, // 代码生成建议使用代码专用模型 writing: { model: deepseek-chat } } }实操心得对于code_gen阶段强烈建议使用代码能力强的专用模型如deepseek-coder、claude-3-5-sonnet或gpt-4o。这能显著减少生成的代码中的语法错误和逻辑漏洞提高EXECUTION阶段的一次成功率。运行你的第一个研究配置完成后一个最简单的启动命令如下nanoresearch run --topic Graph Neural Networks for Molecular Property Prediction --verbose--verbose参数会让你看到每个阶段的详细日志输出。首次运行会经历完整的九阶段流程耗时取决于实验复杂度和模型速度可能从几十分钟到数小时不等。高级用法与技巧跳过实验阶段如果你只想快速生成一篇论文的“架子”或进行文献综述可以跳过耗时的实验环节。在配置文件中设置skip_stages: [SETUP, CODING, EXECUTION, ANALYSIS]系统将直接基于假设和现有知识生成论文。模型路由你可以在配置中为不同阶段指定不同的模型实现性价比和效果的最优组合。例如让便宜的模型处理文献检索和实验设计让强大的模型负责代码生成和论文润色。工作空间管理使用nanoresearch list查看所有历史会话使用nanoresearch inspect --workspace path深入查看某个工作空间的所有中间产物这对于调试和复现至关重要。3.2 模式二Claude Code模式 —— 零配置交互如果你拥有Claude Code的访问权限这是最便捷的入门方式。你无需配置任何API密钥或环境变量直接在Claude Code的聊天界面中就能驱动整个研究流水线。工作原理在Claude Code模式下Claude Code本身成为了执行引擎。它利用自身的WebSearch工具进行文献检索用Bash工具来执行生成的Python代码、提交SLURM作业、编译LaTeX并通过文件读写工具来管理整个工作空间。所有逻辑都复用项目已有的Python代码库Claude Code只是作为一个“智能执行器”来调用它们。快速开始在Claude Code中打开已克隆的NanoResearch项目目录然后只需输入一条命令/project:research Few-shot learning for medical image segmentationClaude Code会自动理解这是一个研究项目请求并启动完整的流水线。它会逐步向你汇报每个阶段的进展并在遇到需要选择时例如选择哪个GPU与你交互。可用命令集Claude Code模式支持一系列以/project:开头的快捷命令对应流水线的不同阶段/project:ideation topic仅执行文献检索和假说生成。/project:planning基于已有的构思产出实验方案。/project:experiment执行环境准备、代码生成和实验运行阶段3-5。/project:writing基于实验结果生成图表和撰写论文。/project:status查看当前流水线的状态。/project:resume从断点恢复执行。注意事项在Claude Code模式下生成论文架构图FIGURE_GEN阶段可能受限因为Claude自身不直接生成图像。一种变通方案是在此阶段让Claude Code调用一个外部的图像生成API如DALL-E 3或Midjourney的API来创建图片。项目文档中提到了可通过Bash调用“Nano Banana”系列图像API来实现。3.3 模式三飞书机器人 —— 移动端与协同办公对于希望随时随地触发研究、或在团队内共享进度的用户飞书机器人提供了绝佳的解决方案。你可以像与同事聊天一样在飞书群里向机器人发送指令。配置与启动配置机器人需要你在飞书开放平台创建一个自定义应用获取App ID和App Secret。然后将它们设置到环境变量或配置文件中。export FEISHU_APP_IDcli_xxxxxx export FEISHU_APP_SECRETxxxxxx # 启动机器人服务 nanoresearch feishu -v启动后机器人会建立一个WebSocket长连接这意味着你不需要拥有公网IP的服务器来接收回调简化了部署。交互式研究在飞书对话中你可以直接发送/run 基于对比学习的视频异常检测方法研究/status查看当前任务进度/list列出所有历史研究/export将最近完成的研究论文打包发给我机器人支持对话记忆你可以进行多轮交互例如询问“实验为什么失败了”它会去查询日志并给出分析。当流水线全部完成后它会自动将生成的paper.pdf作为文件发送到对话中。踩坑记录飞书机器人的权限配置是关键。确保在开放平台后台为应用开启了“获取与发送单聊、群组消息”以及“上传文件”的权限。否则机器人将无法正常接收指令或发送结果。4. 模型选型、成本控制与高级配置如何以合理的成本获得最佳的输出质量是使用任何AI工具的核心问题。NanoResearch的模块化设计让你可以精细地控制每个阶段的模型花费。4.1 分阶段模型路由策略不同阶段对模型能力的需求差异很大。以下是一个经过实践验证的性价比策略阶段核心任务与挑战推荐模型效果优先推荐模型成本优先配置要点IDEATION广泛检索、归纳、提出创新假说。需要较强的逻辑推理和领域知识。Claude 3.5 Sonnet / GPT-4oDeepSeek-V3.2 / Qwen-Max温度Temperature可设高些0.6-0.8鼓励发散思维。PLANNING设计严谨、可执行的实验方案。需要极强的逻辑性和结构性。Claude 3.5 SonnetDeepSeek-V3.2温度应设低0.1-0.3确保方案的稳定性和可靠性。CODE_GEN生成正确、高效、可运行的代码。这是后续实验的基石。GPT-4o / Claude 3.5 SonnetDeepSeek-Coder必须使用代码专用模型。温度设低0.1最大token数给足。WRITING撰写符合学术规范、逻辑清晰的论文。需要优秀的文笔和结构能力。Claude 3.5 Sonnet / GPT-4oDeepSeek-V3.2可根据需要调整温度控制文风的创造性0.4-0.7。FIGURE_GEN根据描述生成方法架构图。DALL-E 3 / Midjourney API / Gemini 1.5 Flash可跳过用代码绘制结果图此阶段独立通常需配置单独的图像API密钥。REVIEW多角度批判性审阅。需要细致和挑剔。Claude 3.5 Sonnet / GPT-4oDeepSeek-V3.2温度适中0.3-0.5模拟不同审稿人视角。在config.json中你可以为每个阶段单独指定模型{ research: { ideation: { model: deepseek-chat }, planning: { model: claude-3-5-sonnet-20241022 }, code_gen: { model: gpt-4o }, writing: { model: claude-3-5-sonnet-20241022 }, figure_gen: { model: dall-e-3, image_backend: openai // 指定图像后端 } } }4.2 成本估算与优化实战费用主要产生于调用大模型API和GPU计算资源。以下是一个粗略估算纯文本生成跳过实验如果只运行到WRITING阶段消耗的主要是API Token。使用DeepSeek等低成本模型完成一篇论文的生成大约需要50万-100万Token费用在0.5-2美元之间。如果混合使用Claude/GPT费用可能升至5-15美元。完整流水线含实验费用大头转向GPU。例如在AWS上一台g5.xlarge单A10G实例每小时约1美元。一个中等复杂度的模型训练2-4小时加上API费用总成本可能在3-10美元。如果在本地或已有集群运行则GPU成本为零仅需支付API费用。成本控制实战技巧本地优先充分利用本地GPU进行实验这是成本最低的方式。模型降级在IDEATION、PLANNING等对精度要求相对较低的阶段果断使用DeepSeek、Qwen等国产优秀模型成本仅为Claude/GPT的十分之一甚至百分之一。设置Token上限与超时在配置中为每个阶段设置合理的max_tokens和timeout避免因模型“跑飞”而产生意外高费用。善用“跳过实验”模式在头脑风暴和方案设计阶段先用此模式快速生成论文草稿和实验方案人工审查确认方向可行后再开启完整流水线进行实验验证避免盲目实验浪费资源。4.3 执行配置与集群集成execution_profile配置决定了系统如何利用计算资源fast_draft所有阶段都快速执行可能使用更小的模型或简化实验用于快速产出草案。local_quick默认配置。优先尝试在本地GPU执行如果资源不足或任务太重会提示用户或尝试降级。cluster_full为重量级实验设计。系统会倾向于生成SLURM作业脚本提交到高性能计算集群。SLURM集群集成详解 要让NanoResearch在你的集群上工作需要在配置或环境变量中提供SLURM的相关信息例如分区partition、账户account、QOS等。系统生成的sbatch脚本会包含这些参数。你需要确保运行NanoResearch的节点能够通过sbatch命令提交作业并且有权限访问共享存储如NFS以便流水线能访问到任务输出的日志和模型文件。5. 输出产物、自定义与社区生态5.1 剖析最终输出一个完整的可复现研究包运行结束后使用nanoresearch export命令导出的远不止一个PDF文件。它是一个完整的、可归档、可复现的研究工作空间。my_adaptive_attention_paper/ ├── paper.pdf # 编译好的论文PDF ├── paper.tex # LaTeX源代码 ├── references.bib # BibTeX参考文献库 ├── figures/ # 所有矢量图和位图 │ ├── model_architecture.pdf │ ├── main_results.png │ └── ablation_study.svg ├── code/ # 完整的实验代码 │ ├── train.py │ ├── model.py │ ├── dataset.py │ └── requirements.txt ├── data/ # 处理后的数据或数据索引 │ └── processed/ ├── experiments/ # 训练日志、模型检查点 │ └── run_20250321_142356/ └── manifest.json # 整个研究过程的元数据记录这个结构遵循了现代可复现研究的最佳实践。任何人拿到这个包都可以根据manifest.json和代码清晰地复现整个研究流程从数据准备到最终图表生成。5.2 自定义与扩展打造你的专属科研引擎NanoResearch是高度可扩展的。自定义Agent如果你对某个阶段比如实验分析有特殊要求可以继承基类重写execute方法实现你自己的逻辑并在配置中指定使用你的自定义Agent。添加论文模板在nanoresearch/templates/目录下你可以添加新的Jinja2 LaTeX模板。模板需要定义好占位符系统会自动将内容填充进去。这让你可以轻松适配CVPR、ACL等任何会议或期刊的格式。集成新的工具例如你可以将数据可视化从Matplotlib切换到Plotly或者在代码生成阶段集成你团队内部的代码库工具。5.3 社区、贡献与未来NanoResearch是一个活跃的开源项目。其核心价值在于社区的共同建设和分享。问题反馈如果你在使用中遇到Bug或有功能建议在GitHub Issues中提出是最直接的帮助方式。清晰的复现步骤和日志信息能极大加快解决速度。贡献代码项目结构清晰欢迎提交Pull Request (PR)。常见的贡献包括修复文档错别字、增加新的示例、实现一个新的论文模板、优化某个Agent的提示词Prompts等。分享用例在项目的Discussions板块分享你用NanoResearch完成的有趣研究无论是成功的还是失败的都能给其他用户带来宝贵参考。最后一点个人体会使用NanoResearch最大的心态转变是从“执行者”变为“规划者”和“评审者”。你的核心工作不再是埋头写代码和调参而是提出清晰、有价值的研究问题并审阅AI生成的方案、代码和论文初稿给出高阶的反馈和指导。它并没有取代研究者而是将研究者从重复性劳动中解放出来去从事更具创造性和战略性的思考。刚开始使用时不要期望它第一次就能生成可直接投稿的完美论文。把它看作一个不知疲倦、执行力极强的科研助理它能帮你完成90%的“脏活累活”而剩下的10%——最具洞察力的分析、最精妙的论证、最画龙点睛的表述——依然需要你的智慧来最终完成。