我一直以为,从零做一个"能聊天能发语音能生角色图片"的全栈 AI Web 应用,至少得搞两周。
前阵子找了一段整块时间,10 小时一口气把一个 AI 角色扮演应用的 v1.0.0 推上线了。
任意邮箱可注册,几个 AI 角色,对话能出真语音、能生成对应角色的形象图。不是赶工赶出来的,是真的能跑——LLM 真聊天、TTS 真语音、AI 锁脸真生图、人机验证、对象存储、自有域名发邮箱、每日定时任务全部接通。
说实话,10 小时这种东西比想象中稀缺得多。日常状态下我能用的整块时间最多 2-3 小时一段,再长就要被各种事情切碎,比如接送孩子、回消息、临时插进来的事。
能凑出连续 10 小时不被打断,得提前把所有可能的中断源都清掉。这种 "清场" 动作比折腾代码本身还要用心。
一旦中断,后面四五个小时的连贯节奏就会塌掉,得重新让 AI 爬一遍上下文。
效率大概只剩三分之一。
10 小时之内,一气推完 4 个 milestone。事后回看,能这么快真不是因为我懂代码,是因为有些坑前面 M3-M4 已经踩透了,到 M5 之后基本就是"踩点连按"——AI 跑出来的结果我一眼就知道对不对。
其实吧,这种 "前面踩透 + 后面收割" 的节奏不是这次才发现的。第一次接触一个新工具、新框架,永远是踩坑期,你不知道哪些是设计意图、哪些是隐藏陷阱。
但只要踩过 5-6 次代表性的坑,再看新功能就会自动起警觉:"这块以前是不是有过类似的雷?"
前期慢一点不是浪费,是在给自己装雷达。
M3-M4 那两天我推得特别慢,慢到怀疑自己是不是不适合做这个。回头看,我觉得那种慢正是后面 10 小时一口气推完的前提。
说到这个,举几个真踩过的坑给自己留个备忘。
DeepSeek 的 V4-flash 开 JSON mode 偶发会输出 35-50 个空白字符,finish_reason 还是 stop。一开始我以为是 prompt 写错了,跟 AI 调来调去才搞清楚——是模型某些 prompt 触发了它的"困惑模式"。
最后干脆让 AI 把 response_format: json_object 关掉,让它自然输出 JSON,再让它加一个三层兜底解析(直接 parse → 剥 markdown → 抽第一个大括号),解析失败就把整段 raw 当文本回复降级。
Next 16 在 dev 和 serverless 模式下,普通的 fire-and-forget(fetch().catch() 不 await)写法,response 一返回进程就被回收了——你以为发出去的 fetch 根本没来得及发。我让 AI 改成 import { after } from 'next/server' 包一下才稳。
国产生图 API 都带内容审核。"凌晨""巷子""老墙""青石板"这种看起来很文艺的词,全是触发审核的雷。
我设计的时候想偷懒,让 LLM 生成对话回复的时候顺便给一个 image_scene 字段当生图 prompt,结果中文越细腻越容易被拦。后来让 AI 全部换成英文通用 fallback:"casual selfie, looking at camera..."一下就稳了。
国产生图 API 返回的图 URL 是临时签名链接,过期时间 24 小时。必须立刻 fetch 下载 buffer 永久落到对象存储,不能直接把 URL 存进数据库。
这个坑是 M6 那天发现的。当时整个生图链路看起来好好的,再打开发现所有图全 403 了。
这些坑事先没人告诉我。每一个都是踩到的瞬间觉得"是不是 AI 哪里写错了",反复让它检查代码、对一遍 key、查一遍文档。
等 AI 真定位到根因的瞬间,又会想:这玩意儿下次再让 AI 做,5 分钟就能搞定。
最大的收获其实不是 v1.0.0 本身,是手里多了一个 "可以克隆的骨架"。
过去半年我一直在到处让 AI 帮我建小工具、试工具、改流程,做的都是"零件级"的事。每个动作都有用,但拼不成一个能给别人看的完整东西。
这次的不一样在于,不是又多了一个零件,是用以前积累的所有零件拼出了一个能跑能用的整体。
搞着搞着我发现,很多时候卡住的不是工具不够,是没意识到工具已经够了。
任意邮箱注册 + LLM 真聊天 + TTS 语音 + AI 锁脸生图 + 人机验证 + 对象存储 + 自有发件域名 + 定时任务,这一套全栈 AI Web 应用的零件都跑通了。
下一个项目,不管是 AI 教练、心理陪伴、AI 角色扮演还是故事生成,直接克隆这个仓库,告诉 AI 把几个角色的 system_prompt 和 base 图换掉就完事。
开发周期能从 2 周压到 1-2 周。
至少我现在是这么以为的。
下一站把第二个 AI Web 应用克隆出来跑一下,看能不能真做到。
做不到再回来改流程。

零渡人生| 一个普通人的 AI 学习日记
每天记录一点学 AI、做小项目的真实过程。
夜雨聆风