用状态机外壳兜住大模型:一个AI团体疗愈游戏的可控性实践

简介: 《心晴谷》是一款AI原生疗愈游戏:玩家操控精灵穿梭瀑布、花海等五大场景,与定制化AI伙伴共同绘画、分享心情、完成正念练习;每项活动生成专属明信片。项目基于React+FastAPI开发,借助Qoder实现状态机管控、多模态协同与长流程恢复,将团体心理辅导理念游戏化落地。

happyvalley_2.35-1.png


01.png


这是一个怎样的游戏


这是一款 AI 原生的疗愈类小游戏。进入心晴谷,你可以控制自己的精灵自由穿梭五个好看的场景,在瀑布、花海、雪夜极光、星空沙滩上开启不同的疗愈活动。


主线玩法是一个绘画疗愈小屋。在小屋里,你可以与一群 AI 伙伴共同创作一幅只属于这个小组的画作,随后你们一起讨论这幅画、分享困惑和心情,并收获一张精美明信片。


游戏中的 AI 伙伴是为你量身定制的,具有不同身份和人生经历,他们会分享自己的经历和困惑,也会关照你的情绪。支线玩法是在游戏中可以顺手完成的一些自助练习,例如你可以走进冬日暖屋,写下一封感恩信,在花海中记录今天发生的三件好事,也可以在森林瀑布旁席地而坐完成一次正念冥想。


每完成一次活动,玩家都会获得一张随机生成的纪念卡片,鼓励玩家在游戏中探索,不知不觉完成更多疗愈训练。


image (16).png


02.png


从想法到可玩产品:我们怎样用 Qoder 把它做出来


心晴谷不只是一个好看的游戏界面。它的前端是 React + TypeScript,后端是 FastAPI + PostgreSQL;文字、图片和语音能力被接进同一条活动流程。看上去只是"几个人一起画一幅画",背后却要让角色、文本生成、图片生成、语音播放和页面状态在正确的时刻接力。


Qoder 对我们来说,不是替人"一句话生成产品",而是陪着把这些工程问题一个个拆开、落到代码里。这次我们几乎把 Qoder 当作开发环境的一部分来用。不同阶段,我们在 Auto、Performance、Ultimate 等档位间切换,也实际使用过 GLM-5.2、Kimi K3 和 Qwen 系列模型:需要快速把前后端上下文对齐时,先让它梳理调用关系;遇到状态流转、并发和断线恢复这类难题时,再用更强的推理能力一起推演方案。


image (17).png


第一层是状态机外壳。后端把整个活动拆成明确阶段,我们据此在 Qoder 的帮助下设计好了绘画疗愈活动的整个状态机。接入大模型后整体流程的可控性是评判状态机设计好坏的核心影响因素,也是困扰我们很久的一个重难点。早期调试时,AI 主持人小晴的开场有时可能漏掉活动方式,AI 团友可能会因系统提示词约束力不够强导致输出乱码或是不属于它应该输出的内容。


针对问题一,Qoder 通过设计阶段白名单,限定当前阶段只允许特定的下一阶段,任何跳级直接 400 拒绝,并通过强制校验条件确保流程的确定性。


针对问题二,Qoder 将需要结构化数据的节点统一返回 JSON,再由 Pydantic 校验,长度、必需字段或安全边界不合格,就进入重试或可恢复的失败状态。


image (18).png


第二层是大模型补表达。我们不限制大模型是否一定要按照某个模板输出。我们用 Qoder 给人物定好边界、时长和语气,作为系统提示词附加给本次调用的 LLM。大约 70% 是预置流程和安全兜底,保证稳定、不越界;30% 留给模型做自然回应和细节填充。


image (19).png


第三层是绘画提示词合成。我们在联调中发现,把所有内容都传给图片模型,真人玩家的发言可能被后续 AI 团友的发言内容稀释,以及文本被图片模型拒绝时整段会重来一遍。我们在代码层面先按接龙顺序连接全部贡献,再把真人玩家的原话追加到"画面中必须重点体现"的强约束中,合成结果保存为 final_prompt,便于恢复和排查。用户文本在入库和送入模型前统一净化,图片接口遇到审核拒绝时,再用净化后的提示词重试,最终完成整幅图片的生成。


image (20).png


第四层是长流程恢复。一场活动后端要串起多次文本生成、一次图片生成、语音分段和时长校准,任何一个环节卡住都可能影响体验。我们用 Qoder 顺着前后端调用链查问题:WebSocket 掉线时,前端会先拉房间快照,再重连;实时事件停住时,也会继续轮询房间状态。后端保留 5 分钟重连窗口,同一条命令重复送达也不会重复生成内容。


image (21).png


第五层是明信片留存。活动结束后,后端会生成总结、鼓励语和明信片内容,前端再拉取画作资源,拼成最终留念页。对用户来说,这是一张温暖的卡;对工程来说,它让组队、接龙、生成、分享、总结和留存真正走完一遍。


image (22).png


