我差点删掉的一个 AI 副业项目
它始于一个周末的实验。六个月后,我每天都在使用它。
像许多开发者一样,我有一堆未完成的副项目坟墓。
文件夹的名字像这样:
ai-tool-v1
new-ai-tool
final-ai-tool
final-final-ai-tool
really-final-ai-tool
你懂的。
大多数副项目都悄无声息地死掉了。
一阵兴奋。
几个深夜的编码会话。
然后现实降临。
这个特定的项目也走向了同样的命运。
想法很简单:
构建一个AI系统,作为我开发工作的第二大脑。
没有什么革命性的。
只是一个让想法、代码片段、研究、bug修复、架构决策和项目笔记存放的地方。
起初,它感觉没有必要。
然后奇怪的事情发生了。
我开始使用它。
每天。
然后每天多次。
最终,它成了我工作流程中最有价值的工具之一。
不是因为它很智能。
因为它消除了摩擦。
而消除摩擦往往是最大生产力提升的来源。
1、大多数开发者都有记忆问题
我们喜欢认为自己擅长记忆技术信息。
其实不是。
至少我不是。
每周我都会发现自己已经在搜索我已经解决过的问题。
像这样的问题:
- 我是怎么修复那个Docker问题的?
- 我们用了哪个API端点?
- 那个有用的Python库是什么?
- 我们为什么选择这个架构?
- 那个SQL查询在哪里?
答案是存在的。
在某个地方。
通常埋在:
- Slack消息
- Notion页面
- GitHub issue
- 随机的文本文件
- 浏览器书签
信息没有丢失。
它只是不可访问。
这是一个非常不同的问题。
2、仅仅搜索是不够的
传统搜索在你知道你要找什么时有效。
问题是开发者通常不知道。
有时候我会搜索:
authentication problem
而我实际需要的是:
JWT refresh token issue
from February project
人类记忆是模糊的。
传统搜索期望精确。
AI出人意料地很好地弥合了这个差距。
3、第一个版本简陋得令人尴尬
第一个版本不过是:
Store notes
↓
Generate embeddings
↓
Search
↓
Retrieve results
就这样。
没有花哨的代理。
没有自主工作流。
没有复杂的架构。
核心实现看起来像这样:
from openai import OpenAI
from chromadb import Client
client = OpenAI()
db = Client()
def save_note(text):
embedding = (
client.embeddings.create(
model="text-embedding-3-small",
input=text
)
.data[0]
.embedding
)
db.add(
documents=[text],
embeddings=[embedding]
)
说实话?
它并不令人兴奋。
但它能用。
而能用的软件永远胜过令人兴奋的软件。
4、然后我添加了上下文检索
这是改变一切的功能。
系统不再只是查找笔记,而是可以自动收集相关信息。
例如:
我可以问:
How did we handle authentication
in the ecommerce project?
系统会检索:
- 架构笔记
- 实现细节
- 相关的代码片段
- 之前的bug报告
- 部署笔记
突然它感觉不那么像搜索了。
而更像有一个记忆力完美的队友。
5、真正的生产力提升来自于捕获一切
大多数生产力系统失败的原因是人们停止使用它们。
解决方案不是让检索更智能。
而是让存储更容易。
任何东西都可以保存:
- 会议笔记
- 架构决策
- 代码片段
- 文档
- 研究发现
- AI提示词
- 调试会话
信息越容易捕获,系统就越有价值。
因为知识会复利。
6、AI出人意料地擅长组织混乱
我没想到会喜欢的功能之一是自动分类。
每条新笔记都会自动接收标签。
例如:
Python
Automation
Backend
Database
Architecture
API Design
不需要手动组织。
系统逐渐自我组织起来。
这正是好的软件应该做的。
减少工作量,而不是创造更多工作量。
7、我开始构建专门的AI代理
一旦知识库存在,新的机会就出现了。
我没有使用一个助手,而是创建了几个专门的代理。
一个专注于:
Code Reviews
另一个处理:
Research Summaries
另一个专门做:
Architecture Recommendations
每个代理都访问同一个知识库。
这大大提高了输出质量,因为回复基于真实的项目历史。
而不是通用的互联网知识。
8、最有用的代理不是最聪明的那个
我最常使用的代理执行一个极其无聊的任务。
文档生成。
给定一个项目文件夹:
Project Files
↓
Code Analysis
↓
Feature Detection
↓
Documentation Draft
↓
README Creation
实现看起来像这样:
from pathlib import Path
def analyze_project(root):
files = []
for file in Path(root).rglob("*"):
if file.is_file():
files.append(
file.read_text(
errors="ignore"
)
)
return "\n".join(files)
简单。
但极其有用。
因为开发者很少喜欢写文档。
9、构建AI工作流改变了我对软件的思考方式
在AI之前,软件主要遵循规则。
输入。
处理。
输出。
现代系统不同了。
它们可以:
- 解释
- 分类
- 总结
- 优先排序
- 推荐
这创造了全新的设计可能性。
应用程序变得不那么程序化,更加自适应。
不是自主的。
是自适应的。
这是一个重要的区别。
10、最有价值的AI产品不是消费应用
这个认识花了我一段时间。
每个人都想构建下一个病毒式传播的AI产品。
与此同时,公司正在为以下系统支付真金白银:
- 处理文档
- 组织信息
- 自动化报告
- 分类请求
- 总结会议
- 监控竞争对手
这些问题不那么令人兴奋。
但它们也明显更有利可图。
无聊的问题往往隐藏着有价值的机会。
原文链接: The AI Side Project I Almost Deleted Became the Most Useful Tool on My Laptop
汇智网翻译整理,转载请标明出处