File size: 30,825 Bytes
eafbe80
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
/* Echo-Memory project page — EN / ZH strings */
window.ECHO_I18N = {
  en: {
    "meta.title": "Echo-Memory | Echo Team",
    "meta.description": "Echo-Memory: A controlled study of memory mechanisms in action-conditioned world models.",
    "nav.home": "Home",
    "nav.overview": "Overview",
    "nav.design": "Design",
    "nav.checkpoints": "Ckpt",
    "nav.eval": "Eval",
    "nav.evidence": "Qual",
    "nav.findings": "Results",
    "nav.updates": "Updates",
    "nav.bibtex": "BibTeX",
    "nav.developer": "Dev Guide",
    "nav.github": "GitHub",
    "nav.menu": "Menu",
    "lang.toggle": "中文",
    "lang.current": "EN",
    "lang.switch": "Switch language",
    "hero.badge": "Echo Team · Joy Future Academy, JD · June 2026 · CC BY 4.0",
    "hero.title.line2": "A Controlled Study of Memory in Action World Models",
    "hero.subtitle": "When the camera leaves and returns, which memory keeps the <strong>same world</strong> instead of a plausible but different scene?",
    "hero.cta.paper": "Paper",
    "hero.cta.pdf": "PDF",
    "hero.cta.ckpt": "Checkpoints",
    "hero.cta.code": "Code",
    "hero.metric.stars": "GitHub Stars",
    "hero.metric.forks": "Forks",
    "hero.note": "Controlled memory ablations on a shared <strong>Wan</strong> action-to-video stack — reproducible rows, evaluation scripts, and qualitative revisit panels.",
    "hero.authors.summary": "Authors & affiliations",
    "hero.affiliations": "HKU · Joy Future Academy, JD · CUHK · PKU · Fudan · Tsinghua · HKUST · UMich",
    "overview.kicker": "01 · Overview",
    "overview.title": "One backbone, one protocol — only memory changes.",
    "overview.lead": "Echo-Memory holds the video backbone, training recipe, and data protocol fixed, and swaps only the memory module. The goal is to separate <strong>replay fidelity</strong> from <strong>return memory</strong> when the camera leaves and comes back to the same place.",
    "overview.b1": "<strong>Shared stack</strong> — chunk-wise action-conditioned world generation on Wan.",
    "overview.b2": "<strong>Controlled variable</strong> — Context, Compression, Spatial, or State-Space memory.",
    "overview.b3": "<strong>Three probes</strong> — replay metrics, in-domain 180° loop, open-domain edited return.",
    "overview.b4": "<strong>Release</strong> — ablation scripts, GT replay, revisit assets, and paper-aligned figures.",
    "overview.fig.cap": "Controlled memory study over chunk-wise action-world generation. <span class=\"zoom-hint\">Click to expand</span>",
    "overview.fig.alt": "Echo-Memory framework overview",
    "design.kicker": "02 · Memory Design",
    "design.title": "Context · Compression · Spatial · State-Space",
    "design.lead": "All variants plug into the same write–read interface; we only change what is stored and how history is retrieved. A no-memory I2V floor re-generates from the first frame as a lower bound.",
    "design.context.title": "Context",
    "design.context.body": "Raw recent frames at K = 1, 5, or 20 chunks — tests whether longer windows alone stop drift.",
    "design.compression.title": "Compression",
    "design.compression.body": "Learned compact tokens at ratio r = 4 — history without growing raw-frame storage.",
    "design.spatial.title": "Spatial",
    "design.spatial.body": "Explicit spatial read/write state — targets layout, object pose, and viewpoint carry.",
    "design.ssm.title": "State-Space",
    "design.ssm.body": "Block-wise SSM updates — recurrent carry beyond short context windows on revisit.",
    "design.fig.cap": "Four memory families under a shared write–read interface. <span class=\"zoom-hint\">Click to expand</span>",
    "design.fig.alt": "Memory design matrix",
    "ckpt.kicker": "03 · Checkpoints",
    "ckpt.title": "Paper baselines on Hugging Face",
    "ckpt.lead": "Wan 2.1 1.3B memory rows — <strong>epoch-0</strong>, <strong>30,000 steps</strong>, static in-domain pool. Released weights: <a href=\"https://huggingface.co/Echo-Team/Echo-Memory\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>Echo-Team/Echo-Memory</strong></a>",
    "ckpt.th.family": "Family",
    "ckpt.th.row": "Paper row",
    "ckpt.th.path": "HF path",
    "ckpt.th.steps": "Steps",
    "ckpt.label.download": "Download",
    "ckpt.label.eval": "In-domain eval (Echo-Memory repo)",
    "ckpt.note": "Keep the row folder in <code>CKPT</code> — <code>env/memory_baseline_runtime.py</code> infers memory flags from the path. Full index: <a href=\"https://github.com/Echo-Team-Joy-Future-Academy-JD/Echo-Memory/blob/main/doc/checkpoints.md\" target=\"_blank\" rel=\"noopener noreferrer\">doc/checkpoints.md</a>.",
    "eval.kicker": "04 · Evaluation",
    "eval.title": "Replay · In-domain revisit · Open-domain return",
    "eval.lead": "Each branch asks a different question: Can the model reconstruct the past? Can it close a loop in-domain? After an edited first frame, does it return to the <strong>same world</strong>?",
    "eval.replay.title": "Replay",
    "eval.replay.body": "PSNR, SSIM, LPIPS on chunk-wise reconstruction — measures short-horizon pixel fidelity.",
    "eval.indomain.title": "In-domain",
    "eval.indomain.body": "180° trajectory loop closure with VLM-assisted scoring on held layouts.",
    "eval.opendomain.title": "Open-domain",
    "eval.opendomain.body": "Edited first frames and 45° return probes — stresses object identity and scene persistence.",
    "eval.dynamic.title": "Dynamic SpatialVID",
    "eval.dynamic.body": "Training and inference wrappers are public; the dynamic eval protocol is TODO.",
    "eval.fig.cap": "Replay health vs. return memory under the same stack. <span class=\"zoom-hint\">Click to expand</span>",
    "eval.fig.alt": "Three-branch evaluation summary",
    "evidence.kicker": "05 · Qualitative Evidence",
    "evidence.title": "Return probes expose identity drift.",
    "evidence.lead": "Qualitative panels follow a simple diagnostic: <strong>first frame → leave the view → revisit tail</strong>. We compare whether memory restores the same object, pose, background, and camera geometry — not merely a plausible new scene.",
    "evidence.chip1": "Memory Results",
    "evidence.chip2": "Open-Domain Sweep",
    "evidence.chip3": "Identity Anchors",
    "evidence.cap1": "Representative memory comparisons across variants. <span class=\"zoom-hint\">Click to expand</span>",
    "evidence.dynamic.note": "SpatialVID previews use one selected training scene and the same first frame, prompt, and GT camera trajectory for a 5-second first-chunk replay across all six rows.",
    "findings.kicker": "06 · Main Conclusions",
    "findings.title": "Replay quality ≠ memory quality.",
    "findings.lead": "Replay metrics and return probes do not always agree — a model can look sharp on reconstruction yet fail when the camera returns. Rankings reorder once identity under revisit is measured.",
    "findings.b1": "<strong>Raw context</strong> — more history helps open-domain return more than replay alone.",
    "findings.b2": "<strong>Compression</strong> — compact tokens can preserve replay while losing identity on return.",
    "findings.b3": "<strong>Spatial vs. SSM</strong> — explicit state and block-wise SSM trade off layout carry and long-horizon stability.",
    "findings.b4": "<strong>Takeaway</strong> — treat replay as a health check, not the final memory benchmark.",
    "findings.fig.cap": "Rank shift from replay to return — replay is not the final memory score. <span class=\"zoom-hint\">Click to expand</span>",
    "updates.kicker": "07 · News & Roadmap",
    "updates.title": "Release notes and next steps.",
    "updates.news": "News",
    "updates.roadmap": "Roadmap",
    "updates.news0": "SpatialVID support added: dynamic training/inference recipes, 5-second first-chunk replay previews, and dynamic eval marked as TODO.",
    "updates.news1": "Echo-Memory released: paper on <a href=\"https://arxiv.org/abs/2606.09803\" target=\"_blank\" rel=\"noopener noreferrer\">arXiv</a> (<a href=\"https://arxiv.org/pdf/2606.09803\" target=\"_blank\" rel=\"noopener noreferrer\">PDF</a>), project page, public code, replay/revisit eval assets, and baseline checkpoints on <a href=\"https://huggingface.co/Echo-Team/Echo-Memory\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>Echo-Team/Echo-Memory</strong></a>.",
    "updates.models": "Models",
    "updates.eval": "Eval",
    "updates.rm1": "<strong>Wan 2.1 1.3B</strong> backbone and training recipes",
    "updates.rm2": "Four memory families — Context, Compression, Spatial, State-Space",
    "updates.rm3": "<strong>Dynamic training pool</strong> — SpatialVID subset export & settings",
    "updates.rm4": "<strong>Paper checkpoints</strong> — <a href=\"https://huggingface.co/Echo-Team/Echo-Memory\" target=\"_blank\" rel=\"noopener noreferrer\">Echo-Team/Echo-Memory</a>",
    "updates.rm5": "<strong>Wan 2.2</strong> + multi-scale <strong>5B / 14B</strong>",
    "updates.re1": "<strong>Dynamic eval</strong> beyond static replay/revisit",
    "updates.re2": "More revisit probes and scoring presets",
    "community.title": "Community",
    "community.lead": "Join the Echo-Memory WeChat group for release updates, checkpoint questions, and maintainer coordination.",
    "community.qr.alt": "Echo-Memory WeChat group QR code",
    "community.qr.caption": "Echo-Memory 交流群 · scan to join (QR refreshes periodically)",
    "bibtex.kicker": "08 · Citation",
    "bibtex.title": "BibTeX",
    "bibtex.lead": "Echo-Memory: A Controlled Study of Memory in Action World Models (June 2026). Licensed under <a href=\"https://creativecommons.org/licenses/by/4.0/\" target=\"_blank\" rel=\"noopener noreferrer\">CC BY 4.0</a>. Cite the arXiv preprint below.",
    "bibtex.arxiv": "arXiv",
    "bibtex.source": "Source",
    "bibtex.doi": "DOI",
    "bibtex.arxivid": "arXiv ID",
    "bibtex.pdf": "PDF",
    "bibtex.license": "License",
    "bibtex.copy": "Copy",
    "bibtex.copied": "Copied",
    "bibtex.failed": "Failed",
    "footer.copy": "© Echo Team · Joy Future Academy, JD",
    "footer.pp": "Project Page",
    "zoom.hint": "Click to expand",
    "backtop": "Back to top",
    "lightbox.close": "Close",
    "lightbox.label": "Expanded figure",
    "dev.meta.title": "Echo-Memory Developer Guide",
    "dev.meta.description": "Echo-Memory development guide — workflows, eval, and Cursor vibe coding.",
    "dev.kicker": "Development · Cursor",
    "dev.title": "Developer Guide",
    "dev.subtitle": "Hands-on coding, training, eval, and <strong>Cursor vibe coding</strong> for Echo-Memory.",
    "dev.back": "← Back to project page",
    "dev.s1.title": "1. What this guide is",
    "dev.s1.body": "<li><strong>README</strong> — paper overview, quick start, checkpoints, community.</li><li><strong>This guide</strong> — workflows, project <strong>Cursor skills</strong>, Agent tips.</li><li><strong><code>doc/</code></strong> — dataset &amp; checkpoint reference.</li><li><strong><code>.cursor/skills/</code></strong> — Agent skills for train / eval / release.</li>",
    "dev.s2.title": "2. Environment & paths",
    "dev.s2.intro": "Set these before training or eval:",
    "dev.s2.body": "<li><strong>Static in-domain pool</strong> — default root above; see <code>doc/dataset_preprocessing.md</code>.</li><li><strong>Dynamic training pool</strong> — e.g. <code>data/dynamic-memory-dataset</code>; see <code>doc/dynamic_dataset_preprocessing.md</code>.</li><li><strong>Checkpoints</strong> — <a href=\"https://huggingface.co/Echo-Team/Echo-Memory\" target=\"_blank\" rel=\"noopener noreferrer\">Echo-Team/Echo-Memory</a>; index in <code>doc/checkpoints.md</code>.</li>",
    "dev.s3.title": "3. Code map",
    "dev.s3.table": "<table class=\"dev-table\"><thead><tr><th>Path</th><th>Role</th></tr></thead><tbody><tr><td><code>.cursor/skills/</code></td><td>Cursor Agent skills (train / eval / release)</td></tr><tr><td><code>train/memory_baselines_basic/</code></td><td>Spatial / SSM / compression ablations</td></tr><tr><td><code>train/context_learning/</code></td><td>Context K=1/5/20 recipes</td></tr><tr><td><code>eval/v2/</code></td><td>Replay, loop closure, open-domain revisit</td></tr><tr><td><code>env/memory_baseline_runtime.py</code></td><td>Checkpoint → memory profile</td></tr><tr><td><code>diffsynth/</code></td><td>Wan backbone &amp; training stack</td></tr><tr><td><code>docs/</code></td><td>GitHub Pages (project + this guide)</td></tr></tbody></table>",
    "dev.s4.title": "4. Common workflows",
    "dev.s4.trainLabel": "Train one memory row (from repo root):",
    "dev.s4.evalLabel": "Smoke eval with a HF checkpoint:",
    "dev.s4.note": "Keep the row folder name in <code>CKPT</code> so runtime picks the correct memory profile.",
    "dev.s5.title": "5. Cursor vibe coding",
    "dev.s5.intro": "Use <strong>Cursor Agent</strong> (Composer) with the project skills below.",
    "dev.s5.skillsTitle": "Project skills",
    "dev.s5.skills": "<table class=\"dev-table\"><thead><tr><th>Skill</th><th>Use when</th></tr></thead><tbody><tr><td><code>echo-memory-agent</code></td><td>Scope prompts, rules, skill index</td></tr><tr><td><code>echo-memory-train</code></td><td>Memory baselines &amp; context training</td></tr><tr><td><code>echo-memory-eval</code></td><td>Replay / revisit &amp; HF quick checks</td></tr><tr><td><code>echo-memory-release</code></td><td>gh-pages, i18n, checkpoints doc</td></tr></tbody></table><p class=\"section-note\">Paths: <code>.cursor/skills/&lt;name&gt;/SKILL.md</code> — invoke in chat, e.g. <em>use echo-memory-eval to …</em></p>",
    "dev.s5.body": "<li><strong>Scope prompts</strong> — memory family, script, eval branch (<em>replay / in-domain / open-domain</em>).</li><li><strong>Entry scripts</strong> — e.g. <code>run_spatial_memory_baseline.sh</code>, <code>eval/v2/run_basic_replay_gt.sh</code>.</li><li><strong>Rules</strong> — optional <code>.cursor/rules/echo-memory.mdc</code> for pool naming &amp; public doc constraints.</li><li><strong>Ask mode</strong> — trace checkpoint mapping or read <code>diffsynth/</code> without edits.</li>",
    "dev.s5.promptLabel": "Example prompt",
    "dev.s5.prompt": "Add a quick check that downloads context_k1 from Echo-Team/Echo-Memory\nand runs eval/v2/run_basic_replay_gt.sh with the static in-domain pool.\n\nTrace env/memory_baseline_runtime.py spatial_mem → inject flags;\nsummarize in doc/checkpoints.md.",
    "dev.s5.note": "<strong>Public repo hygiene:</strong> never commit upload bash, internal benchmark names, or machine paths. WeChat QR → project page &amp; README only.",
    "dev.s6.title": "6. Site & release (maintainers)",
    "dev.s6.intro": "After editing <code>docs/index.html</code>, <code>docs/style.css</code>, or <code>docs/i18n*.js</code>:",
    "dev.s6.body": "HF weights: Hugging Face UI or <code>hf upload</code> (maintainers only). Bilingual project page: <code>docs/i18n.js</code> + <code>docs/i18n-runtime.js</code>.",
    "dev.s7.title": "7. Checklist",
    "dev.s7.l1": "Smoke eval with one HF checkpoint before tagging a release.",
    "dev.s7.l2": "Verify <code>doc/checkpoints.md</code> matches HF folder names.",
    "dev.s7.l3": "Public docs use Echo pool names — no internal paths or benchmark codenames.",
    "dev.s7.l4": "Run <code>publish_gh_pages.sh</code> after site changes; spot-check EN/中文 on the live page.",
    "dev.footer": "Repo mirror: <a href=\"https://github.com/Echo-Team-Joy-Future-Academy-JD/Echo-Memory/blob/main/doc/DEVELOPER.md\">doc/DEVELOPER.md</a> · Community QR on <a href=\"index.html#updates\">project page</a>"
  },
  zh: {
    "meta.title": "Echo-Memory | Echo Team",
    "meta.description": "Echo-Memory:动作条件世界模型中记忆机制的对照研究。",
    "nav.home": "首页",
    "nav.overview": "概览",
    "nav.design": "设计",
    "nav.checkpoints": "权重",
    "nav.eval": "评测",
    "nav.evidence": "证据",
    "nav.findings": "结论",
    "nav.updates": "动态",
    "nav.bibtex": "引用",
    "nav.developer": "开发者手册",
    "nav.github": "GitHub",
    "nav.menu": "菜单",
    "lang.toggle": "EN",
    "lang.current": "中文",
    "lang.switch": "切换语言",
    "hero.badge": "Echo Team · Joy Future Academy, JD · 2026 年 6 月 · CC BY 4.0",
    "hero.title.line2": "动作世界模型中记忆机制的对照研究",
    "hero.subtitle": "当镜头离开再返回时,哪种记忆能让模型守住<strong>同一个世界</strong>,而不是生成一个看似合理却不同的场景?",
    "hero.cta.paper": "论文",
    "hero.cta.pdf": "PDF",
    "hero.cta.ckpt": "模型权重",
    "hero.cta.code": "代码",
    "hero.metric.stars": "GitHub Stars",
    "hero.metric.forks": "Forks",
    "hero.note": "在共享 <strong>Wan</strong> 动作到视频栈上进行可控记忆消融——可复现实验行、评测脚本与 revisit 定性面板。",
    "hero.authors.summary": "作者与单位",
    "hero.affiliations": "HKU · Joy Future Academy, JD · CUHK · PKU · Fudan · Tsinghua · HKUST · UMich",
    "overview.kicker": "01 · 概览",
    "overview.title": "同一骨干、同一协议——只换记忆模块。",
    "overview.lead": "Echo-Memory 固定视频骨干、训练配方与数据协议,仅替换记忆模块,以区分镜头离开再返回时的<strong>回放保真度</strong>与<strong>回归记忆</strong>。",
    "overview.b1": "<strong>共享栈</strong> — 基于 Wan 的分块动作条件世界生成。",
    "overview.b2": "<strong>对照变量</strong> — Context、Compression、Spatial 或 State-Space 记忆。",
    "overview.b3": "<strong>三类探针</strong> — 回放指标、域内 180° 闭环、开放域编辑后回归。",
    "overview.b4": "<strong>开源内容</strong> — 消融脚本、GT 回放、revisit 资产与论文对齐图表。",
    "overview.fig.cap": "分块动作世界生成上的可控记忆研究。<span class=\"zoom-hint\">点击放大</span>",
    "overview.fig.alt": "Echo-Memory 框架概览",
    "design.kicker": "02 · 记忆设计",
    "design.title": "Context · Compression · Spatial · State-Space",
    "design.lead": "各变体接入同一 write–read 接口,仅改变存储内容与历史检索方式。无记忆 I2V 下限仅从首帧重生成。",
    "design.context.title": "Context",
    "design.context.body": "保留 K = 1 / 5 / 20 块原始帧 — 测试更长窗口是否足以抑制漂移。",
    "design.compression.title": "Compression",
    "design.compression.body": "比率 r = 4 的紧凑 token — 在不膨胀原始帧存储的情况下保留历史。",
    "design.spatial.title": "Spatial",
    "design.spatial.body": "显式空间读写状态 — 针对布局、物体位姿与视角携带。",
    "design.ssm.title": "State-Space",
    "design.ssm.body": "Block-wise SSM 更新 — 在 revisit 上超越短上下文窗口的递归携带。",
    "design.fig.cap": "共享 write–read 接口下的四类记忆。<span class=\"zoom-hint\">点击放大</span>",
    "design.fig.alt": "记忆设计矩阵",
    "ckpt.kicker": "03 · 模型权重",
    "ckpt.title": "Hugging Face 论文 baseline",
    "ckpt.lead": "Wan 2.1 1.3B 记忆行 — <strong>epoch-0</strong>、<strong>30,000 steps</strong>、静态 in-domain 训练池。已发布权重:<a href=\"https://huggingface.co/Echo-Team/Echo-Memory\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>Echo-Team/Echo-Memory</strong></a>",
    "ckpt.th.family": "家族",
    "ckpt.th.row": "论文行",
    "ckpt.th.path": "HF 路径",
    "ckpt.th.steps": "步数",
    "ckpt.label.download": "下载",
    "ckpt.label.eval": "域内评测(Echo-Memory 仓库)",
    "ckpt.note": "请在 <code>CKPT</code> 中保留行目录名 — <code>env/memory_baseline_runtime.py</code> 会从路径推断 memory 配置。完整索引:<a href=\"https://github.com/Echo-Team-Joy-Future-Academy-JD/Echo-Memory/blob/main/doc/checkpoints.md\" target=\"_blank\" rel=\"noopener noreferrer\">doc/checkpoints.md</a>。",
    "eval.kicker": "04 · 评测",
    "eval.title": "回放 · 域内 revisit · 开放域回归",
    "eval.lead": "三个分支回答不同问题:能否重建过去?域内能否闭环?编辑首帧后能否回到<strong>同一个世界</strong>?",
    "eval.replay.title": "回放",
    "eval.replay.body": "分块重建的 PSNR / SSIM / LPIPS — 衡量短程像素保真。",
    "eval.indomain.title": "域内",
    "eval.indomain.body": "180° 轨迹闭环与 VLM 辅助评分。",
    "eval.opendomain.title": "开放域",
    "eval.opendomain.body": "编辑首帧与 45° 回归探针 — 考察物体身份与场景持续性。",
    "eval.dynamic.title": "动态 SpatialVID",
    "eval.dynamic.body": "训练和推理 wrapper 已公开;动态评测协议暂列 TODO。",
    "eval.fig.cap": "同一栈上的回放健康度 vs. 回归记忆。<span class=\"zoom-hint\">点击放大</span>",
    "eval.fig.alt": "三分支评测概览",
    "evidence.kicker": "05 · 定性证据",
    "evidence.title": "回归探针暴露身份漂移。",
    "evidence.lead": "定性面板遵循简单诊断:<strong>首帧 → 离开视角 → revisit 尾部</strong>。我们比较记忆是否恢复同一物体、位姿、背景与相机几何,而非仅生成合理的新场景。",
    "evidence.chip1": "记忆结果",
    "evidence.chip2": "开放域扫描",
    "evidence.chip3": "身份锚点",
    "evidence.cap1": "各变体的代表性记忆对比。<span class=\"zoom-hint\">点击放大</span>",
    "evidence.dynamic.note": "SpatialVID 预览来自一个精选训练场景;六组使用相同首帧、prompt 与 GT 相机轨迹做 5 秒 first-chunk replay。",
    "findings.kicker": "06 · 主要结论",
    "findings.title": "回放质量 ≠ 记忆质量。",
    "findings.lead": "回放指标与回归探针并不总一致 — 重建可以很 sharp,但镜头返回时仍可能失败。一旦测量 revisit 下的身份一致性,排名会重排。",
    "findings.b1": "<strong>原始 Context</strong> — 更长历史对开放域回归的帮助大于单纯回放。",
    "findings.b2": "<strong>Compression</strong> — 紧凑 token 可保回放但在回归时丢失身份。",
    "findings.b3": "<strong>Spatial vs. SSM</strong> — 显式状态与 block-wise SSM 在布局携带与长程稳定性间权衡。",
    "findings.b4": "<strong>要点</strong> — 将回放视为健康检查,而非最终记忆 benchmark。",
    "findings.fig.cap": "从回放到回归的排名变化 — 回放不是最终记忆分数。<span class=\"zoom-hint\">点击放大</span>",
    "updates.kicker": "07 · 新闻与路线图",
    "updates.title": "发布说明与后续计划。",
    "updates.news": "新闻",
    "updates.roadmap": "路线图",
    "updates.news0": "SpatialVID 支持已加入:动态训练/推理脚本、5 秒 first-chunk replay 预览,以及 dynamic eval TODO。",
    "updates.news1": "Echo-Memory 发布:论文上线 <a href=\"https://arxiv.org/abs/2606.09803\" target=\"_blank\" rel=\"noopener noreferrer\">arXiv</a>(<a href=\"https://arxiv.org/pdf/2606.09803\" target=\"_blank\" rel=\"noopener noreferrer\">PDF</a>),同步发布项目页、公开代码、replay/revisit 评测资产,以及 <a href=\"https://huggingface.co/Echo-Team/Echo-Memory\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>Echo-Team/Echo-Memory</strong></a> baseline 权重。",
    "updates.models": "模型",
    "updates.eval": "评测",
    "updates.rm1": "<strong>Wan 2.1 1.3B</strong> 骨干与训练配方",
    "updates.rm2": "四类记忆 — Context、Compression、Spatial、State-Space",
    "updates.rm3": "<strong>Dynamic training pool</strong> — SpatialVID 子集导出与设置",
    "updates.rm4": "<strong>论文权重</strong> — <a href=\"https://huggingface.co/Echo-Team/Echo-Memory\" target=\"_blank\" rel=\"noopener noreferrer\">Echo-Team/Echo-Memory</a>",
    "updates.rm5": "<strong>Wan 2.2</strong> + 多尺度 <strong>5B / 14B</strong>",
    "updates.re1": "静态 replay/revisit 之外的 <strong>动态评测</strong>",
    "updates.re2": "更多 revisit 探针与评分预设",
    "community.title": "社区交流",
    "community.lead": "扫码加入 Echo-Memory 微信群,获取发布更新、权重使用与维护协调信息。",
    "community.qr.alt": "Echo-Memory 微信群二维码",
    "community.qr.caption": "Echo-Memory 交流群 · 扫码加入(二维码会定期更新)",
    "bibtex.kicker": "08 · 引用",
    "bibtex.title": "BibTeX",
    "bibtex.lead": "Echo-Memory: A Controlled Study of Memory in Action World Models(2026 年 6 月)。许可:<a href=\"https://creativecommons.org/licenses/by/4.0/\" target=\"_blank\" rel=\"noopener noreferrer\">CC BY 4.0</a>。请使用下方 arXiv BibTeX 引用。",
    "bibtex.arxiv": "arXiv",
    "bibtex.source": "来源",
    "bibtex.doi": "DOI",
    "bibtex.arxivid": "arXiv ID",
    "bibtex.pdf": "PDF",
    "bibtex.license": "许可",
    "bibtex.copy": "复制",
    "bibtex.copied": "已复制",
    "bibtex.failed": "失败",
    "footer.copy": "© Echo Team · Joy Future Academy, JD",
    "footer.pp": "项目页",
    "zoom.hint": "点击放大",
    "backtop": "回到顶部",
    "lightbox.close": "关闭",
    "lightbox.label": "放大图表",
    "dev.meta.title": "Echo-Memory 开发者指南",
    "dev.meta.description": "Echo-Memory 开发指南 — 工作流、评测与 Cursor 协作编程。",
    "dev.kicker": "开发 · Cursor",
    "dev.title": "开发者指南",
    "dev.subtitle": "Echo-Memory 实战开发、训练评测与 <strong>Cursor 协作编程</strong>。",
    "dev.back": "← 返回项目页",
    "dev.s1.title": "1. 本指南定位",
    "dev.s1.body": "<li><strong>README</strong> — 论文概览、快速上手、权重、社区。</li><li><strong>本页</strong> — 工作流、项目 <strong>Cursor skills</strong>、Agent 技巧。</li><li><strong><code>doc/</code></strong> — 数据集与权重参考。</li><li><strong><code>.cursor/skills/</code></strong> — 训练 / 评测 / 发布类 Agent 技能。</li>",
    "dev.s2.title": "2. 环境与路径",
    "dev.s2.intro": "训练或评测前设置:",
    "dev.s2.body": "<li><strong>Static in-domain pool</strong> — 默认路径见上;详见 <code>doc/dataset_preprocessing.md</code>。</li><li><strong>Dynamic training pool</strong> — 如 <code>data/dynamic-memory-dataset</code>;详见 <code>doc/dynamic_dataset_preprocessing.md</code>。</li><li><strong>权重</strong> — <a href=\"https://huggingface.co/Echo-Team/Echo-Memory\" target=\"_blank\" rel=\"noopener noreferrer\">Echo-Team/Echo-Memory</a>;索引见 <code>doc/checkpoints.md</code>。</li>",
    "dev.s3.title": "3. 代码地图",
    "dev.s3.table": "<table class=\"dev-table\"><thead><tr><th>路径</th><th>作用</th></tr></thead><tbody><tr><td><code>.cursor/skills/</code></td><td>Cursor Agent 技能(训练 / 评测 / 发布)</td></tr><tr><td><code>train/memory_baselines_basic/</code></td><td>Spatial / SSM / 压缩消融</td></tr><tr><td><code>train/context_learning/</code></td><td>Context K=1/5/20 配方</td></tr><tr><td><code>eval/v2/</code></td><td>回放、闭环、开放域 revisit</td></tr><tr><td><code>env/memory_baseline_runtime.py</code></td><td>权重 → 记忆配置</td></tr><tr><td><code>diffsynth/</code></td><td>Wan 骨干与训练栈</td></tr><tr><td><code>docs/</code></td><td>GitHub Pages(项目页 + 本指南)</td></tr></tbody></table>",
    "dev.s4.title": "4. 常用工作流",
    "dev.s4.trainLabel": "训练一条 memory 行(仓库根目录):",
    "dev.s4.evalLabel": "用 HF 权重做 quick eval:",
    "dev.s4.note": "<code>CKPT</code> 路径需保留行目录名,以便 runtime 匹配记忆配置。",
    "dev.s5.title": "5. Cursor 协作编程",
    "dev.s5.intro": "使用 <strong>Cursor Agent</strong>(Composer)配合下方项目 skills。",
    "dev.s5.skillsTitle": "项目 Skills",
    "dev.s5.skills": "<table class=\"dev-table\"><thead><tr><th>Skill</th><th>适用场景</th></tr></thead><tbody><tr><td><code>echo-memory-agent</code></td><td>Prompt 范围、Rules、技能索引</td></tr><tr><td><code>echo-memory-train</code></td><td>Memory baseline 与 Context 训练</td></tr><tr><td><code>echo-memory-eval</code></td><td>回放 / revisit 与 HF quick check</td></tr><tr><td><code>echo-memory-release</code></td><td>gh-pages、i18n、权重文档</td></tr></tbody></table><p class=\"section-note\">路径:<code>.cursor/skills/&lt;name&gt;/SKILL.md</code> — 在对话中引用,如 <em>use echo-memory-eval 来 …</em></p>",
    "dev.s5.body": "<li><strong>明确范围</strong> — memory 家族、脚本、评测分支(<em>replay / in-domain / open-domain</em>)。</li><li><strong>入口脚本</strong> — 如 <code>run_spatial_memory_baseline.sh</code>、<code>eval/v2/run_basic_replay_gt.sh</code>。</li><li><strong>Rules</strong> — 可选 <code>.cursor/rules/echo-memory.mdc</code> 约束池命名与公开文档。</li><li><strong>Ask 模式</strong> — 追踪 checkpoint 映射或阅读 <code>diffsynth/</code>,不改代码。</li>",
    "dev.s5.promptLabel": "示例 Prompt",
    "dev.s5.prompt": "添加 quick check:从 Echo-Team/Echo-Memory 下载 context_k1,\n用 static in-domain pool 跑 eval/v2/run_basic_replay_gt.sh。\n\n追踪 env/memory_baseline_runtime.py 如何把 spatial_mem\n权重映射到 inject 标志,并在 doc/checkpoints.md 摘要说明。",
    "dev.s5.note": "<strong>公开仓库规范:</strong> 勿提交上传脚本、内部 benchmark 名、本机路径。微信群二维码仅在项目页与 README。",
    "dev.s6.title": "6. 站点与发布(维护者)",
    "dev.s6.intro": "修改 <code>docs/index.html</code>、<code>docs/style.css</code> 或 <code>docs/i18n*.js</code> 后:",
    "dev.s6.body": "HF 权重:网页或 <code>hf upload</code> 更新(仅维护者)。项目页双语:<code>docs/i18n.js</code> + <code>docs/i18n-runtime.js</code>。",
    "dev.s7.title": "7. 检查清单",
    "dev.s7.l1": "发版前用至少一个 HF 权重跑 quick eval。",
    "dev.s7.l2": "确认 <code>doc/checkpoints.md</code> 与 HF 目录名一致。",
    "dev.s7.l3": "公开文档使用 Echo 池命名 — 无内部路径或 benchmark 代号。",
    "dev.s7.l4": "改站点后运行 <code>publish_gh_pages.sh</code>,检查线上 EN/中文 切换。",
    "dev.footer": "仓库副本:<a href=\"https://github.com/Echo-Team-Joy-Future-Academy-JD/Echo-Memory/blob/main/doc/DEVELOPER.md\">doc/DEVELOPER.md</a> · 社区二维码见 <a href=\"index.html#updates\">项目页</a>"
  }
};