找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

4019

积分

0

好友

529

主题
发表于 昨天 21:45 | 查看: 8| 回复: 0

程序员最痛苦的时刻,不是 Bug 调不通,而是面对技术选型。

你打开了 50 个浏览器标签页:GitHub README、掘金对比文章、Stack Overflow 的问答、官方文档的某个子页面。三个小时之后,你的收藏夹增加了 20 条新书签,但你对“到底该选哪个框架”这个问题,依然没有答案。

更让人沮丧的是——下次换一个技术栈的选型,你得把这个过程再来一遍

今天我要告诉你,这个循环可以被彻底打破。

1. 程序员技术调研的三层地狱

在讲解法之前,先精准地定义痛苦。

程序员做技术调研,通常陷入三层地狱:

第一层:信息碎片化
官方文档告诉你“这个框架很快”,掘金的评测告诉你“实测坑很多”,GitHub 的 Issue 列表告诉你“这个 Bug 三年没修”。这三条信息之间的矛盾,没有任何东西帮你整合。

第二层:调研结果不可复用
你花了一个周末调研完了“Rust async runtime 选型”,写进了一个 Notion 页面。三个月后,你的同事问起同一个问题,你发现你自己都记不清当时的结论了。

第三层:缺口发现太晚
你以为调研已经够全面了,但 Code Review 的时候,资深同事问了一个问题——“你有没有看过它在高并发场景下的内存占用数据?”——你才意识到,这个维度你根本没有覆盖到。

这三层地狱的根源是同一个:你在用人脑做本该由机器做的事。

2. autoresearch 是什么?不是你想的那种“AI 搜索”

大多数人以为,用 AI 做技术调研,就是把问题扔进 ChatGPT,让它给你一段对比分析。

这是错的。那只是“一次性问答”,不是“研究”。

/autoresearch 命令(来自 claude-obsidian 工具)使用的是 Karpathy 风格的研究方式:运行多轮 Web 研究,进行缺口填补,并把带有来源支撑的概念页、实体页和综合页,全部归档进一个复利增长的 Obsidian wiki vault。

这是关键区别:它产出的不是一段文字,而是一批互相链接的结构化 wiki 页面。

autoresearch 的完整程序是这样运作的:

第一轮,广泛搜索:把问题分解成 3–5 个角度,每个角度运行 2–3 个查询,抓取每个角度的前 2–3 个结果;

第二轮,缺口填补:针对矛盾点和遗漏部分进行定向搜索;

第三轮,综合检验(可选):如果仍有重大缺口,再进行一轮。

最后,归档阶段:产出综合页 + 来源页 + 实体页 + 概念页,全部交叉引用。

这就是与普通 AI 搜索的本质区别:它不只是在找答案,它在主动发现你没想到要问的问题。

3. 实战演示:以“Rust async runtime 选型”为例

我们用一个真实的技术选型场景,完整走一遍。

场景设定:
你在做一个高性能 Web 服务,需要在 tokioasync-stdsmol 之间做出选择。

Step 1:启动 autoresearch

在 Claude Code 终端输入:

/autoresearch "Rust async runtime comparison: tokio vs async-std vs smol, production usage 2025"

你需要做的,只有这一行。

Step 2:观察它的三轮工作(2 分钟内完成)

Round 1 — 广泛搜索:
Agent 自动拆解出这几个角度:

  • 性能基准对比(吞吐量、延迟、内存占用)
  • 生态兼容性(与主流框架的集成度)
  • 社区活跃度与维护状态
  • 实际生产案例

Round 2 — 缺口填补:
Agent 发现了第一轮的盲区:“几乎所有的 benchmark 都是单核场景,多核调度的差异在哪里?” 它自动补充搜索了这个维度,这个问题是你在手动调研时极可能遗漏的。

Round 3 — 综合:
把所有来源里的矛盾点标注出来(例如某篇文章说 tokio 默认多线程调度更适合 CPU 密集型,另一篇说 smol 在 IO 密集型场景反而更轻量)。

Step 3:查看产出的 wiki 页面结构

完成后,你的 wiki/ 目录里多出了:

