【 社会服务+社会公益】 + Momo 陪伴岛

【标签】 社会服务+社会公益

【标题】【 社会服务+社会公益】 + Momo 陪伴岛

【正文】 至少包含以下 4 个部分,可以增加额外的部分(比如自我介绍、经验总结、踩坑复盘等)

0. 先和大家打个招呼吧 :waving_hand:

  • 你是谁: 我是一个 B 端产品经理,平时做得更多的是业务流程、系统能力和效率工具。因为很久没有接触 C 端产品设计,我一直对那些真正进入普通人生活、能够回应情绪和感受的产品抱有憧憬。但不懂代码、缺少 C 端设计经验,也让我一直没有真正迈出这一步。

    我曾经养过一只很可爱的猫,叫噗噗。后来噗噗因病离开了。直到现在,我的手机里还留着很多它的照片和 Live Photo。偶尔翻到这些影像,我还是会很想它,也会很难过。

    照片可以保存过去,却很难回应此刻的想念。我也尝试过一些 AI 宠物生成工具,但过于写实的“复刻”反而让我觉得不真实,甚至有一点不适。我不想让 AI 假装噗噗真的回来了,也不想让一个产品告诉用户应该怎样面对失去。

    我真正想做的,只是一个更轻、更克制的表达方式:把宠物照片生成一个保留熟悉特征、但明确是卡通形象的陪伴角色。当用户拍下自己此刻正在做的事情,它可以出现在这段生活场景里,走一走、看一看、玩一会儿,再留下一句“它现在正在做什么”的简单旁白。

    这就是我设计 Momo 陪伴岛的原因。它不是为了复活宠物,也不承诺治愈悲伤。它只是希望在想念突然出现的时候,给用户一个温柔、私密,又不会太沉重的入口。也许我们无法让已经离开的宠物回来,但可以换一种方式,继续记录这段关系留给我们的爱。

    TRAE 也让我第一次觉得,自己和一个真正的 C 端产品之间没有那么遥远。我把脑海里很模糊的感受一句句告诉它,再和它一起拆解产品流程、调整界面、实现 iOS 交互、接入图像与视频模型,并不断根据真实运行结果纠偏。它没有替我完成思考,而是让我这个很久没有做过 C 端产品、也没有独立开发能力的 B 端产品经理,终于有机会把一个很私人的念头,慢慢做成可以被体验的产品。

    
  • 你是怎么用 TRAE 把 Demo 做出来的: 我没有技术背景,所以没有让 TRAE 一次生成整个产品,而是像和开发团队沟通一样,把想法一步步讲给它:先说明用户场景和产品边界,再拆解宠物照片上传、卡通形象生成、Live Photo 合成、场景旁白和作品保存等功能。

    每完成一部分,我都会在模拟器或手机上体验,再把截图和真实感受发给 TRAE。例如底部 Tab 不够原生、文案太刻意、照片入口没有真正拉起,或者任务重启后无法恢复。我们就在“生成、测试、发现问题、继续调整”的过程中,把 Demo 逐渐跑通。

    TRAE 没有替我做产品判断,而是帮助我把判断变成了可以运行的代码。它让我这个很久没有做过 C 端产品、也不会独立开发的 B 端产品经理,第一次真正把脑海里的产品做了出来。

1. Demo 简介

  • 是什么:Momo 陪伴岛是一款面向经历宠物离别用户的 iOS AI 影像陪伴 Demo。用户上传一张宠物照片后,系统会生成明显卡通化、保留身份特征的陪伴形象;当用户拍下或选择一张当下生活场景的 Live Photo,AI 会让这个形象在场景里自然地走动、观察或玩耍,生成一份可以保存、播放和回看的 Live 陪伴作品。

  • 面向谁:它主要面向经历过宠物离别、仍然保留宠物照片的养宠用户和宠物家庭。产品不试图重现真实宠物,也不要求用户讲述伤痛,只提供一个轻量、私密的日常记录入口。

  • 主要功能:

    • 添加陪伴:选择一张宠物照片并填写名字,线上图像模型生成明显卡通化、保留身份特征的陪伴形象。
    • 生成 Live 陪伴作品:选择一张当下生活场景的 Live Photo,视觉模型分析空间与动作,视频模型让卡通宠物在场景中自然活动,随后重新封装为可保存、可长按播放的 Live Photo。
    • 场景旁白与作品回看:文本模型根据宠物名字和真实场景生成一句“它现在正在做什么”的简短旁白;作品支持任务恢复、回看和保存重试。

首页:

2. Demo 创作思路

  • 灵感来源:很多人在宠物离开后,会长期保留照片、Live Photo、视频和生活用品。这些素材承载了很深的关系,但用户往往很难找到一个轻一点、安全一点的方式继续安放想念。普通 AI 修图偏娱乐,写实复刻又容易让人产生不适,所以我希望做一个更克制的方向:不是“复活宠物”,而是让一个明确卡通化的爱宠形象,在新的生活场景里短暂陪伴用户。

  • 想解决的问题:宠物离别后的思念很日常,也很私密。用户可能并不想公开表达,也不想被劝说“快点走出来”。Momo 陪伴岛提供一个低压力入口:拍下或选择一张“我现在在做什么”的 Live Photo,让卡通爱宠出现在窗边、沙发、书桌、街角或旅行途中,再收到一句只描述它此刻动作的轻旁白;

  • 为什么做这个方向:这个 Demo 选择 Live Photo 而不是普通静态图,是因为 Live Photo 更接近日常记忆:它有轻微动作、有现场感,也能保存回 iPhone 相册继续回看。把这个技术底座用于宠物离别后的陪伴场景,可以同时展示情绪价值、交互体验和完整技术闭环。

    同时,产品定位是社会服务和公益向的情绪表达工具,不替代心理咨询,不暗示宠物真实复活,也不鼓励用户过度依赖 AI。

