AutoR配置详解:自定义研究流程,满足个性化需求
【免费下载链接】AutoRAI handles execution, humans own the direction, and every run becomes an inspectable research artifact on disk.项目地址: https://gitcode.com/gh_mirrors/auto/AutoR
AutoR是一款强大的AI驱动研究协作者,它通过AI处理执行细节,而人类掌控研究方向,每次运行都会在磁盘上生成可检查的研究成果。本指南将详细介绍如何配置AutoR,以满足您的个性化研究需求,让研究流程更加高效和灵活。
一、AutoR配置概览
AutoR的设计理念是尽量减少配置的复杂性,没有全局配置文件,没有基于环境的配置文件系统,也没有数据库。一个运行所需的所有信息都记录在该运行内部。主要有三个可配置项:
- 每运行设置—
runs/<run_id>/run_config.json,通过CLI标志设置,并在恢复时保留。 - 场地配置文件—
templates/registry.yaml,在各次运行之间共享。 - 可选图表生成—
configs/diagram_config.yaml或环境变量。
二、运行环境要求
在开始配置AutoR之前,请确保您的系统满足以下要求:
| 要求 | 用途 |
|---|---|
| Python 3.10+ | 所有功能 |
claude在PATH中(Claude Code) | 使用--operator claude的真实运行,以及所有Studio运行 |
codex在PATH中(Codex CLI) | 使用--operator codex的真实运行 |
LaTeX工具链(pdflatex/latexmk) | 第07阶段编译PDF — 仅在使用--output-format latex时需要;默认的markdown模式不需要TeX |
pip install google-genai pyyaml | 仅用于--research-diagram |
AutoR本身没有第三方Python依赖。除了可选的图表功能外,所有功能都运行在标准库上,这就是为什么没有requirements.txt— 没有什么可放在里面的。设置AutoR时,pip install从来都不是一个步骤。
对于--fake-operator运行或测试套件,不需要任何CLI后端。
三、run_config.json配置详解
每个运行根目录下都会生成run_config.json文件。完整的字段参考在 Run Artifacts。
3.1 恢复时保留的内容
当您恢复运行时,AutoR会重用已记录的设置,除非您覆盖它们。每个字段的优先级规则略有不同:
| 字段 | 恢复时,没有标志的情况下 | 说明 |
|---|---|---|
operator | 记录的值 | |
model | 记录的值 | 如果您使用--operator切换后端且未指定--model,则使用新后端的默认值,而不是旧模型名称。记录的"unknown"也会回退到默认值。 |
codex_sandbox | 记录的值 | |
venue | 记录的值 | |
output_format | 记录的值 | 新运行默认为markdown。以latex开始的运行在恢复时保持latex,除非--output-format另有说明。 |
approval_mode | 记录的值 | --full-auto始终强制为agent。 |
review_operator | 记录的值,否则为operator | |
review_model | 记录的值 | 如果您传递--review-operator而没有--review-model,则使用新审查者后端的默认值。 |
created_at | 保留 | 从不重写。 |
有一件事不能按运行配置,那就是运行目录本身:--runs-dir是AutoR查找运行的位置,因此它必须与运行所在的目录匹配。
3.2 模型默认值
| 后端 | 默认模型 |
|---|---|
claude | sonnet |
codex | default |
--model接受别名(sonnet、opus)或完整模型名称;AutoR将该值直接传递给后端CLI,因此该CLI接受的任何值在这里都有效。
四、场地注册表配置
templates/registry.yaml保存第07阶段的场地元数据。AutoR仅存储元数据 — 它不提供官方样式包,因此写作阶段会自行获取或重现样式。
4.1 可用场地
| 键 | 显示名称 | 类型 | 样式包 | Bib样式 | 引用样式 | 页数限制 | 参考文献计入限制 |
|---|---|---|---|---|---|---|---|
neurips_2025 | NeurIPS 2025 | 会议 | neurips_2025 | plainnat | natbib | 9 | 否 |
neurips_2026 | NeurIPS 2026 | 会议 | neurips_2026 | plainnat | natbib | 9 | 否 |
iclr_2026 | ICLR 2026 | 会议 | iclr2026_conference | iclr2026_conference | natbib | 9 | 否 |
icml_2026 | ICML 2026 | 会议 | icml2026 | icml2026 | natbib | 8 | 否 |
cvpr_2026 | CVPR 2026 | 会议 | cvpr | ieee_fullname | natbib | 8 | 否 |
acl_2026 | ACL 2026 | 会议 | acl | acl_natbib | natbib | 8 | 否 |
aaai_2026 | AAAI 2026 | 会议 | aaai2026 | aaai2026 | natbib | 7 | 是 |
ieee_conference | IEEE Conference | 会议 | IEEEtran | IEEEtran | cite | 6 | 是 |
ieee_journal | IEEE Transactions / Letters | 期刊 | IEEEtran | IEEEtran | cite | 14 | 是 |
nature | Nature | 期刊 | — | inline_or_manual | numeric | 8 | 是 |
nature_communications | Nature Communications | 期刊 | — | inline_or_manual | numeric | 灵活 | 是 |
jmlr | Journal of Machine Learning Research | 期刊 | jmlr2e | plain | numeric | 灵活 | 是 |
默认值:neurips_2025。
4.2--venue的匹配方式
resolve_venue_key接受以下任何一种:
- 注册表键 —
iclr_2026 - 显示名称 —
"ICLR 2026" - 样式包名称 —
iclr2026_conference
匹配忽略大小写、空格和标点符号,因此ICLR-2026和iclr 2026都能解析。未匹配的值会引发Unknown venue: <value>。
在运行开始时设置场地。它会影响第07阶段的结构、页面预算和引用样式,后期切换意味着重写手稿。
4.3 添加场地
将一个块追加到templates/registry.yaml:
my_venue_2027: display_name: "My Venue 2027" venue_type: "conference" # conference | journal official_url: "https://..." style_package: "myvenue2027" # 与 main.tex 匹配;"" 表示无 bib_style: "plainnat" citation_style: "natbib" page_limit: 8 # 整数,或 "flexible" refs_in_limit: false不需要代码更改 — 注册表在运行时读取。请注意,解析器是_load_template_registry中一个小型专用的解析器(src/utils.py),而不是完整的YAML解析器:像现有条目一样,将条目保持为顶级场地键下的扁平key: value对。
style_package是 第07阶段工件门 在main.tex中查找的内容。运行始终可以通过% AutoR venue: my_venue_2027注释覆盖检测。
五、Web搜索配置(可选)
第01阶段需要真实搜索。一些编码代理部署内置的WebSearch工具被禁用 — 特别是Vertex AI上的Claude Code— 这使得该阶段根本无法搜索。
--web-search gemini改为通过Gemini的Google搜索基础路由搜索。有两个后端可用;AutoR选择配置的那个:
# Vertex AI — 无需API密钥,使用应用默认凭据 gcloud auth application-default login export GOOGLE_CLOUD_PROJECT="your-project" python main.py --web-search gemini --goal "..." # 或Gemini开发者API,使用与图表生成相同的密钥 export GEMINI_API_KEY="..." python main.py --web-search gemini --goal "..." # 该工具本身也可单独使用: python tools/web_search.py "black hole superradiance constraints" --json显式API密钥优先于Vertex;AUTOR_WEB_SEARCH_BACKEND=vertex|api_key强制选择。在已运行Vertex上的Claude Code的机器上,ANTHROPIC_VERTEX_PROJECT_ID作为最后的项目继承,因此--web-search auto无需额外配置即可工作 — 这很重要,因为这正是内置WebSearch工具被禁用的部署。
auto(默认值)在配置密钥时使用Gemini,否则回退到后端的原生搜索,因此它从不宣传首次使用会失败的工具。详情在 ResearchClawBench → Web search。
六、图表生成配置(可选)
--research-diagram在第07阶段后使用Gemini API生成方法说明图,并将其注入LaTeX论文。这是一项增强功能:如果未配置,该步骤会打印失败行,运行继续。
6.1 设置
pip install google-genai pyyaml export GOOGLE_API_KEY="..." # 或 GEMINI_API_KEY或者,代替环境变量:
cp configs/diagram_config.template.yaml configs/diagram_config.yaml # 然后填写 api_keys.google_api_keyconfigs/diagram_config.yaml被git忽略。
api_keys: google_api_key: "" # 或 gemini_api_key defaults: model_name: "gemini-2.5-flash" max_critic_rounds: 2密钥解析顺序:GOOGLE_API_KEY,然后GEMINI_API_KEY,然后配置文件中的api_keys.google_api_key,然后api_keys.gemini_api_key。如果 none of them 设置,该步骤会引发Gemini API key not found. Set GOOGLE_API_KEY or GEMINI_API_KEY ...。
解析器位于src/web_search.py,并与支持Gemini的网络搜索共享,因此为一个功能配置的密钥对另一个功能也有效。
如果未安装google-genai,您将看到Diagram generation failed: No module named 'google'— 运行的其余部分不受影响。
七、环境变量
AutoR本身读取的环境变量很少。
| 变量 | 读取者 | 效果 |
|---|---|---|
GOOGLE_API_KEY | src/web_search.py | 用于--research-diagram和--web-search gemini的Gemini密钥。 |
GEMINI_API_KEY | src/web_search.py | 相同,其次检查。 |
AUTOR_WEB_SEARCH_MODEL | src/web_search.py | 支持Gemini的网络搜索模型。在Gemini API上默认为gemini-2.5-flash,在Vertex AI上默认为gemini-3.6-flash。 |
GEMINI_MODEL | src/web_search.py | 相同,其次检查。 |
AUTOR_WEB_SEARCH_BACKEND | src/web_search.py | 强制vertex或api_key,而不是自动检测。 |
AUTOR_VERTEX_PROJECT | src/web_search.py | 用于网络搜索的Vertex AI项目。回退到GOOGLE_CLOUD_PROJECT,然后是ANTHROPIC_VERTEX_PROJECT_ID。 |
AUTOR_VERTEX_LOCATION | src/web_search.py | Vertex AI位置。回退到GOOGLE_CLOUD_LOCATION,然后是global。 |
TERM | src/terminal_ui.py | TERM=dumb禁用彩色输出。对CI日志和管道到文件很有用。 |
其他所有内容 — API密钥、身份验证、模型访问 — 都属于claude或codexCLI,并在那里配置,而不是在AutoR中。
八、文件系统位置
| 路径 | 默认值 | 覆盖 |
|---|---|---|
| 运行 | <repo>/runs/ | --runs-dir(相对于存储库根目录解析) |
| Studio项目索引 | <repo>/.autor/projects.json | python studio.py --metadata-root |
| 提示模板 | <repo>/src/prompts/ | —(从Studio中的--repo-root派生) |
| 场地注册表 | <repo>/templates/registry.yaml | — |
| 图表配置 | <repo>/configs/diagram_config.yaml | — |
runs/、.autor/和configs/diagram_config.yaml都被git忽略。
九、硬编码限制
这些是src/utils.py中的常量,而不是设置。如果必须,请在源代码中更改它们,并期望测试有意见。
| 常量 | 值 | 含义 |
|---|---|---|
MAX_STAGE_ATTEMPTS | 5 | 阶段升级到您之前的默认尝试次数。这个可以按运行覆盖,使用--max-attempts。 |
DEFAULT_VENUE | neurips_2025 | 省略--venue时的场地。 |
DEFAULT_CODEX_SANDBOX | workspace-write | 未指定时的Codex沙箱。 |
| 阶段超时 | 14400 s | 每次尝试的上限 — 这是一个标志,--stage-timeout。 |
| 切换窗口 | 4个阶段 | 有多少先前的切换摘要进入提示。 |
通过以上配置,您可以根据自己的研究需求,灵活地自定义AutoR的各种设置,使其更好地服务于您的研究项目。无论是场地设置、模型选择还是图表生成,AutoR都提供了简单而强大的配置选项,让您能够轻松掌控研究流程。
【免费下载链接】AutoRAI handles execution, humans own the direction, and every run becomes an inspectable research artifact on disk.项目地址: https://gitcode.com/gh_mirrors/auto/AutoR
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考