因为自己喜欢旅行,也喜欢有代入感、愿意发给朋友的内容,所以做了这个项目。
项目14 · 视频素材台
从完整聊天记录回捞,不是成稿
它不是从“我喜欢旅行”开始的。
最初,你只是在和朋友讨论 TA 的 TogCard,顺手给了三个十一分享卡点子。后来觉得第二个相对靠谱,才冒出“可能我自己来做”的念头。
“比较容易促成分享的,一个是美照,一个是无厘头的东西……这些都适合做个独立小程序,快速上线追波热点就完成了它的使命。”

可以讲,但不要倒写成最初动机。
帮朋友讨论产品时冒出点子 → 判断美照和无厘头有分享力 → 觉得方向二比较靠谱 → 决定亲自把它往前做。
我本来只是在帮朋友想点子,后来自己做了一个产品
真实起点不是旅行理想,而是一次朋友间的产品讨论。三个随口冒出的节日点子里,“足不出户打卡各地”看起来最靠谱,于是没有让它停在聊天框里。
可用细节
- TogCard 讨论背景
- 民族图案 / 十一打卡地 / 月饼测试三个点子
- “后面可能我自己来做”这句原话
三个点子里,我为什么最后选了第二个
不是做了完整市场分析才选择,而是凭当时的产品直觉:它更容易找到画面风格,也同时容纳“美照”和“无厘头”两种分享动力。
可用细节
- 三个方向横向对比
- 热点小工具“完成使命就结束”的边界
- 方向二从假设走到样片的过程
我一次做了 20 种画风,最后发现风格不是答案
20 张图证明 AI 可以画得很多,但朋友不一定因此想分享。真正的转折是:风格只能让人停下,“这个人在这里认真做什么怪事”才让人接梗。
可用细节
- 20 风格总画廊
- 木版、剪纸、油画、拼贴、水墨等差异
- 传播性最强与动作不清楚的反例
朋友说“AI味太浓”,我一开始理解错了
自己以为朋友在批评图片风格,继续追问才发现他说的是承载图片的网站 UI。这是一个很好的真实片段:反馈重要,但先理解反馈在说什么更重要。
可用细节
- 第一次误解成图片中性色
- 朋友补充“我说的是 UI 风格”
- 最终记录反馈但没有立刻照单全收
朋友只说了两个字,却改变了整个产品:好玩
网页发给朋友后,他们没有先谈模型或画质,而是抓住“好玩”。从这以后,项目判断标准从旅行美照变成:会不会笑、会不会回一句、会不会想生成自己的版本。
可用细节
- “好玩”原话
- 60 个扩展场景
- 外星找信号、挤云取水、世界边缘公交等样例
AI 负责执行,我负责判断:具体到底判断了什么
不是一句抽象口号。项目里反复发生的是:AI给出一个版本,你指出授权不对、Skill认错、脸不像、光影不一致、衣服不合场景、首页太复杂、回执比例不一致,再决定下一版只改什么。
可用细节
- 《牛来》授权边界
- 真人样本“左边西瓜图案更像”
- “不需要外面那个框,那是示意”
- 网页与下载回执尺寸不一致
没有亲手写代码,但我每天都在说“不对”
“不对”不是情绪,而是逐渐变成可以执行的判断:哪里挡住人物、为什么不够清爽、照片为什么不像本人、哪个流程会误导用户。AI让修改更快,也迫使自己把感觉说清楚。
可用细节
- 首页 v0.5.1 被直接评价“太丑了”
- 飞毯与标题关系连续修正
- 错误虚拟结果兜底被发现并取消
为什么先做小红书小工具,再把真人生成放到网页
不是简单二选一。小工具适合低门槛体验、发布结果卡,网页适合真人上传、在线生成和公开链接;人物、场景、文案和图片可以共享,只有平台能力单独适配。
可用细节
- 小组件邀请制调研
- Builder Hub 实际发布入口
- openRedPage 只能站内跳转
- 共享内容核心 + 平台适配层
一次真的发布,比十份方案更快暴露问题
小工具提审后才发现 App 版本影响发布;微信里才发现图片下载和保存失效;手机真机才看到人物裁切、首屏高度和结果卡重复文案。
可用细节
- 更新小红书 App 后发布恢复
- 微信 blob 图片无法稳定保存
- 移动端一屏布局连续调整
四张真人照片,教会我“像本人”不是一个开关
身份一致性会被光线、角度、发型、服装、场景和美化程度共同影响。有人锚点像、扩展后不像;有人脸像但不好看;还有人需要本人确认才能下结论。
可用细节
- 4 位授权样本
- 身份锚点与场景扩展分阶段
- 像本人 / 好看 / 光影 / 衣服 / 好玩五项判断
我以为只是做个小游戏,后来却做了图片审核和隐私保护
真人照片一进来,问题就从“画得好不好”变成“能不能安全处理”:黄赌毒、不是真人、多人、恶意重复上传、照片保存多久、删除后是否还能访问。
可用细节
- 私有隔离区
- 输入审核 → 单人脸与质量 → 生成 → 输出复审
- 原图 24 小时、结果 7 天、最小状态 30 天
我问了一个很像产品经理的问题:会不会把 A 的图发给 B
这句聊天原话可以直接成为视频开头。它把抽象的“系统安全”变成每个人都能理解的风险,也带出匿名会话、所有权校验、私有存储和删除测试。
可用细节
- A/B 双会话隔离
- 匿名 owner_hash
- 删除后 404
- 最近生成只返回当前浏览器的数据
登录会增加门槛,不登录又怎么保存历史?
这是一个真实而没有完美答案的产品取舍。首版选择游客先生成、同一浏览器保留最近记录;未来登录只解决跨设备、长期相册和额度,不挡住第一次体验。
可用细节
- 匿名 Cookie
- 最近 12 条 / 7 天
- 结果后再提示登录价值
我为什么把一个小游戏越做越少
项目不是一路加功能。它删掉了首页 1/2/3 步骤、重复解释、“朋友接梗”、重复按钮和不会改变虚拟图片的风格选择,让第一步最终只剩“选一个人,然后出发”。
可用细节
- 首页只铺四张人物卡
- 结果按钮移到卡片外
- 选择态隐藏完整风格库
- 加载页压缩到一屏
一张飞毯,我为什么改了这么多版
飞毯不是最初产品起点,而是后来形成的首页叙事锚点。标题印在毯面太丑、示意框被误当正式设计、飞毯与文字位置反复不对,最后才找到“托住标题”的关系。
可用细节
- v0.5.1—v0.5.4 对比
- “不需要外面那个框”
- 短流苏、落地图案、再飞一次按钮
生成一张图很快,把它真正上线却很慢
出图只是最显眼的一步。后面还有模型成本、供应商付款、Queue、每日预算、超时重试、审核、人脸质量、微信保存、反馈表单和监控。
可用细节
- OFOX 与官方价格对比
- Cloudflare Queue / D1 / R2
- 腾讯云审核与 DetectFace
- 飞书反馈表
OpenAI 付不了款以后,我怎么把项目继续往前推
没有因为一个 Key 停掉整个项目。先比较聚合供应商是否仍支持想用的 OpenAI 模型,再选 OFOX;同时意识到生图可用不代表审核可用,于是又补国内安全通道。
可用细节
- OFOX / AIHubMix / 硅基流动对比
- 保留 OpenAI 模型偏好
- 腾讯云图片内容安全 + 人脸检测
这个项目还没做完,我为什么已经开始发给朋友
因为项目的关键假设本来就不能靠自己证明:别人有没有看懂、觉得好玩吗、想不想用真人照片、场景看第二遍还新鲜吗、愿不愿意发给具体朋友。
可用细节
- 设计朋友 UI 反馈
- “真人照片更愿意对接”
- “场景看一遍就没新鲜感”
- 继续扩场景与真人入口
我换了更好的模型,却发现模型不是唯一变量
API 版效果不如聊天里的结果,第一反应很容易怪模型。真正复盘后才发现:模型代际、参考图数量与顺序、Prompt 和两阶段流程都不一样。
可用细节
- GPT Image 2 → 2.5 Sunburst
- 原照+身份锚点双参考
- 先缩小变量,再比较效果
3 位成人跑通,1 位儿童被拒绝:我没有绕过安全策略
测试不是为了得到漂亮的“全部成功”。儿童样本被供应商拦截后,项目选择接受拒绝,不换说法、不重试碰运气,也不把未成年人塞进首期产品。
可用细节
- 成人 3/3 完整跑通
- 儿童样本在锚点阶段被拒绝
- 首期只支持成年人本人照片
为什么我让用户先确认“这是不是我”,再允许 AI 继续
过去的问题是锚点勉强像,扩展到场景后却越来越不像。新流程先停在原照与锚点对照,只有本人按下“像我”,才继续生成旅行场景。
可用细节
- 原照 / 身份锚点并排确认
- 不满意只重做锚点
- 确认后所有地点复用同一人物基线
“像本人”和“看起来自然”不是同一个问题
哈尔滨版本更精致,敦煌版本更自然,但这不该反过来决定身份锚点是否合格。身份门槛回答“是不是我”,风格反馈回答“我更喜欢哪种呈现”。
可用细节
- 同一锚点生成两种风格
- 身份确认与审美偏好分层
- 自然度用于改默认风格,不用于否定身份
三次生图不到 0.1 美元,真正贵的是每一步判断
一次锚点、两张场景的直接模型费用是 $0.094804。数字不大,但前后需要判断授权、安全、像不像、自然不自然、能否复用、是否值得开放。
可用细节
- $0.094804 实测费用
- 锚点 1 次+场景 2 次
- 每一步判断都决定下一次是否值得调用
一个小游戏为什么需要“每天最多 20 次”
首期不是追求访问量,而是把真实转化、失败分布和成本看清楚。每天 20 次、每分钟 2 次、并发 2,让它即使被集中访问也不会失控。
可用细节
- 约支持 10 人各生成一张场景
- 或约 6 人再多飞一次
- 预计模型成本上限约 $0.6—0.7 / 天
能生成不等于能运营:小游戏也需要一个后台
公开真人入口之前,先做了只读运营后台:看过去 24 小时的上传、审核、任务、错误、耗时与费用,但不提供用户照片图库,也不能从网页改生产开关。
可用细节
- 后台先就绪,真人入口才允许开放
- 只看聚合指标与脱敏错误
- 独立长口令+显式开关
真人入口上线了,第一条真实数据还是 0
代码、配置、安全链路和只读检查都通过后,生产数据库仍然是零。因为最后一条证据不能由开发者伪造:必须由本人真实完成上传、锚点确认、生成、刷新恢复和删除。
可用细节
- 上线后 uploads / jobs / results 均为 0
- 不拿测试数据冒充真实用户
- 上线不是结尾,而是验证的起点