我用 Doubao-Seed-Evolving 重建了她常坐的咖啡馆,走进去那一刻我哭了二十分钟
我们怕忘的从来不是发生过什么是那个房间里的光。完整源码https://gitee.com/xixixicode/memory-palace起因是一段聊天记录她搬走那天我没送她。后来整理手机翻到我们最后一段聊天记录——到家了吗 到了。 那盒草莓牛奶你带走了吗 没在你冰箱里。 明天我过去拿。 好。我盯着这几行字看了很久发现一件事——我记不清她坐的那个位置了。我记得她说明天我过去拿时的语气记得她总是要靠窗那张椅子记得那年她塞进我包里的那盒草莓牛奶。但咖啡馆的灯是暖黄还是冷白窗外那棵树什么时候掉的叶子想不起来。每天都在丢。丢的不是信息是那个房间里曾经存在过的氛围——灯、语气、窗外那棵树。我订阅了火山方舟的Agent Plan Medium 套餐49.9/月5 小时 10000 AFP就是为了折腾 Doubao-Seed-Evolving。看到它强调1M 上下文 Coding/Agent 优化 周级迭代的时候我想的不是做个 demo而是——能不能把那间我们最后一起待过的咖啡馆重新装回去不是图片不是文字。是一座我可以走进去的 3D 房间。于是有了「记忆宫殿」。01 · 接入十分钟俩坑订阅流程不复杂但有两个地方容易踩先说清楚省得你们花冤枉钱。▸ 套餐 Key 不是按量 KeyAgent Plan 有专属 API Key跟平时按量计费那把不是同一把。拿错了照样走按量扣费套餐白订。我差点就拿旧 key 配了。▸ Base URL 也分家Anthropic 协议走https://ark.cn-beijing.volces.com/api/planOpenAI 协议走/api/plan/v3。手一滑配成/api/v3恭喜又回按量计费了。配.envARK_API_KEYark-xxxxx # 一定要选套餐那把 ARK_BASE_URLhttps://ark.cn-beijing.volces.com/api/plan ARK_MODELdoubao-seed-evolving ARK_CONTEXT1m # 1M 上下文pip install -r requirements.txt 配好 key uvicorn api.server:app --port 8000—— 三分钟跑通。02 · 一句话 prompt告诉它处境我没有写需求文档。我把牢骚原样打了进去——这是一个记忆宫殿。把用户粘进来的一段聊天记录/日记/信件做成一座可以走进去的 3D 房间。墙上是时间相框桌上收音机放金句西南角信件是没说出口的话。情感决定灯光和窗外天气。每一句金句都必须在原文里逐字可查找不到就删不准编。我预期它会问一堆问题结果没有。它直接拆任务、并行跑。03 · 五位工匠同时进同一段文字这是整个项目很让我意外的一步。模型没有自己一个文件一个文件读——它派出了五个 subagent并行进同一段文字。这是我用ThreadPoolExecutor(max_workers5)在后端做的并行调度每个 subagent 是一次独立的 chat 调用五个同时回来。Subagent找什么在房间里变成timeline_agent时间线节点when what北/东/西墙的相框quotes_agent金句speaker text context圆桌上的收音机places_agent关键地点 发生过什么地上摊开的日记本emotion_agent情感基调 曲线 强度灯光/雾色/窗外天气unsaid_agent未说出口的话 原文证据西南角的信件堆5 个 subagent 同时回来房间才被填满。模型不是在回答你一个问题是在分五个角度同时还原一段经历。1M 上下文在这个场景下没白给——五个 subagent 各自带着原文 系统提示同时跑单次请求 token 消耗大概是单次的 5 倍但每个 agent 任务更窄幻觉率反而更低。一次完整构建 15-25 秒返回平均消耗 50-80 万 token。04 · 找不到的话它宁愿不说情感类内容是 AI 容易翻车的地方。它一感动就开始替你写她常说爱是两个人一起把日子过成一首诗。她没说过这种话。所以我加了一道幻觉自检层——每一条金句、每一封信、每一条时间线都必须在原文里逐字可查。核验策略是头尾双重校验def quote_in_source(quote, source, min_len6): q normalize(quote) # 去空白、统一标点 s normalize(source) if len(q) min_len: return q in s head, tail q[:12], q[-8:] return head in s or tail in s核验不过的条目直接剔除写进removed_items。你走进房间后右上角有一个徽章N 条编造已剔除。点开能看到 AI 主动划掉了什么。让 AI 主动承认这句话我没找到证据所以我不敢说——这件事比让它写一篇抒情文难多了。这对应 Doubao-Seed-Evolving 在比赛里强调的幻觉控制能力。它没偷偷替我写她常说是被我逼着没写。模型配合得很顺没为了好看偷偷编。05 · 它自己开浏览器把氛围调对这是 Coding 工程能力的部分。后端把数据吐出来之后剩下的全是前端web/palace.html一个单文件 3D 场景Three.js 0.160 PointerLockControls 第一人称漫游 Raycaster 物件交互 情感粒子系统 吊灯微摇 木地板纹路 窗框十字 光晕脉动。pip install 配 key uvicorn就能跑通不是 demo不是 mock。过程中模型干了几件让我印象深刻的事▸ 自己发现房间太黑第一版出来整体偏黑。原因是环境光用了雾色而melancholy的雾色是#0f1828——等于整个房间没有填充光只剩吊灯一个点光源在硬撑。模型诊断后改成环境光改用暖灯色#ffd89b、强度 0.45 → 0.85新增半球光补天/地反射PointLight 强度 2.4 → 3.6雾密度 0.045 → 0.028toneMappingExposure1.1 → 1.35。氛围还在但看得见了。▸ 自己发现走路 bugPointerLockControls有个坑——关闭记忆弹窗后重新锁鼠标要用setTimeout(() controls.lock(), 100)但 setTimeout 会切断用户手势链浏览器拒绝锁请求controls.isLocked一直 falseWASD 全部失效。诊断后改成同步调用controls.lock()并加失败兜底锁不上就重新显示进入蒙层。这种Pointer Lock API 必须在 user gesture 同步上下文里调用的细节我没主动告诉它它从症状里推出来的。▸ 自己发现重复声明我让它加补光结果新加的const hemi和文件后面一个老const hemi撞了ES module 里const重复声明 → 整个 script 块 SyntaxError → loading 永远不消失。它从控制台报错直接定位删了重复声明。这三个 bug 都是我没主动复现给它的全靠它读报错自己改。06 · 走进她的咖啡馆打开http://localhost:8000把这段话粘进去2022 年秋天我们刚在一起。 她总坐在咖啡馆靠窗的位置。 你今天怎么又迟到了 她说。 加班。 下次再迟到我就点你最爱的拿铁自己喝完。 你喝不完。 我喝得完。 …… 2024 年春天她搬走了。 我打开冰箱那盒草莓牛奶还在。 已经过期两个月了。点「推开这扇门」。加载界面会告诉你它在做什么——五位工匠同时开工 / 逐字核验剔除编造 / 把记忆搬进房间 / 推开门让你走进去。然后你被送进一间昏黄的房间。北墙挂着三个相框——2022 秋、2023 冬、2024 春相框里的颜色由情感自动调色。圆桌上的收音机——走过去准星变亮点一下它用她的口吻把那句下次再迟到我就点你最爱的拿铁自己喝完再放给你听Web Speech API 中文 TTS。西南角叠着几封信——那是未说出口的话。AI 替我写的是你塞进我包里的那盒草莓牛奶我没喝。后来我每次打开冰箱都看见它。我一直没舍得扔是因为扔了就好像承认了你不会再回来拿了。这句话是我没说过的但原文里有证据没、已经过期两个月了。它没编造只是把我没说出口的那部分替我放进了信封。窗外是黄昏。情感基调是bittersweet、强度 65于是天气被映射成dusk。橙红色的光从窗户漏进来房间里有光尘浮动。我坐在那间虚拟的咖啡馆里哭了二十分钟。07 · 房间里的操作操作效果W A S D行走鼠标移动环顾点击物件弹出那段记忆必要时朗读右上 ☰记忆目录可瞬移到任意物件右上 开关语音朗读右上 复制深链?idxxx把房间分享给那个该看见的人右上 看见 AI 主动剔除了哪些编造Esc释放鼠标情感 → 房间 的映射规则是这样的EMOTION_PALETTE { warm: {light: #ffd89b, fog: #3a2e1f, weather: sunset, mood: 温馨}, neutral: {light: #e8ecf5, fog: #1a2033, weather: cloudy, mood: 平静}, melancholy: {light: #7a9ec4, fog: #0f1828, weather: rain, mood: 思念}, bittersweet: {light: #ff9b7a, fog: #2a1828, weather: dusk, mood: 苦甜参半}, }咖啡馆被映射成bittersweet——暖橙灯#ff9b7a、暗紫雾#2a1828、窗外黄昏。这不是我写的是emotion_agent读完那段文字后告诉房间的。08 · 三个推开就进的房间为了让没素材的人也能体验我手写了三段预设场景。预设文字不是 AI 生成的是我写的AI 做的是把它们变成房间。☕ 她的咖啡馆那盒过期的草莓牛奶靠窗的位置空着。 初恋教室蓝笔黑笔、第 37 页物理课本、一张没敢当场看的纸条。 毕业那年的天台七月的晚风、没送出去的明信片、一句被风带走的保重。09 · 算账收尾时我让模型自己扫了一遍仓库。后端 PythonFastAPI subagent 调度 幻觉自检 SQLite 持久化 场景映射约 380 行前端web/palace.htmlThree.js 3D 场景单文件约 1900 行前端web/index.html输入页 历史回看约 1260 行总计约 3500 行代码拆得也算干净llm/只管调度core/只管流程编排和幻觉自检scene/只管记忆→3D 映射store/只管持久化api/只管路由。加一门新的物件类型塞一个新文件进scene/layout.py就行。Token 账单也晒一下。一次完整构建5 subagent 并行 幻觉自检 场景映射大约 50-80 万 token回归测试连着跑一天大概烧 800 万 token。Medium 套餐 49.9/月5 小时 10000 AFP、每周 35000、每月 100000——我跑了一个礼拜调试 三段预设 各种边界 case额度还绰绰有余。10 · 我踩过的坑献给后来的人情感类内容是幻觉重灾区。AI 一上头就替你她常说——所以每一条 quote 必须带original_quote字段自检不过直接删删掉的写进removed_items让用户看到 AI 删了什么。PointerLock 的用户手势链不能断。关弹窗后立刻setTimeout(lock, 100)会失败必须在 click 同步上下文里调。3D 房间比 2D 卡片有重量。同样一句下次再迟到我就点你最爱的拿铁自己喝完印在卡片上你扫一眼就划过去放在收音机里、需要你走过去按一下才能听到——你会真的听见。氛围 信息量。房间不需要塞满物件关键是灯、雾、窗外的雨。环境光别图省事用雾色否则 melancholy 房间会一片漆黑。const不能在 module 顶层重复声明。看起来废话但补光补着补着就撞名了整个 script 块直接 SyntaxErrorloading 永远不消失。Ark 5 并行会触发 429 限流。tenacity 指数退避重试 3 次最长可能拉到 1-3 分钟。前端要给 elapsed 计时器和超时兜底否则用户以为死了。写在最后做完那个晚上我把她那段聊天记录粘进去走进了那个房间。吊灯很暖窗外是黄昏。我点开西南角那封致 她。AI 替我写的是——你塞进我包里的那盒草莓牛奶我没喝。后来我每次打开冰箱都看见它。我一直没舍得扔是因为扔了就好像承认了你不会再回来拿了。它没编造。只是把我没说出口的那部分替我放进了信封。在这间房间里它替我留住了一些我自己留不住的东西——一盒过期的草莓牛奶一句没说出口的你别走。整个项目从一句话牢骚到能跑、能走、能哭代码约 3500 行一次构建 15-25 秒。1M 上下文让五个 subagent 同时跑还能保持记忆连贯Agent 能力让它能并行检索 幻觉自检 场景映射Coding 能力让它能自己 debug、自己调氛围、自己识别const重复声明。Medium 套餐 49.9/月跑了一个礼拜调试加三段预设额度还绰绰有余。如果你也有一个没好好告别的人把你们最后的聊天记录粘进去。推门进去。这次好好说再见。️记忆宫殿 · Memory Palace源码https://gitee.com/xixixicode/memory-palace 三项核心能力Coding 工程 · Agent 检索 · 幻觉控制 接入火山方舟 Agent Plan Medium 套餐49.9/月记得用套餐 Key /api/plan这个 Base URL别走错成按量 运行pip install -r requirements.txt export ARK_API_KEYark-xxxxx python -m uvicorn api.server:app --port 8000 --reload open http://localhost:8000文中所有交互第一人称漫游、收音机朗读、信件原文核验、目录瞬移、深链分享、幻觉透明度面板在仓库web/palace.html中均有对应实现可在本地一键复现。