我们对游戏开发并不熟悉。像素场景、角色移动、碰撞判定这些基础能力,是我们边问 Qoder 边写边调出来的;WebSocket 掉线、快照恢复、命令幂等这些问题,则在 Qoder 的帮助下逐层拆清楚。


它没有替我们决定产品方向,但在"这个想法怎么真的落地"上,补上了一个全天在线的工程队友。


image (23).png


03.png


为什么选择做这个作品


这不是赛前临时想到的点子,而是已经酝酿了一个多月的产品想法。我们发现,许多陪伴产品主要通过 1v1 角色扮演和对话,也有一些产品做 AI 心理咨询,但一对一咨询真正起效的关键,往往是咨询师本人。我们不想再做一个普通的 AI 陪聊产品。


但团体心理辅导不一样。欧文·亚隆在《团体心理治疗:理论与实践》中总结的诸多疗效因子里,普同性、人际学习、团体凝聚力这些来自成员之间的因素占了多数,也就是说,团体起效靠的不是带领者讲授知识,而是成员在安全的氛围里互相共情、分享多元视角。这恰恰意味着,团体辅导不依赖真人老师,天然适合让 AI 参与进来。在我们的调研范围里,目前还没有把团体心理辅导和 AI 结合起来的疗愈产品。此外,我们选择用游戏化的方式降低入门门槛,让用户在不知不觉中完成更多疗愈活动。


image (24).png


04.png


临时组队,然后真的做出来了


我们是临时组队。心理学专业的同学负责 PRD 和方向把控,软件专业的同学负责全栈落地,硬件出身的同学负责 MBTI 角色形象和前端功能。三天近 40 小时,睡眠不超过 15 小时,大家一直在往前推。


这次最开心的,不是把一个概念讲圆,而是真的把它做了出来。心晴谷还不完美:团体活动形式、生成速度、专业元素都还有打磨空间,但它已经不再只是脑子里的想法。也正因为这几天高强度地落地,我们更清楚地看到了它的样子和潜力。


最后,也感谢 Qoder 多次重置额度,让"第四个队友"始终在线。出发前,我们没有想过能在 Qoder 赛道 140 多个参赛作品中拿到一等奖。黑客松最神奇的地方,或许就在于它给了人一个足够专注的空间:让一个原本抽象的想法,在几天里长成了可以被打开、被体验的心晴谷。


点击即可体验内测版本。如遇卡顿,请刷新或稍作等候。

目录
相关文章
人工智能 缓存 前端开发
6134 18
人工智能 JavaScript 开发工具
3025 4
缓存 JavaScript Shell
1375 1
|
12天前
|
存储 弹性计算 缓存
阿里云服务器租赁费用:新版租赁收费标准及活动报价参考
本文更新了2026年阿里云全系列云服务器租赁活动报价,所有特惠资源均可前往阿里云活动中心选购,整体覆盖从个人入门到企业级高性能场景的全梯度需求。其中轻量应用服务器主打极致性价比,2核2G峰值200M带宽配置每日10点、15点限时抢购价仅38元/年,2核4G配置379元/年起;高性价比的经济型e实例、通用算力型u2i实例覆盖2核4G至4核32G全档位,适配开发测试与中小型企业业务;搭载英特尔至强6处理器的第九代c9i企业级实例算力较上代提升20%,支撑高并发生产环境,不同实例规格价差清晰,用户可根据自身业务负载与预算灵活选型。
2067 121
阿里云服务器租赁费用:新版租赁收费标准及活动报价参考
|
13天前
|
人工智能 程序员 API
Codex 接入 DeepSeek-V4-Flash:还能补上识图,提供两套方案
Codex 接入 DeepSeek-V4-Flash 怎么配?本文覆盖 CLI 与桌面端,再用 qwen3-vl-flash 补识图,两套方案可直接照做
1662 13
缓存 人工智能 算法
635 1
|
10天前
|
编解码 弹性计算 云计算
MiniMax-H3 视频生成模型 — 一键部署与使用指南
MiniMax-H3是MiniMax开源的33B全模态视频生成模型,支持文生视频、图生视频、参考生视频三种模式,原生输出2K/15秒带立体声音频视频,已原生适配ComfyUI,并可通过阿里云计算巢一键部署。(239字)
|
11天前
|
人工智能 API 开发工具
2026 零基础本地 AI 漫剧完整实操教程(8G 笔记本显卡可用|附可直接复制命令与代码)
本方案提供完全离线、本地运行的漫剧全自动制作流程:RTX3060/4050 8G显卡即可驱动,涵盖Qwen写分镜→ComfyUI统一角色绘图→LTX2.3图生微动画→Qwen3-TTS本地配音→FFmpeg自动合成,全程无水印、免API、不限次。专为低显存优化,解决变脸、闪烁、爆内存三大痛点。(239字)
|
19天前
|
云安全 人工智能 运维
阿里云联动百位企业安全专家,共识Agent防御最佳实践
当Agent成为新员工,你的安全边界在哪里?
1983 10
阿里云联动百位企业安全专家,共识Agent防御最佳实践