笔记
0工具
0此页用于记录用户反馈问题后的每一次改进
关于
“写笔记”支持四种格式——Word 文档、Excel 表格、Markdown、纯文本,起稿或二次编辑时都能随时切换,同一篇笔记想用哪种形态来记,都由你说了算。
md、txt、csv、json 这类纯文本则原样载入,不做多余加工。拿一张现成的表倒进来、改几笔、再导出去,等于白用一台免费的格式转换器。
要带走就在右上角点“下载”,可导出 PDF、Word、Markdown、Excel、TXT 等格式;列表卡片“⋯”菜单里,也有同样的下载入口。
在“工具”页点“+ 上传工具”即可发布:填好名称与链接,再用 Markdown 把使用方法写清楚——能解决什么问题、怎么装、怎么用,比堆介绍实在。
要分发安装包就一并上传压缩包(ZIP、RAR、7Z、TAR.GZ,最大 35MB),别人在详情页一键下载;只放链接不带附件也可以。
工具按大家的收藏热度排序,好用的自然会被顶上来。发布后可在详情页或卡片菜单里编辑、下架。
写笔记时勾上“隐藏”,这篇就只存在于你自己的账号里:不进列表、不进搜索、不上首页精选,也不会出现在任何公开的页面,链接发给别人同样打不开。
适合放密码、草稿、日记这类只给自己看的内容;想公开,去“发布”打开它,把“隐藏”的勾去掉再保存,之后编辑会默认保持原状态,不会悄悄变回公开。
不想公开、只想临时给人看:点“分享”生成一条带密码和有效期的链接,到期自动失效,你也能随时撤销。
你的内容会同时保存在多个副本上,系统定期做备份与完整性校验,再配合异地容灾机制:就算某台机器出问题,数据也不会丢,可以长期放心存放;特别重要的资料,仍建议你另外再留一份备份。
全站跑在容器化、模块化的现代架构上,更新、部署、回滚都很快,扩展性和稳定性都按长期运营的标准来设计(Built for reliability, designed to scale)。
这个网站最早只是一个人的笔记仓库,后来慢慢长成现在的知识中枢。设计上很克制——没有广告、没有追踪、没有推荐算法,只是干干净净地存放一些东西;既然做好了,就公开出来,万一有人用得上呢。
不做大而全,不做平台梦,保持简单、保持克制、保持好奇。所有内容都由用户贡献、由用户维护:不会突然冒出付费墙,不会在角落塞广告位,也不会把你的数据卖给第三方。
产品会持续迭代,站内日志页记录着每一次改动,改了什么都有迹可循;想了解这个站是怎么一步步走到今天的,翻翻日志就能看到来龙去脉。
如果在这里看到涉嫌违规的内容,点对应卡片右侧的“举报”按钮就能提交,我们会尽快核实处理;也谢谢你花一点时间,一起把这里维护干净。
趋势
PRAXIST:让研究可执行、可验证的自主科研系统深度评测
PRAXIST 是一个将自然语言研究问题转化为可执行、可复现计算机实验的自主科研系统。
一、项目定位:研究从“阅读”到“执行”的范式跃迁
在传统科研流程中,研究者通常需要经历:文献调研 → 假设提出 → 实验设计 → 代码实现 → 数据收集 → 结果分析 → 论文撰写。这一链条中,实验实现环节往往占据 70% 以上的时间,且高度依赖编程技能。更关键的是,大多数论文的“可复现性”极差——据 Nature 调查,超过 70% 的科学家曾尝试复现他人实验但失败。
PRAXIST(源自希腊语“πρᾶξις”,意为“实践、行动”)由 sapientinc 团队开发,是一个自主研究系统,其核心哲学是:研究不应该只是文字的堆砌,而应该是可执行的程序。它接受自然语言描述的研究问题,自动生成、执行、验证并总结计算机实验,最终输出一份包含可复现代码、实验数据和结论的完整研究报告。
该项目在 GitHub 上已获得 2047 颗星,语言为 Python,正处于快速迭代期。它并非一个简单的“论文自动生成器”,而是一个端到端的科研自动化框架,其输出不仅是文字,更是可运行的代码和真实的数据。
二、解决的核心痛点
1. 科研复现危机
传统论文中,方法描述往往含糊其辞,关键参数、数据预处理细节、随机种子等常被省略。PRAXIST 强制要求所有研究步骤以代码形式落地,每个结论都有对应的可执行脚本和数据支持,从根本上杜绝“不可复现”的问题。
2. 研究者编程负担过重
许多领域专家(如生物学家、经济学家)有极强的研究直觉,但编程能力有限。PRAXIST 允许他们用自然语言描述研究设计,系统自动生成 Python 代码并执行,极大地降低了实验门槛。
3. 实验迭代效率低下
传统方式下,修改一个参数需要手动编辑代码、重新运行、记录结果。PRAXIST 支持自然语言指令修改实验(如“将学习率改为 0.001 并重新运行”),系统自动完成代码修改、执行和结果对比。
4. 研究过程不透明
PRAXIST 记录每一次实验的完整日志、代码版本、依赖环境和输出数据,形成可追溯的研究轨迹,便于审计和同行评审。
三、安装与快速上手
环境要求
- Python 3.9+
- 建议使用虚拟环境
- 需要 OpenAI API Key(或兼容的 LLM API)
安装步骤
bash
克隆仓库
git clone https://github.com/sapientinc/PRAXIST.git
cd PRAXIST
创建虚拟环境
python -m venv venv
source venv/bin/activate # Windows 下为 venv\Scripts\activate
安装依赖
pip install -r requirements.txt
设置 API Key(也可以使用环境变量)
export OPENAI_API_KEY="your-api-key"
第一个研究任务:示例
假设你想研究“不同激活函数对 MNIST 分类准确率的影响”,只需创建一个研究描述文件(或直接传入字符串):
python
from praxist import ResearchAgent
初始化研究代理
agent = ResearchAgent()
定义研究问题(自然语言)
research_question = """
在 MNIST 数据集上,比较 ReLU、Tanh 和 SiLU 三种激活函数
对两层全连接神经网络分类准确率的影响。使用相同的网络结构:
隐藏层 128 个神经元,Adam 优化器,学习率 0.001,训练 5 个 epoch。
请输出每个激活函数对应的测试集准确率,并分析差异。
"""
执行研究
report = agent.run(research_question)
输出研究报告(含代码、结果、分析)
print(report.summary())
运行后,PRAXIST 会:
- 将自然语言问题解析为研究计划(包含实验组、对照组、评估指标)
- 自动生成完整的 Python 实验脚本(使用 PyTorch 或 TensorFlow)
- 在本地执行实验(或根据配置在远程环境执行)
- 收集结果数据,生成可视化图表
- 调用 LLM 对结果进行统计分析和文本解释
- 生成包含所有代码、数据、图表的 Markdown 研究报告
高级用法:迭代式研究
python
基于上次结果继续研究
agent.iterate("将网络加深到 3 层,看看效果是否更好")
指定实验环境(如使用 GPU)
agent = ResearchAgent(environment={"gpu": True, "memory": "16GB"})
自定义评估指标
agent.add_metric("F1_score", callback=my_f1_fn)
四、核心架构与亮点详解
1. 多阶段研究管线
PRAXIST 内部采用模块化管线设计:
- 理解模块:使用 LLM 将自然语言研究问题解析为结构化的研究规范(ResearchSpec),包括变量、控制组、数据来源、评估方法。
- 规划模块:生成可执行的实验计划,拆分为多个步骤(数据加载 → 模型定义 → 训练 → 评估 → 统计分析)。
- 代码生成模块:基于实验计划生成 Python 代码,支持多种深度学习框架(PyTorch、TensorFlow、scikit-learn)。
- 执行引擎:在沙箱环境中安全执行代码,捕获日志、错误、资源使用情况。
- 结果分析模块:对实验输出进行统计分析(t 检验、置信区间等),并生成图表。
- 报告生成模块:将代码、结果、分析整合为结构化报告,支持导出为 Markdown、PDF、Jupyter Notebook。
2. 可执行性验证机制
这是 PRAXIST 最独特的亮点。系统在生成报告前,会重新运行所有关键代码以验证结果可复现。如果代码有随机性(如随机初始化),系统会固定种子并记录,确保每次运行结果一致。
3. 自适应代码修复
当生成的代码运行时出错,PRAXIST 不会直接失败,而是将错误信息反馈给 LLM,自动尝试修复代码逻辑,最多重试 5 次。这使得它在面对复杂实验时具有较高的鲁棒性。
4. 实验版本控制
每次迭代研究都会创建一个新的实验版本,记录代码 diff、参数变化、结果对比。研究者可以随时回滚到之前的实验版本。
5. 资源感知执行
系统会检测当前机器的 GPU 可用性、内存限制,自动调整 batch size、数据加载策略等,避免 OOM 错误。
五、适用场景
1. 机器学习研究者
快速验证新想法,比如“如果我把 Transformer 的 attention head 数从 8 改成 16,在 GLUE 基准上会怎样?”无需手动编写完整实验代码,只需描述改动。
2. 数据科学竞赛(Kaggle)参与者
在时间紧迫的竞赛中,PRAXIST 可以并行探索多个特征工程思路或模型调参方向,并自动生成对比报告。
3. 学术论文复现
当论文提供了模糊的方法描述时,可将论文中的关键段落直接输入 PRAXIST,让它生成可运行的实验代码,快速验证论文结论。
4. 教学场景
教师可以让学生用自然语言描述实验假设,PRAXIST 自动生成代码,学生专注于结果解释和科学推理,而非编程细节。
5. 自动化科研流水线
在持续集成环境中,PRAXIST 可以作为一个“科研机器人”,每天自动运行一批研究任务,输出日报式的研究简报。
六、同类项目对比
| 特性 | PRAXIST | AutoML (如 AutoKeras) | 论文代码生成 (如 Codex) | 传统实验管理 (如 MLflow) |
|---|---|---|---|---|
| 输入 | 自然语言研究问题 | 数据集+目标指标 | 自然语言代码描述 | 代码+配置 |
| 输出 | 完整研究报告+代码 | 最优模型 | 代码片段 | 实验记录 |
| 自动执行 | 是,全自动 | 是,自动搜索 | 否,需手动运行 | 否 |
| 结果分析 | 内置统计分析 | 仅性能指标 | 无 | 需手动分析 |
| 可复现性 | 强制验证 | 部分 | 不保证 | 依赖用户规范 |
| LLM 融合 | 深度集成 | 无 | 生成代码但无执行 | 无 |
| 多步骤实验 | 支持复杂多阶段 | 仅单模型训练 | 不支持 | 支持但需手动编排 |
与 AutoML 的区别:AutoML 专注于模型结构和超参数搜索,目标是优化给定数据集的性能指标。而 PRAXIST 更广泛,它处理的是“研究问题”——可能涉及数据预处理、特征工程、模型对比、统计显著性检验等完整科研流程。
与 Codex 等代码生成工具的区别:Codex 只生成代码,不负责执行、调试和结果分析。PRAXIST 是一个闭环系统,从问题到结论全程自动化,且包含实验验证环节。
与 MLflow 的区别:MLflow 是实验跟踪和模型管理工具,需要研究者自己编写实验代码并手动记录。PRAXIST 是研究代理,它自己编写代码、执行、记录并分析。
七、局限性与改进方向
- LLM 依赖:系统质量高度依赖底层 LLM 的能力,如果模型理解偏差,可能导致实验设计错误。
- 计算资源:复杂实验可能需要大量 GPU 资源,本地执行可能不现实。目前项目尚未内置云资源调度功能。
- 领域限制:当前主要适用于计算机科学、数据科学领域的可计算研究。对于需要物理实验或人类受试者的研究不适用。
- 代码安全:自动生成的代码可能存在安全风险,沙箱执行环境需要进一步完善。
- 结果可靠性:虽然系统验证了代码可执行,但实验设计本身的科学性(如样本量、统计功效)仍需研究者判断。
八、总结
PRAXIST 代表了科研自动化领域的一个前沿方向——将研究视为可执行代码。它不只是一个工具,更是一种理念:科学研究应该像软件工程一样,具备版本控制、自动化测试、持续集成。
对于 AI 研究者、数据科学家和任何需要快速验证假设的人来说,PRAXIST 可以显著缩短从“灵感”到“证据”的周期。虽然它还处于早期阶段,但 2047 颗星和活跃的社区表明,这一方向获得了广泛认可。
如果你厌倦了重复编写实验代码、手动记录结果,或者想探索一种全新的科研范式,PRAXIST 值得你花一个下午深入研究。