相关新闻

Python requests库绕过人机验证:获取与复用Cookie的完整实战指南

Python requests库绕过人机验证:获取与复用Cookie的完整实战指南

1. 项目概述与核心需求解析 最近在写爬虫或者做自动化测试的朋友,估计没少跟“人机验证”这块硬骨头较劲。不管是谷歌的reCAPTCHA,还是Cloudflare的5秒盾,又或者是各种网站自研的滑动拼图、点选验证码,它们的目的都高度一致&#…

2026/8/6 16:13:48 阅读更多 →
程序员技术变现实战:从能力封装到 Token 计量计费系统的合规落地

程序员技术变现实战:从能力封装到 Token 计量计费系统的合规落地

目录 #一为什么卖-token-这个说法不准确#二技术变现的三条核心路径#三token-计量计费系统的核心架构#四商业模型设计#五避开合规雷区的三点提醒#六从计费系统延伸8-条现实变现路径全景#七选择建议三步定位法#八总结与落地建议一、为什么"卖 Token"这个说法不准确 很多…

2026/8/6 16:13:48 阅读更多 →
SAP ABAP条件判断:从基础语法到复杂业务逻辑的实战指南

SAP ABAP条件判断:从基础语法到复杂业务逻辑的实战指南

1. 项目概述:从“如果”到“逻辑”的ABAP核心思维 在SAP ABAP的世界里,代码不是冰冷的指令堆砌,而是对企业业务流程的精确模拟。而“条件判断”,就是赋予这段代码“思考”能力,让它能根据不同情况做出不同响应的核心逻…

