QJHWC/PaperForge
End-to-end AI-powered academic paper writing system — from idea generation and literature search to experiment execution, result backfill, and LaTeX paper compilation. Supports multi-LLM routing, SSH remote training, incremental sync, and anti-AI-detection writing style.
PaperForge Research OS v3 – 结构化的 AI 增强研究助手
它是什么
PaperForge 是一个开源的“研究操作系统”,将基于大型语言模型(LLM)的写作代理、实验管理和可重现的发布流程串联起来。它以 Python(3.10-3.12)构建,并将每个声明、证据、代码工件和实验结果存储在 SQLite 支持的科学记忆中。系统可通过命令行界面(CLI)或轻量级浏览器 UI 驱动,但所有操作都汇入单一运行时服务(PaperForgeService)。
核心概念及其重要性
| 概念 | 功能 | 重要性 |
|---|---|---|
| 统一研究 OS | 单一运行时(ResearchOSRuntime)处理写作、规划、实验、分析、可视化和发布。 |
消除“工具链跳跃”,这通常迫使研究人员在分离的脚本、笔记本和 LaTeX 工具之间切换。 |
| 证据优先流程 | 论文中的每个公开陈述都必须有 claim_id,链接到存储的证据(代码、数据、指标、许可证等)。 |
保证可追溯性,并让审查者或审计员更容易验证结果。 |
| 受控实验生命周期 | 提案 → 静态检查 → 小型实验 → 完整实验,每个阶段都需要明确批准。 | 防止意外浪费资源,并在昂贵的训练或大规模计算前强制执行审查关卡。 |
| 多后端计算 | 通过单一接口访问本地、Docker、SSH、Slurm、Kubernetes、Cloud-SSH 后端。 | 研究人员可以在笔记本电脑、集群或云之间移动,而无需重写脚本。 |
| 政策驱动的执行配置文件 | writing-only、research、full – 每个配置文件禁用一组操作(例如,权重加载、远程计算)。 |
为仅允许特定功能的环境(例如,安全工作站)提供安全网。 |
| 带声明关卡的发布引擎 | LaTeX 编译 → PDF 渲染 → 布局诊断 → 受限修复 → 不变量验证。 | 自动化繁琐的“编译-检查-修复”循环,并确保最终 PDF 与记录的声明相符。 |
主要组件(高级视图)
CLI / UI → PaperForgeService
├─ ExecutionPolicy (profiles)
├─ WorkflowEngine
│ └─ ResearchOSRuntime
│ ├─ Typed Agents (LLM writers, reviewers, etc.)
│ ├─ Provider Registry (model/key handling)
│ ├─ Compute Backends (Docker, Slurm, …)
│ └─ Domain Plugins (CV, NLP, RL, Bio, …)
├─ SQLite Scientific Memory (claims, evidence, runs)
├─ Artifact Registry (datasets, checkpoints, figures)
└─ Publication Engine → Release Verifier
所有持久化数据都位于 <workspace>/.paperforge/ 下(SQLite 数据库、运行时状态、发布清单等)。
典型工作流程
- 创建工作区 – 包含 LaTeX 源代码、参考文献和可选的
writing-job.json清单的文件夹。 - 运行配置文件 – 例如
paperforge run --profile writing-only …让 LLM 起草章节、插入引用并编译 PDF。 - 研究配置文件 – 添加文献搜索、提案创建,以及必须在运行任何实验前批准的 提案 对象。
- 完整配置文件 – 批准后,您可以在任何支持的后端启动实验,自动记录代码、数据、超参数和每个工件的 SHA-256 哈希。
- 发布 –
paperforge publish执行声明关卡、LaTeX 编译、PDF 渲染和布局诊断。输出位于dist/。 - 发布 –
paperforge release重新验证每个关卡(秘密扫描、工件哈希、声明覆盖率),并将工作流程标记为COMPLETED。
如何使用 AI
- LLM 代理(“仅写作”和“研究”代理)通过 OpenAI 兼容 API 调用名为 bailu-turing 的提供者。系统会移除不支持的字段(例如
seed、n),并可通过OPENAI_BASE_URL指向自定义网关。 - 代理是类型化的 – 运行时根据选定的执行配置文件,知道代理是否允许请求模型、运行代码,或仅读取证据。
- 提示工程隐藏在
paperforge run命令后面;用户只需提供高级指示(标题、摘要等)。
安装与开始使用(快速回顾)
# clone and checkout v3 tag
git clone https://github.com/QJHWC/PaperForge.git && cd PaperForge && git checkout v3.0.0
# create a venv and install the writing extras
python3.12 -m venv .venv && source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e "[writing]"
# optional: add experiment/research extras if you need compute back‑ends
python -m pip install -e "[research,experiment]"
在 ~/.config/paperforge/credentials.json 中设置您的模型密钥(chmod 600)。开箱即用的唯一支持提供者是 bailu-turing。
安全与许可说明
- 此项目仅供研究使用 – README 包含不得商业使用的免责声明。
- 所有秘密在记录前都会被编辑;Docker/SSH 上传已列入白名单并扫描秘密。
- 许可:PaperForge License 1.0 – 免费供个人、学术、非商业使用;禁止商业 SaaS 或营利性再分发。
TL;DR
PaperForge v3 是一个基于 Python 的研究操作系统,结合了 LLM 驱动的论文草稿撰写,以及严格审计的实验跟踪和发布流程。它将每个声明及其证据存储在 SQLite 数据库中,强制执行需批准的运算,并可通过可重现、经声明检查的发布流程发布 LaTeX 论文。非常适合想要从想法到验证 PDF 的单一、可审计工作流程的团队。
相关
- 项目
- 项目
- 项目
- 项目