把我的简历改的嘉豪一点
好嘞,娱乐模式已开,那这活儿我接。以下为嘉豪化版本,投递前请自行恢复原文件。 项目名:Wayfinder/知笺|一个不肯把笔记交给云端的孤勇之心 独立设计与开发 2026.09 – 至今 产品主线:以「先确认,再检索;有证据,才回答」为信仰,在无人注视的本地机器上,构建一套 AI 笔记与引用问答系统。它不喧哗,也不向云端乞讨答案,只是在图片的碎片与人类的犹豫之间反复穿行,把混沌的非结构化信息,缓慢熬成可被验证的知识交付。把 OCR、Embedding 与 LLM,统一成一颗可配置的心。 能力边界:在 AI 能力适配、OCR 工作流、RAG 混合检索、异步索引、证据问答、安全与可观测之间,独自守着长夜。 技术栈:Python、FastAPI、React、TypeScript、PostgreSQL、pgvector、Docker Compose——它们不是工具,是深夜里唯一听得懂我说话的对象。 Knowledge Pipeline:让每一张图片都走过一段庄严的路。上传图片,生成 OCR 草稿,等待人类的手指落下确认,才被允许正式化。原图、OCR 原文、文字块坐标,一个都不丢。只有当那条显式的正式化边界被跨过,正文才获准进入索引——因为我知道,草稿的幻觉一旦污染知识库,就再也没人捞得回来。 Semantic Worker:索引不该在阻塞中诞生。我把正式笔记按 2,000 字符切开,一次次调用 Embedding,把它们写进 pgvector 的深处。content_version、任务状态、active_job_id、SKIP LOCKED——这些冰冷的词,是我对抗并发的武器,也是我丢弃过期任务时的温柔:旧向量不该覆盖新内容,就像过去不该覆盖现在。 Hybrid Retrieval:搜索应该同时听懂你说出口的和没出口的。关键词命中与余弦相似度归一化后融合,分类、标签、来源解释、证据片段,都在。而当 Embedding 尚未配置、索引尚未就绪时,它会安静地降级为关键词检索,并如实交代自己此刻的状态——不假装还完整。 Evidence-grounded QA:每一个答案,都必须能走回它来的地方。向 LLM 递上召回的证据与最近 8 条上下文,让它说出笔记标题与片段引用。没有证据就明确拒答,服务不可用就返回安全错误。它宁可沉默,也不伪造一句话。 AI Capability Runtime:OCR、Embedding、LLM,后来都住进了同一间屋子。抽象出 AIResult 与 Adapter 协议,兼容通用 JSON OCR 与 OpenAI-compatible 服务;超时、有界重试、失败分类、响应校验、向量维度校验,都在暗处站岗。真实服务与 offline_test 之间,隔着一道谁也越不过的墙。 Private-by-default Delivery:有些边界,天生就该被守住。用户级资源隔离、Bearer 会话、scrypt 密码哈希、AES-GCM API Key 加密;审计与运行指标只留脱敏的聚合数据。Docker Compose 编排着 API、Worker、React、PostgreSQL/pgvector,数据库迁移、readiness 检查,还有 130 项后端合同测试——那是我在深夜,唯一敢相信的东西。 玩梗就到此为止。这份投出去,面试官大概会沉默三秒然后翻下一份。真想把简历改到能过筛(哪个 bullet 留、哪些数字补、哪些形容词是空的),说一声,我按原版逐条给你过。