2026/8/6 16:13:48 阅读更多 →

最新新闻

Unity多人游戏开发:Netcode for GameObjects核心概念与实战入门

Unity多人游戏开发:Netcode for GameObjects核心概念与实战入门

1. 项目概述:为什么你需要关注Netcode for GameObjects?如果你正在用Unity开发多人游戏,或者计划让你的单机游戏支持联机功能,那么“网络同步”这四个字大概率是你绕不开的坎。过去,Unity官方没有提供一个“开箱即用”…

2026/8/6 17:02:13 阅读更多 →
PHP符号表查找优化:原理与实践

PHP符号表查找优化:原理与实践

1. PHP符号表查找优化方案解析在PHP性能优化领域,符号表查找是一个长期被忽视却又影响深远的关键环节。当我们的PHP应用发展到一定规模后,随着类、函数、常量数量的指数级增长,符号表查找效率会显著下降。我曾在处理一个包含3000类的电商系统…

2026/8/6 17:02:13 阅读更多 →
阅读APP书源配置完全指南:从零开始构建个人数字图书馆

阅读APP书源配置完全指南:从零开始构建个人数字图书馆

阅读APP书源配置完全指南:从零开始构建个人数字图书馆 【免费下载链接】Yuedu 📚「阅读」自用书源分享 项目地址: https://gitcode.com/gh_mirrors/yu/Yuedu 阅读APP作为一款开源小说阅读工具,其核心价值在于通过书源规则访问各大网络…