wiki/
├── entities/
│   ├── tokio.md          ← 详细页:诞生背景、核心特性、生态
│   ├── async-std.md
│   └── smol.md
├── concepts/
│   ├── rust-async-runtime.md     ← 概念解释页
│   └── work-stealing-scheduler.md ← 这个是 Round 2 补充发现的!
└── synthesis/
    └── rust-async-runtime-comparison.md  ← 最终对比综合页

Step 4:看综合页的结构(这才是最有价值的部分)

synthesis/rust-async-runtime-comparison.md 会包含:

## 核心结论
- tokio:生态最成熟,Axum/Actix 强依赖,多线程调度优秀
- async-std:API 更接近标准库,生态较小,社区活跃度下降
- smol:极简主义,内存占用最低,适合嵌入式/资源受限场景

## 矛盾点标注
[!contradiction] 关于多核调度效率:
来源A(benchmark.rs 测试):tokio 在 16 核场景性能领先 23%
来源B(real-world-case-study.md):实际 web 服务中差距不明显

## 推荐决策树
- 如果你在用 Axum/Tower 生态 → tokio(无需多想)
- 如果你在做嵌入式或 WASM → smol
- 如果你需要 std API 兼容 → async-std(但注意社区趋势)

## 来源引用
[[tokio]] [[async-std]] [[smol]] [[work-stealing-scheduler]]

一个单一来源可能触及 10–15 个 wiki 页面。而 autoresearch 会自动跨多个来源进行整合,所有交叉引用都是自动生成的。

4. 为什么调研结果“永久有效”?

这是最关键的一点,也是与传统调研方式的本质区别。

wiki 是产品,聊天只是界面。

当你下次面对新的选型问题时——比如“我在新项目里该不该继续用 tokio?”——你不需要重新调研。你只需要运行:

/wiki-query "tokio production considerations"

你提问,Claude 读取热缓存(最近上下文),扫描索引,钻入相关页面,合成出一个答案。

而这个答案,建立在你过去所有调研积累的基础上。你三个月前做的调研,今天依然在为你打工。

这套系统的强大之处在于它的复合特性:每添加一个文档,都在丰富一个随你成长的基础。到第 10 份文档时,它很有用。到第 100 份文档时,它就变成了一个真正的增强记忆,能实现单纯的 RAG 或人类记忆都无法实现的推理。

5. 进阶配置:让 autoresearch 专为程序员优化

autoresearch 命令是可配置的。编辑 skills/autoresearch/references/program.md 来控制优先搜索哪些来源(学术论文、官方文档、新闻)。默认程序适用于通用研究,你可以针对你的领域进行覆盖。医学研究者会添加“优先选择 PubMed”;商业分析师会添加“聚焦市场数据和文件”。

对于程序员,我推荐在 program.md 里添加如下配置:

## 研究优先级(程序员专属)
1. 优先读取:官方文档、官方 GitHub README
2. 次优先:知名技术博主的 benchmark 文章(附测试环境)
3. 参考:掘金/知乎技术社区(注意标注来源可信度)
4. 必须覆盖的维度:
   - 性能数据(需有具体数字,拒绝模糊描述)
   - 生态兼容性(与你当前技术栈的集成难度)
   - 维护状态(最近 commit 日期、issue 响应速度)
   - 已知缺陷(查阅 GitHub Issue 的 "known bug" 标签)

6. 你的调研不再是一次性消耗品

传统的技术调研,是你时间和精力的一次性消耗。
用了这套系统之后,每一次调研,都是你个人技术知识库的永久资产。

你积累得越多,下一次调研就越快。不只是因为 AI 更快,而是因为它会把新的调研结果,自动与你过去的所有技术判断进行交叉对比,告诉你:“你之前在某个项目里考虑过类似的取舍,结论是……”

这才是真正的知识复利。

程序员的时间,应该花在判断上,不是搜索上。




上一篇:让ChatGPT管项目,Codex只做Ticket:AI编程防失控实战
下一篇:TokenMizer 知识图谱:LLM长会话记忆的结构化压缩与恢复方案
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-6-11 04:46 , Processed in 0.627461 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表