3. Demo 体验地址(三选一)

  • 部署随时可公开访问的体验链接;

  • 交互式可体验的HTML格式

    Momo陪伴岛_交互Demo.zip (928.6 KB)

    文件,请使用Zip格式打包上传到社区;

  • 硬件交互赛道可用演示视频替代在线体验(视频请上传第三方平台后附公开链接)。

  • 效果图:

原livemomo产品:

及后端设计:

4. TRAE 实践过程

  • 本 Demo 以 TRAE Work CN 作为主要开发环境,通过多轮自然语言任务拆分、代码生成、运行验证和纠偏,把原型逐步打磨为可连接真实模型的 iOS Demo。

    阶段 1:核心数据链路与兼容性修复

    • 目标:让生成结果中的 companion_text 能在新生成、后台同步和 App 重启后稳定恢复,并兼容旧版本本地数据。

    • TRAE 执行内容:补齐作品存储与后端同步字段;显式传递 pet_profile_id;将旧数据迁移字段改为可选,避免旧作品解码失败。

    • 关键文件:WorkLibrary.swiftGenerationService.swiftContentView.swift

    • Session ID:6a53cba7fc2fd962b7a07e77

    阶段 2:添加陪伴闭环

    • 目标:点击「添加陪伴」后直接拉起照片入口,并形成宠物照片到陪伴档案的闭环。

    • TRAE 执行内容:补齐 v1/pet-profile 后端接口;iOS 处理 409 时复用已有档案 ID,仅清理本次新建失败的空档案;修正宠物照片 multipart 上传;增加创建、上传、生成阶段提示和失败重试。

    • 关键文件:backend/livemomo_backend/models.pybackend/livemomo_backend/storage.pybackend/livemomo_backend/main.pyLiveMomo/LiveMomoApp/GenerationService.swiftPetProfileView.swift

    • Session ID:6a53cba7fc2fd962b7a07e77

    阶段 3:Live 生成绑定宠物与陪伴文字

    • 目标:让 Live Photo 生成结果和当前宠物陪伴形象建立关系,并在结果页展示温柔陪伴文字。

    • TRAE 执行内容:为生成任务增加 pet_profile_idcompanion_text;修复旧 job 对象覆盖 provider 最新字段的问题;建立旁白的安全边界和持久化链路。生产化收尾阶段进一步接入文本模型,让旁白基于真实场景动态生成,并保留安全回退。

    • 关键文件:backend/livemomo_backend/services/generation.pybackend/livemomo_backend/models.pyLiveMomo/LiveMomoApp/Models.swiftLiveMomo/LiveMomoApp/ResultView.swift

    • Session ID:6a53df6cfc2fd962b7a080d9

    阶段 4:iOS 展示打磨与独立验收

    • 目标:按初赛展示标准收敛首页、我的作品和作品详情页,并验证添加陪伴入口。

    • TRAE 执行内容:左上角改为轻量 pawprint.fill + momo陪伴;最近作品增加连续圆角、淡描边和阴影;确认底部 Tab 使用系统 Material、spring 与 matched geometry 动画;确认我的作品没有统计区和收藏 Tab;补齐作品列表到详情页的导航和作品更新回传。

    • 质量纠偏:TRAE 一度新增根层照片选择和重复上传逻辑;复核后确认原 autoOpenPicker 已满足一键直达,随后由 TRAE 撤回 121 行多余实现。模拟器复测又发现作品卡片无法进入详情,以及详情页出现重复标题、底部 Tab 遮挡内容,TRAE 随后补齐详情导航,并在详情展示期间隐藏根层标题和浮动 Tab。

    • 关键文件:FloatingTabBar.swiftHomeView.swiftContentView.swiftPetProfileView.swiftWorksView.swift

    • Session ID:6a53e4eefc2fd962b7a0813e

    阶段 5:验证与参赛证据整理

    • TRAE 后端验证:python3 -m compileall backend/livemomo_backend,通过。

    • TRAE iOS 验证:xcodebuild 编译,显示 BUILD SUCCEEDED

    • Codex 复核后端验证:python3 -m compileall backend/livemomo_backend,通过。

    • Codex 复核 iOS 验证:针对 iPhone 17 Pro 模拟器执行 Debug 构建,通过,退出码为 0。

    • Codex 模拟器交互验证:添加陪伴一次点击后拉起系统照片选择器;首页和我的作品页均无文字重叠;底部 Material 能透出下方作品内容;作品卡片可进入详情,详情页仅显示一个标题且不被底部 Tab 遮挡,返回后顶部和底部栏正常恢复。

    阶段 6:真实模型与发布级收尾

    • 宠物卡通形象已接入 Qwen 图像编辑模型,不再复制原图占位。

    • 场景理解使用 VLM 输出空间锚点、动作和安全约束,Wan 视频模型完成真实生活场景融合。

    • 场景旁白已接入文本模型,且在模型异常或输出越界时自动使用安全回退。

    • 后端增加任务、宠物档案和生成文件的用户隔离;客户端增加任务恢复、网络重试和单宠物替换规则。

    • 自动化验收结果:后端 41 项测试全部通过,iOS 43 项测试全部通过,签名真机包构建成功;线上真实任务已完成从宠物档案、Live Photo 上传、模型生成、旁白生成到结果下载的完整链路。

    • 为方便评审在没有 iOS 安装包的情况下直接体验,我又整理了无需联网的交互 HTML 版本,并验证了手机尺寸下的完整点击路径。

5. 对应的报名审核通过的帖子链接