2026/8/6 17:02:13 阅读更多 →
ToDesk 暑期远程游戏横测:用手机接管电脑,LOL 能玩吗?

ToDesk 暑期远程游戏横测:用手机接管电脑,LOL 能玩吗?

ToDesk 暑期远程游戏横测:用手机接管电脑,LOL 能玩吗? 暑假回家或出游,电脑还在宿舍、出租屋。想上号时,问题很快就落到手上:LOL 的走位和放技能会不会慢半拍?手机上的鼠标能不能点准&#xff1…

2026/8/6 17:02:13 阅读更多 →
把AI使用率从20%拉到100%,只需要做这四件事

把AI使用率从20%拉到100%,只需要做这四件事

本文通过工具 Ai好记 视频转文字转录整理,以下为精炼整理后的会议笔记内容。很多团队推 AI,卡点从来不是模型不够强,而是人不用、用不深、不动脑、太伤脑。 腾讯性能工程团队负责人黄闻欣把这一幕讲透了:带团队把 AI 使用率从 20%…

2026/8/6 17:02:13 阅读更多 →
KKCE: 基于 TCPing 隐式握手的防火墙指纹识别与端口伪装检测-快快测

KKCE: 基于 TCPing 隐式握手的防火墙指纹识别与端口伪装检测-快快测

