2026.05.29征图日记25(还要干一个月标注?那我……)
一个东西,如果知道的人不给你说,你可能永远都不知道。公司的webAi项目,分前后端,本来应该是前端发送数据,后端接受+返回,但是有时候为了单独测试前端,所以添加了一层mock,express层,也就是表示层,初衷是:开发前端时,有些接口后端还没写好,就用假数据先顶着,后端写好的接口,通过兜底代理转发到后端Django。
在创建新项目的时候,mock层把这个请求拦下来了,提示“该项目已存在”,但是后端有接口,前端拿到的永远是mock的假数据。这个如果不是Ai告诉我我不知道要什么时候才知道。
今天上午qxx目前还没有给任务给我,目前还在看代码,目前打算先把代码逻辑大概搞清楚之后再和mentor那边讨论,看能不能拿需求做一下,agent开发如果能参与还是能在秋招吹一波的~
中午快吃饭的时候问了leader说这个标注可能还要有一个月,之后有一个Qt的C++项目需要我参加,问了我会什么语言。我在想不能真让我干一个月标注吧?那我就要自己偷偷干自己的事了,下午一边标注,一边在改造我的搜索引擎项目。最后的目标是改成我自己的知识库,因为后续可能还会分享一些自己的东西,所以这就不仅仅是一个博客网站或者是一个搜索平台了,我希望是集个人知识库,个人分享平台,个人信息检索平台等等,反正后续还没想好,先把基本的搜索+Ai处理信息+前端界面搭建好。至少能在面试的时候能有东西讲。
并且我干标注要给自己规定时间,上午一共三个小时,我只干两小时,剩下一小时去看mentor在做的agent的代码,自己吸收了,最好能讲成自己做的。下午5h,最多干3h标注,剩下的时间要么刷力扣,背八股,要么改项目,学新技术。总之要为秋招做准备了!
今日工作内容
- 标注电解液133,破损36,软质异物146,脏污22,膜面气泡83
- 学习公司项目的技术栈
下阶段计划
- 继续参与标注
- 继续学习技术,参与agent项目(写给mentor看的)
Boost Searcher 重构:模糊搜索 + AI 增强 + 高并发 + MD 收录
Goal
将现有的 Boost HTML 文档搜索引擎重构为通用的 Markdown 文档搜索平台,支持模糊搜索、AI 增强搜索(类似 Bing 的 AI 摘要)、高并发后端、易改前端。
Architecture Decision
三层架构:C++ 搜索引擎 + Python FastAPI 中间层 + React 前端
1 | 浏览器 (React) |
- C++ 负责:索引构建、搜索、模糊匹配(核心算法)
- Python 负责:API 路由、SSE 流式推送、AI API 调用
- React 负责:用户界面、SSE 消费、结果渲染
Requirements
1. C++ 搜索引擎 (engine/)
- C++17 标准,零外部系统依赖(仅 cppjieba 在仓库内)
- jsoncpp → nlohmann/json(单头文件)
- pthread → std::thread/std::mutex(C++11 标准库)
- Boost (filesystem/string) → std::filesystem + std::transform
- Makefile → CMakeLists.txt
- parser 支持 MD 文档解析(标题/内容/URL 提取)
- 索引层加 Bigram 模糊搜索
- HTTP JSON 接口(/search?q=xxx)
2. Python FastAPI 中间层 (server/)
- 路由转发 + SSE 流式响应
- AI API 调用(Claude/OpenAI)
- 搜索结果先返回,AI 摘要异步追加
3. React 前端 (web/)
- TypeScript + Vite
- 组件化:SearchBar / SearchResults / AiSummary
- SSE 消费 hook (useSearch)
Decision (ADR-lite)
Context: 项目是简历项目,核心必须保持 C++,同时支持 AI 增强搜索
Decision: C++ 搜索引擎 + Python FastAPI 中间层 + React 前端;C++ 依赖全部替换为标准库/头文件
Consequences: C++ 代码量不变,但依赖管理大幅简化;Python 层引入额外进程,但职责清晰
Out of Scope (explicit)
- 分布式/集群部署
- 用户认证/权限系统
- Docker 部署(后续添加)
- 多租户支持
Phase 1: C++ 引擎重构(当前任务)
将现有 C++ 代码迁移到 engine/ 目录,替换依赖,确保编译通过运行正常。
子任务
- 目录迁移: 源码 → engine/src/,词典 → engine/dict/,头文件 → engine/include/
- 依赖替换:
- jsoncpp → nlohmann/json (third/json.hpp)
- Boost::filesystem → std::filesystem (C++17)
- boost::to_lower → std::transform + ::tolower
- pthread → std::thread/std::mutex (已有,移除 pthread 链接)
- CMakeLists.txt: 替代 Makefile,支持 out-of-source 构建
- 编译验证: cmake .. && make,运行 parser + http_server + debug