深度研究
分析任何主题、领域或论文,并使用Actionbook浏览器自动化和json-ui渲染生成美观的HTML报告。
用法
/deep-research:analyze <主题>
/deep-research:analyze <主题> --lang zh
/deep-research:analyze <主题> --output ./reports/my-report.json
或简单地告诉Claude:“帮我深度研究XXX并生成报告”/“Research XXX and generate a report”
参数
| 参数 | 必需 | 默认 | 描述 |
|---|---|---|---|
topic |
是 | - | 研究对象(任何文本) |
--lang |
否 | both |
语言:en, zh, 或 both(双语) |
--output |
否 | ./output/<topic-slug>.json |
JSON报告的输出路径 |
主题检测
| 模式 | 类型 | 策略 |
|---|---|---|
arxiv:XXXX.XXXXX |
论文 | arXiv高级搜索(步骤2b)+ ar5iv深度阅读 |
doi:10.XXX/... |
论文 | 解析DOI,然后arXiv高级搜索相关文献 |
| 学术关键词(论文、研究、模型、算法) | 学术主题 | arXiv高级搜索(步骤2b)+ Google非学术来源 |
| URL | 特定页面 | 获取并分析页面 |
| 一般文本 | 主题研究 | Google搜索+arXiv高级搜索(如相关) |
架构
┌──────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────┐
│ Claude │────▶│ Actionbook │────▶│ 网页 │────▶│ 提取 │
│ 代码 │ │ 浏览器CLI │ │ (多个) │ │ 内容 │
└──────────┘ └──────────────┘ └──────────────┘ └─────┬────┘
│ │
│ ┌──────────────┐ ┌──────────────┐ │
├─────────▶│ Actionbook │ │ arXiv高级 │ │
│ │ 搜索/获取 │────▶│ 搜索表单 │ │
│ │ (选择器) │ │ (40+字段) │ │
│ └──────────────┘ └──────────────┘ │
│ │
│ Actionbook索引arXiv表单选择器, │
│ 启用特定字段的、过滤的学术 │
│ 搜索,WebFetch/WebSearch无法做到。 │
│ │
┌──────────┐ ┌──────────────┐ ┌──────────────┐ │
│ 在浏览器中打开 │◀────│ json-ui │◀────│ 写JSON │◀──────────┘
│ 渲染 │ │ 渲染 │ │ 报告 │ 综合
└──────────┘ └──────────────┘ └──────────────┘
为什么使用Actionbook,而不是WebFetch/WebSearch?
| 能力 | Actionbook | WebFetch/WebSearch |
|---|---|---|
| 操作复杂网络表单(下拉、复选框、日期选择器) | 是 — 使用索引选择器 | 否 |
| arXiv:按作者、标题、摘要单独搜索 | 是 — #terms-0-field选择 |
否 — 仅关键词 |
| arXiv:按主题(CS、物理、数学等)过滤 | 是 — 类别复选框 | 否 |
| arXiv:按日期范围或特定年份过滤 | 是 — 日期输入 | 否 |
| 读取经过验证的选择器的页面(不猜测) | 是 — actionbook get |
否 — 原始HTML解析 |
| 与任何索引网站的UI交互 | 是 — 点击、输入、选择 | 否 — 只读 |
这是Actionbook对研究的核心价值:它将网络表单变成AI代理的结构化、可编程接口。
必须使用Actionbook CLI
始终使用actionbook browser命令进行网页浏览。绝不使用WebFetch或WebSearch。
actionbook browser open <url> # 导航到页面
actionbook browser snapshot # 获取可访问性树
actionbook browser text [选择器] # 提取文本内容
actionbook browser screenshot [路径] # 捕获视觉
actionbook browser click <选择器> # 点击元素
actionbook browser close # 关闭浏览器(始终在结束时执行)
完整工作流程
第1步:计划搜索策略
根据主题,从不同角度生成5-8个搜索查询:
- 核心定义/概述
- 最新发展/新闻
- 技术细节/实现
- 比较/替代方案
- 专家意见/分析
- 用例/应用
搜索顺序 — 始终先查询Actionbook API,然后搜索:
| 步骤 | 动作 | 为什么 |
|---|---|---|
| 步骤2(首先) | 查询Actionbook API | 获取arXiv高级搜索表单、ar5iv论文和任何其他已知网站的验证选择器,然后浏览。这是所有后续步骤的基础。 |
| 步骤3(其次) | arXiv高级搜索 | 使用步骤2中的Actionbook选择器执行多字段、过滤的学术搜索。即使非学术主题也经常有相关论文。 |
| 步骤4(第三) | Google/Bing搜索 | 用博客、新闻、代码、讨论、非学术来源补充。 |
**重要提示:**始终先查询Actionbook API(步骤2),然后使用它们在arXiv高级搜索(步骤3)中。这就是Actionbook驱动的研究与WebFetch/WebSearch根本不同之处 —— 代理在打开浏览器之前就知道每个表单字段的确切选择器。
第2步:查询Actionbook API以获取选择器(始终首先执行此操作)
**在浏览任何URL之前,查询Actionbook的索引选择器。**这为您提供了经过验证的CSS/XPath选择器,而不是猜测。
# 按域名搜索索引动作
actionbook search "<关键词>" -d "<域名>"
# 获取特定页面的详细选择器
actionbook get "<域名>:/<path>:<区域>"
对研究有用的预索引网站:
| 网站 | 区域_id | 关键选择器 |
|---|---|---|
| arXiv高级搜索 | arxiv.org:/search/advanced:default |
40+选择器:字段选择、术语输入、类别复选框(CS/物理/数学/…)、日期范围过滤器、交叉列表控制 — 用于步骤3 |
| ar5iv论文 | ar5iv.labs.arxiv.org:/html/{论文_id}:default |
h1.ltx_title_document(标题)、div.ltx_authors(作者)、div.ltx_abstract(摘要)、section.ltx_section(章节) |
| Google Scholar | scholar.google.com:/:default |
#gs_hdr_tsi(搜索输入)、#gs_hdr_tsb(搜索按钮) |
| arXiv主页 | arxiv.org:/:default |
全局搜索超过2.4M+文章 |
对于您计划访问的任何URL,运行actionbook search "<关键词>" -d "<域名>"检查是否已索引。使用索引选择器时可用;对于未索引的网站,回退到actionbook browser snapshot。
示例:在搜索之前获取arXiv高级搜索选择器:
# 查询Actionbook以获取arXiv表单选择器
actionbook get "arxiv.org:/search/advanced:default"
# 返回40+选择器:#terms-0-field, #terms-0-term, #classification-computer_science等。
第3步:使用Actionbook选择器进行arXiv高级搜索
关键区别:WebFetch/WebSearch只能进行简单的关键词搜索。Actionbook已经索引了整个arXiv高级搜索表单,有40+经过验证的选择器(在步骤2中查询),使得多字段、多标准学术搜索成为可能 —— 就像人类研究者会使用该表单一样。
使用步骤2中获得的选择器,代理可以:
| 能力 | Actionbook选择器 | WebFetch/WebSearch |
|---|---|---|
| 按特定字段搜索(标题、作者、摘要) | #terms-0-field选择 → 选择字段 |
不可能 |
| 添加多个搜索词,带布尔逻辑 | button "Add another term +" |
不可能 |
| 按主题(CS、物理、数学等)过滤 | #classification-computer_science复选框 |
不可能 |
| 按日期范围过滤 | #date-filter_by-3单选+#date-from_date/#date-to_date |
不可能 |
| 按特定年份过滤 | #date-filter_by-2单选+#date-year输入 |
不可能 |
| 包括/排除交叉列表论文 | #classification-include_cross_list-0/1单选 |
不可能 |
| 控制结果显示 | #size选择、#abstracts-0/1单选 |
不可能 |
示例:搜索特定作者的最新CS论文:
# 打开arXiv高级搜索
actionbook browser open "https://arxiv.org/search/advanced"
# 1.将搜索字段设置为“作者”并输入作者姓名
actionbook browser click "#terms-0-field"
actionbook browser click "option[value='author']"
actionbook browser type "#terms-0-term" "Yann LeCun"
# 2.仅过滤计算机科学
actionbook browser click "#classification-computer_science"
# 3.限制在过去12个月内
actionbook browser click "#date-filter_by-1"
# 4.在结果中显示摘要
actionbook browser click "#abstracts-0"
# 5.提交搜索
actionbook browser click "button:has-text('Search'):nth(2)"
# 6.提取结果
actionbook browser text "#main-container"
示例:在日期范围内按标题关键词搜索:
actionbook browser open "https://arxiv.org/search/advanced"
# 在“标题”字段中搜索
actionbook browser click "#terms-0-field"
actionbook browser click "option[value='title']"
actionbook browser type "#terms-0-term" "large language model agent"
# 日期范围:2025-01至2026-02
actionbook browser click "#date-filter_by-3"
actionbook browser type "#date-from_date" "2025-01-01"
actionbook browser type "#date-to_date" "2026-02-09"
# 提交并提取
actionbook browser click "button:has-text('Search'):nth(2)"
actionbook browser text "#main-container"
第4步:用Google/Bing搜索补充
在arXiv之后,使用Google/Bing找到非学术来源(博客、新闻、文档、代码、讨论):
# 通过Google搜索
actionbook browser open "https://www.google.com/search?q=<编码查询>"
actionbook browser text "#search"
# 或通过Bing搜索
actionbook browser open "https://www.bing.com/search?q=<编码查询>"
actionbook browser text "#b_results"
解析搜索结果以提取URL和片段。收集前5-10个最相关的URL。对于每个发现的URL,查询Actionbook API(步骤2模式)以检查网站是否已索引,然后访问。
第5步:深度阅读来源
对于每个相关URL,首先查询Actionbook API(与步骤2相同),然后使用经过验证的选择器:
actionbook browser open "<url>"
actionbook browser text # 完整页面文本(回退)
actionbook browser text "<选择器>" # 如果已索引,使用Actionbook选择器
对于arXiv论文,尝试按此顺序使用来源(新论文经常在ar5iv上失败):
# 1.首先尝试ar5iv(最佳的结构化选择器来自Actionbook)
actionbook browser open "https://ar5iv.org/html/<arxiv_id>"
actionbook browser text "h1.ltx_title_document" # 标题
actionbook browser text "div.ltx_authors" # 作者
actionbook browser text "div.ltx_abstract" # 摘要
# 注意:section.ltx_section经常在新论文上失败 — 使用"article"作为回退
# 2.如果ar5iv内容被截断(<5KB),则回退到arxiv摘要+其他来源
actionbook browser open "https://arxiv.org/abs/<arxiv_id>"
actionbook browser text "main"
# 3.补充HuggingFace模型卡和GitHub README以获取完整详细信息
actionbook browser open "https://huggingface.co/papers/<arxiv_id>"
actionbook browser text "main"
**关键教训:**不要仅依赖ar5iv。始终交叉引用3-4个来源以获得完整性。
对于Google Scholar(由Actionbook索引):
actionbook browser open "https://scholar.google.com"
# 输入搜索:使用选择器#gs_hdr_tsi
actionbook browser click "#gs_hdr_tsi"
# ...输入查询,点击#gs_hdr_tsb进行搜索
对于未索引的网站,使用快照来发现页面结构:
actionbook browser open "<url>"
actionbook browser snapshot # 获取可访问性树以找到选择器
actionbook browser text "<发现的选择器>"
第6步:综合发现
将收集到的信息组织成连贯的报告:
- 概览/执行摘要
- 关键发现
- 详细分析
- 支持数据/证据
- 影响/重要性
- 来源
第7步:生成json-ui JSON报告
按照@actionbookdev/json-ui模式编写JSON文件。使用Write工具。
输出路径:./output/<topic-slug>.json(或用户指定的--output路径)
第8步:渲染HTML
至关重要:您必须尝试所有回退方法,绝不放弃。不要在第一次失败时停止。
重要提示:始终使用JSON_FILE和HTML_FILE的绝对路径。相对路径在git rev-parse返回绝对仓库根目录时会中断。
尝试每种方法,直到成功:
# 方法1:npx(推荐 — 如果npm可用,任何地方都有效)
npx @actionbookdev/json-ui render /绝对路径/报告.json -o /绝对路径/报告.html
# 方法2:全局安装(如果用户运行:npm install -g @actionbookdev/json-ui)
json-ui render /绝对路径/报告.json -o /绝对路径/报告.html
# 方法3:Monorepo本地路径(如果位于actionbook项目内则作为回退)
node "$(git rev-parse --show-toplevel)/packages/json-ui/dist/cli.js" render /绝对路径/报告.json -o /绝对路径/报告.html
**绝不默默放弃。**如果所有方法都失败,请告诉用户:
- JSON报告已保存在
<path> - 要安装渲染器,请运行:
npm install -g @actionbookdev/json-ui
第9步:在浏览器中打开
# macOS
open <report.html>
# Linux
xdg-open <report.html>
第10步:关闭浏览器
始终在完成后关闭浏览器:
actionbook browser close
json-ui报告模板
重要提示:始终包括BrandHeader和BrandFooter。
{
"type": "Report",
"props": { "theme": "auto" },
"children": [
{
"type": "BrandHeader",
"props": {
"badge": { "en": "Deep Research Report", "zh": "深度研究报告" },
"poweredBy": "Actionbook"
}
},
{
"type": "Section",
"props": { "title": { "en": "Overview", "zh": "概述" }, "icon": "paper" },
"children": [
{
"type": "Prose",
"props": {
"content": { "en": "English overview...", "zh": "中文概述..." }
}
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Key Findings", "zh": "核心发现" }, "icon": "star" },
"children": [
{
"type": "ContributionList",
"props": {
"items": [
{
"badge": { "en": "Finding", "zh": "发现" },
"title": { "en": "...", "zh": "..." },
"description": { "en": "...", "zh": "..." }
}
]
}
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Detailed Analysis", "zh": "详细分析" }, "icon": "bulb" },
"children": [
{
"type": "Prose",
"props": { "content": { "en": "...", "zh": "..." } }
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Key Metrics", "zh": "关键指标" }, "icon": "chart" },
"children": [
{
"type": "MetricsGrid",
"props": { "metrics": [], "cols": 3 }
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Sources", "zh": "信息来源" }, "icon": "link" },
"children": [
{
"type": "LinkGroup",
"props": { "links": [] }
}
]
},
{
"type": "BrandFooter",
"props": {
"timestamp": "YYYY-MM-DDTHH:MM:SSZ",
"attribution": "Powered by Actionbook",
"disclaimer": {
"en": "This report was generated by AI using web sources. Verify critical information independently.",
"zh": "本报告由 AI 基于网络来源生成,请独立验证关键信息。"
}
}
}
]
}
论文报告模板(针对arXiv论文)
当分析学术论文时,使用更丰富的模板,包括:
PaperHeader(标题、arxivId、日期、类别)AuthorList(带有隶属关系的作者)Abstract(带有关键词高亮)ContributionList(关键贡献)MethodOverview(逐步方法)ResultsTable(实验结果)Formula(关键方程,LaTeX)Figure(来自ar5iv的论文图表)
可用的json-ui组件
| 组件 | 用途 | 关键属性 |
|---|---|---|
BrandHeader |
报告标题 | badge, poweredBy |
PaperHeader |
论文元数据 | title, arxivId, date, categories |
AuthorList |
作者 | authors: [{name, affiliation}], maxVisible |
Section |
主要部分 | title, icon(paper/star/bulb/chart/code/link/info/warning) |
Prose |
富文本 | content(支持粗体、斜体、code、列表) |
Abstract |
摘要文本 | text, highlights: ["关键词"] |
ContributionList |
编号发现 | items: [{badge, title, description}] |
MethodOverview |
逐步 | steps: [{step, title, description}] |
MetricsGrid |
关键统计 | metrics: [{label, value, trend, suffix}], cols |
ResultsTable |
数据表 | columns, rows, highlights: [{row, col}] |
Table |
通用表 | columns: [{key, label}], rows, striped, compact |
Callout |
信息/提示/警告 | type(info/tip/warning/important/note),title, content |
Highlight |
引用 | type(quote/important/warning/code),text, source |
KeyPoint |
关键发现卡片 | icon, title, description, variant |
CodeBlock |
代码片段 | code, language, title, showLineNumbers |
Formula |
LaTeX方程 | latex, block, label |
Figure |
图像 | images: [{src, alt, width}], label, caption |
Image |
单张图像 | src, alt, caption, width |
DefinitionList |
术语/定义 | items: [{term, definition}] |
LinkGroup |
源链接 | links: [{href, label, icon}] |
Grid |
网格布局 | cols, children |
Card |
卡片容器 | padding(sm/md/lg), shadow |
TagList |
标签 | tags: [{label, color, href}] |
BrandFooter |
页脚 | timestamp, attribution, disclaimer |
json-ui已知陷阱
| 陷阱 | 症状 | 修复 |
|---|---|---|
MetricsGrid.suffix作为i18n对象 |
text.replace不是函数 |
suffix必须是纯字符串,不是{ “en”: …, “zh”: … } |
MetricsGrid.value作为数字 |
渲染错误 | value必须是字符串(例如,"58.5"不是58.5) |
缺少BrandHeader/BrandFooter |
报告看起来破损 | 始终包括两者 |
Table行值作为i18n对象 |
单元格中的[object Object] | 行单元格值必须是纯字符串。列label支持i18n,但行数据不支持。使用"运行时 / Runtimes"而不是{ “en”: “Runtimes”, “zh”: “运行时” } |
| 非常长的Prose内容 | 截断渲染 | 分成多个Prose块或使用子节 |
i18n支持
所有文本字段支持双语输出除非上述注明:
{ "en": "英文文本", "zh": "中文文本" }
对于--lang en,使用纯字符串。对于--lang zh,使用纯中文字符串。对于--lang both(默认),使用i18n对象。
例外:
MetricsGrid属性value和suffix始终必须是纯字符串。Table行单元格值必须是纯字符串(列label支持i18n,但行数据不支持)。对于双语,使用"运行时 / Runtimes"格式。
学术论文支持
arXiv论文
ar5iv.org HTML(首选阅读,但对3个月以内的论文经常不完整):
| 元素 | 选择器(Actionbook验证) | 可靠性 | 回退 |
|---|---|---|---|
| 标题 | h1.ltx_title_document |
高 | div.ltx_abstract包括标题上下文 |
| 作者 | div.ltx_authors |
高 | — |
| 摘要 | div.ltx_abstract |
高 | — |
| 全文 | article |
中 | 使用当章节选择器失败 |
| 章节 | section.ltx_section |
新论文上低 | article获取所有内容 |
| 章节标题 | h2.ltx_title_section |
新论文上低 | 从article文本解析 |
| 图表 | figure.ltx_figure |
中 | — |
| 表格 | table.ltx_tabular |
中 | — |
| 参考文献 | .ltx_bibliography |
中 | — |
**注意:**对于最近提交的大约3个月内的论文,ar5iv经常呈现不完整的内容。始终检查actionbook browser text 2>&1 | wc -c — 如果<5KB,则页面未完全呈现。回退到其他来源。
arXiv API(通过actionbook浏览器获取元数据):
actionbook browser open "http://export.arxiv.org/api/query?id_list={arxiv_id}"
actionbook browser text
推荐论文来源优先级
根据测试,使用此优先级顺序以获得最大覆盖范围:
| 优先级 | 来源 | 您将获得什么 | 可靠性 |
|---|---|---|---|
| 1 | arxiv.org/abs/<id> |
摘要、元数据、提交历史 | 非常高 |
| 2 | huggingface.co/papers/<id> |
摘要、社区评论、相关模型/数据集 | 非常高 |
| 3 | GitHub存储库(从搜索结果) | README包含方法详细信息、模型库、代码 | 高 |
| 4 | HuggingFace模型卡 | 训练配方、基准结果、快速开始 | 高 |
| 5 | ar5iv.org/html/<id> |
完整的论文HTML,具有结构化选择器 | 中等(新论文失败) |
| 6 | Google Scholar / Semantic Scholar | 引用、相关工作 | 中等 |
**关键见解:**不要依赖单一来源。arxiv摘要+HuggingFace+GitHub的组合通常可以提供90%+所需的内容,即使ar5iv失败。
其他学术来源
使用actionbook browser访问并提取内容:
- Google Scholar(
scholar.google.com)— Actionbook索引,使用#gs_hdr_tsi进行搜索 - Semantic Scholar(
semanticscholar.org) - Papers With Code(
paperswithcode.com) - 会议论文集网站
错误处理
| 错误 | 动作 |
|---|---|
| 浏览器无法打开 | 运行actionbook browser status,重试 |
| 页面加载超时(30秒) | 跳过来源,尝试下一个。常见于papers.cool、慢速学术网站 |
| ar5iv内容被截断(<5KB) | 论文对ar5iv来说太新了。回退到arxiv摘要+HuggingFace+GitHub |
section.ltx_section未找到 |
ar5iv呈现不完整。使用actionbook browser text "article"或"main"代替 |
| Actionbook选择器未找到 | 使用actionbook browser snapshot发现实际页面结构 |
actionbook search无结果返回 |
网站未索引。使用actionbook browser snapshot手动查找选择器 |
json-ui渲染崩溃(text.replace) |
检查MetricsGridsuffix/value — 必须是纯字符串,不是i18n对象 |
npx @actionbookdev/json-ui失败 |
运行npm install -g @actionbookdev/json-ui,然后使用json-ui render重试。如果仍然失败,尝试monorepo本地路径 |
| 无搜索结果 | 扩大搜索词,尝试不同角度 |
| 渲染失败 | 保存JSON,告诉用户路径,并建议:npm install -g @actionbookdev/json-ui |
**重要提示:**始终在结束时运行actionbook browser close,即使出现错误。
质量指南
- 广度:从至少3-5个不同来源进行研究
- 深度:阅读整篇文章,不仅仅是片段
- 准确性:在多个来源之间交叉引用事实
- 结构:使用适当的json-ui组件为每种内容类型
- 归属:始终在报告中包含源链接
- 新鲜度:在相关性相等时优先选择最近的来源
中文内容质量指南(中文内容质量规范)
至关重要:中文文本必须作为母语中文编写,而不是从英文翻译过来。
zh字段不是翻译 — 它是内容的独立中文版本。就像从头开始编写中文技术文章一样编写它。
常见问题
| 问题 | 坏例子 | 好例子 |
|---|---|---|
| 被动语态过多 | “Wasm 已被广泛采用” | “Wasm 已经大规模落地” |
| 英语语序直译 | “广泛但常常不可见地被采用” | “已经深入渗透到各类产品中,只是用户浑然不觉” |
| 生硬术语拼接 | “语言无关的异步通信” | “不绑定特定编程语言的异步通信机制” |
| 直译英文短语 | “关键缺失部分” | “最后一块拼图” |
| "地道"当形容词 | “地道绑定” | “符合各语言习惯的绑定” |
| 逗号长句(一逗到底) | “A,B,C,D,E。” | 拆成 2-3 个短句 |
| 引用原文硬翻 | “「许多用户并未意识到它正在被使用」” | 用中文重新表述引用的核心意思,必要时保留原文人名 |
写作规则
- 先写中文,再对照英文查漏:不要从英文逐句翻译。先理解内容本质,用中文重新组织表达。
- 主动语态优先:中文天然偏好主动句。“X 被 Y 采用” → “Y 采纳了 X” 或 “Y 已在用 X”。
- 短句 > 长句:中文读者偏好短句。超过 40 字的句子应拆分。
- 术语处理原则:
- 有公认中文译名的术语用中文:服务器 → 服务器、容器 → 容器、沙箱 → 沙箱
- 无公认译名的术语保留英文:Component Model、WASI、SIMD、Cold Start
- 首次出现时中英对照:「组件模型(Component Model)」,之后可只用中文
- 不要硬造中文译名(如"非干扰分析",应写"Noninterference 分析"或解释性表述)
- 数据和事实保持一致:中英文的数字、日期、引用来源必须完全一致。
- 语气自然:可以用"说白了"、“换句话说”、"简单来说"等口语化连接词,避免全篇书面腔。
- 标点规范:用中文标点(,。;:「」)而非英文标点。引号优先用「」。
表格与短文本规则(表格与短文本规则)
Table行中的"English / 中文"格式是中文质量的重灾区。短文本更容易暴露机翻痕迹。
规则:中文部分必须是独立的中文表述,不是英文的逐词翻译。
| 坏 | 为什么坏 | 好 |
|---|---|---|
| “应用级错误处理” | 太生硬,像翻译腔 | “应用层统一报错” |
| “高性能 Web 框架” | 可以,但太平淡 | “主打性能的 Web 框架” |
| “序列化框架” | 可以接受 | “序列化框架” ✓ |
| “嵌入式异步执行器” | 太绕 | “嵌入式异步运行器” |
| “凸块分配器” | 硬造译名,没人这么说 | “Bump 分配器(arena 风格)” |
| “安全内存擦除” | 太书面 | “安全清零内存” |
| “多生产者多消费者通道” | 太长 | “MPMC 通道” |
| “类 React UI 框架” | OK | “类 React 的 UI 框架” ✓ |
表格中文短文本的核心原则:
- 保留英文术语:Bump allocator、MPMC、ECS 这些没有公认中文译名的概念,直接保留英文。别硬翻。
- 口语化 > 书面化:短文本读者扫一眼就过,要像说话一样自然。“主打性能” 比 “性能优化的” 好。
- 别逐词翻译:先理解英文描述的意思,然后用中文重新说一遍。“Full-featured datetime” → “功能齐全的时间日期库”,不是 “全功能日期时间”。
- 可以省略冗余修饰:英文 “A generic serialization/deserialization framework” → 中文只需 “序列化框架”。
- 数量控制在 10 字以内:表格中文描述尽量控制在 10 个汉字以内,简短精准。
双语语气参考
| 英文语气 | 中文对应 | 示例 |
|---|---|---|
| “X has reached a critical milestone” | 不要直译"关键里程碑" | “X 迎来了重要转折点” 或 “X 进入成熟期” |
| “This is the key missing piece” | 不要直译"关键缺失部分" | “这是最后一块拼图” 或 “补上了最关键的短板” |
| “excels at cold starts” | 不要直译"在冷启动方面表现卓越" | “冷启动速度远超同类方案” |
| “security scrutiny intensifies” | 不要直译"安全审查加强" | “安全领域的关注度持续升温” |
| “emerging as a standard” | 不要直译"正成为标准" | “逐渐确立了标准地位” 或 “大有一统江湖之势” |
| “widespread but invisible adoption” | 不要直译"广泛但不可见的采用" | “已经悄然渗透到各类产品中” |