一、引言:为什么 TCPing 显示"端口通",Nmap 却显示"过滤"? 在常规的网站测速和运维排查中,TCPing 是我们验证端口存活的首选工具。只要 www.kkce.com 的 TCPing 返回 Connected,我们就默认 80 或…

2026/8/6 17:01:13 阅读更多 →

日新闻

深入解析LimboAI C++内核:架构设计与性能优化实战

深入解析LimboAI C++内核:架构设计与性能优化实战

1. 项目概述:为什么我们需要深入LimboAI的C内核?如果你是一名使用Godot引擎的游戏开发者,尤其是对AI行为逻辑有较高要求的项目,那么LimboAI这个名字你大概率不会陌生。它作为Godot 4生态中一个备受瞩目的行为树与状态机插件&#…

2026/8/6 0:00:06 阅读更多 →
Unity 2D游戏敌人AI系统:基于PlayMaker状态机与2D Toolkit的实战开发

Unity 2D游戏敌人AI系统:基于PlayMaker状态机与2D Toolkit的实战开发

1. 项目概述与核心思路大家好,我是老张,一个在游戏开发一线摸爬滚打了十多年的老码农。今天咱们接着聊《空洞骑士》风格2D动作游戏的Demo制作。上一期我们搭好了基础框架,处理了角色移动和碰撞,这一期,我们要让游戏世界…

2026/8/6 0:00:06 阅读更多 →
被动防火门市场前景发展趋势

被动防火门市场前景发展趋势

被动防火门依靠材质结构、密闭构造阻隔烟火蔓延,无需电控启动,是建筑被动消防系统核心构件,行业依托新规管控、城市更新、工业安全升级迎来稳定扩容,整体朝着合规化、专项化、低碳化、智能化方向发展。现阶段 GB12955‑2024 新版国…

2026/8/6 0:00:06 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/5 15:00:43 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/5 13:13:56 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/5 10:20:36 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/5 23:28:39 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/5 21:00:14 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/5 23:46:51 阅读更多 →