我的 AI 角色陪伴系统开发记录(阶段一)
从 0 到上线:我的 AI 角色陪伴系统开发记录(阶段一)
一个真正属于自己的 AI 小伙伴,从本地测试到 Cloudflare Pages 正式上线。
一、项目目标回顾
我想做的不是一个普通聊天机器人,而是:
- 有名字
- 有人设
- 有边界
- 有长期记忆
- 有关系成长
- 会随着时间变化
目标非常克制:
- ✅ 仅供个人使用
- ✅ 纯 Web(iPhone Safari 可用)
- ✅ 成本可控
- ✅ 长期可扩展
- ✅ 使用 DeepSeek API
二、当前系统架构(已上线版本)
技术栈
前端:
- Next.js(App Router)
- 静态导出模式(output: “export”)
- 部署到 Cloudflare Pages
后端:
- Cloudflare Workers
- DeepSeek API
- D1 数据库
数据库:
- D1(SQLite)
三、最终部署结构
用户浏览器 |
四、当前已实现功能
1️⃣ 聊天系统
- 流式输出(SSE)
- 自动保存 user / assistant 消息
- 过滤异常历史记录
- 稳定的流式解析
2️⃣ 角色系统
- 单角色(c1)
- 自定义人设
- 强制完整句式输出
- 防止碎片拼接
3️⃣ 关系成长系统
亲密度 0-100
阶段:
- 陌生
- 熟悉
- 默契
- 羁绊
每次聊天 +1(后续可优化)
4️⃣ 记忆系统
- 长期画像 memory_profile
- 事件卡 memory_events
- finalize 抽取
五、Cloudflare Pages 部署流程(完整记录)
1️⃣ 本地配置静态导出
next.config.ts:
import type { NextConfig } from "next"; |
本地验证:
npm run build |
必须存在 out/ 目录。
2️⃣ 推送 GitHub
git add . |
3️⃣ Cloudflare Pages 新建项目
Workers & Pages → Pages → Create
配置:
- Framework: Next.js
- Build command:
npm run build - Build output directory:
out - Root directory: 留空
4️⃣ API 调用方式
前端直接调用 Worker:
fetch("https://ai-buddy-api.xxx.workers.dev/api/chat") |
六、以后如何更新代码(备忘)
修改前端代码
- 本地修改
- 本地测试
npm run dev |
- 构建确认
npm run build |
- 推送
git add . |
Cloudflare Pages 会自动部署。
修改 Worker 代码
进入 worker 目录:
cd worker |
无需重新部署 Pages。
修改数据库结构
wrangler d1 execute ai_buddy_db --remote --file=./schema.sql |
或在 D1 控制台执行 SQL。
七、踩过的坑记录
1️⃣ Pages 白屏
原因:
- Root directory 填错(填成 app)
- 没启用静态导出
解决:
- output: “export”
- Build output directory = out
2️⃣ 流式输出乱码/断句
原因:
- SSE 解析不完整
- chunk 被截断
- 历史污染
解决:
- 使用 buffer 逐行解析
- 过滤异常 assistant 内容
3️⃣ Git push 失败
原因:
- remote 被删除
- gitclone rewrite
解决:
- 改为 SSH
- 重新设置 origin
八、当前系统状态评估
稳定性:⭐⭐⭐⭐☆
体验自然度:⭐⭐⭐☆☆
成长系统完整度:⭐⭐☆☆☆
记忆准确度:⭐⭐⭐☆☆
已经达到“可长期使用”水平。
九、下一步开发计划
第一阶段优化(短期)
- 优化亲密度算法(根据情绪而不是固定 +1)
- 优化记忆合并逻辑(避免重复)
- 前端 UI 改为聊天气泡样式
- 自动滚动优化
- 增加“清空会话”按钮
第二阶段(陪伴增强)
- 每日主动问候
- 情绪趋势图
- 纪念日记录
- 共同经历时间轴
第三阶段(长期规划)
- 多角色切换
- 语音模式
- 语义记忆检索(向量)
- 情绪建模
- 长期人格演化机制
十、成本评估
DeepSeek API 非常便宜。
当前成本构成:
- 请求 token
- 流式输出
- 偶尔 finalize
预计个人使用:
几乎可以忽略不计。
十一、这个项目的意义
这不仅是一个聊天系统。
它是:
- 一个长期数字陪伴实验
- 一个可进化 AI 关系系统
- 一个个人 AI 架构练习场
它会随着时间变得更有价值。
十二、当前版本标签
版本:v0.1
状态:已上线
功能:单角色陪伴 + 成长 + 记忆
部署:Cloudflare Pages + Workers
结语
现在这个系统已经可以稳定运行。
下一步是让它:
- 更自然
- 更聪明
- 更有长期陪伴感
我会持续迭代。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 SereniusX的博客!
评论