huohua325/Memslides
A hierarchical memory framework for personalized presentation agents. Try it at memslides.com.
MemSlides – 具备分层记忆的个性化幻灯片生成 Agent
是什么 – MemSlides 是一个开源框架,可以让你构建一个用于制作 PowerPoint 风格幻灯片的 stateful AI 助手。系统并非一次性生成整个幻灯片集,而是维护了几个层级的记忆:
| Memory layer | Purpose |
|---|---|
| User‑profile memory | 存储与演示文稿意图相关的长期偏好(风格、布局、语调)。 |
| Working memory | 持有会话特定的约束与临时偏好,这些偏好会在多轮修改中持续存在。 |
| Tool memory | 记住过去工具链执行情况(例如:渲染、图像搜索),因此不会不必要地重复相同的操作。 |
当用户提供反馈时,MemSlides 会将该反馈投影到受影响的最小幻灯片区域,并仅对该部分进行修补,从而避免全套幻灯片重新生成。
Key Features (如 README 所所述)
- Intent‑conditioned personalization – Agent 首先选择与演示文稿意图相匹配的用户配置切片,然后应用细粒度的风格与内容偏好。
- Multi‑turn revision – Working memory 会保留临时性修改与约束,从而实现与用户之间的流畅来回互动。
- Tool memory – 缓存成功的工具链运行结果(例如:图像生成、布局渲染),以防止重复失败。
- Scoped slide‑local revision – 仅更新用户要求修改的幻灯片区域,减少幻灯片集其余部分的非预期性偏移。
- CLI entry points – 提供
memslides generate、memslides revise与memslides template induct用于脚本化使用,此外还有实验运行器 (python -m memslides.experiment)。 - Docker support – Docker Hub 上提供预建的镜像;可以在容器内运行 smoke-test 套件。
- Research‑oriented – 包含可重复性套件 (
smoke_minimal) 以及为配套 arXiv 论文所进行的一整套实验。
Quick‑Start Summary
- System dependencies – LibreOffice, fontconfig, Noto CJK fonts, poppler‑utils.
- Create the Conda environment –
conda env create -f environment.yml && conda activate memslides. - Install the package –
pip install -e "[research]"(添加可选的研究扩展包). - Set up Playwright –
python -m playwright install chromium ffmpeg(用于 web‑based 工具服务所需的安装). - Run a sanity check –
python -m memslides.experiment run smoke_minimal \ --output-base .memslides/experiments \ --parallel 1 - Or use Docker –
docker compose build && docker compose run --rm memslides ….
How to Use the CLI (README 中的示例)
- Generate a deck:
python -m memslides generate \ --instruction "Create a one‑slide project summary" \ --num-pages 1 - Revise a slide (在之前的生成结果之后):
python -m memslides revise \ --workspace .memslides/session \ --feedback "Tighten the title" - Induct a template (教导系统一个新的 PPTX 布局):
python -m memslides template induct --template-file template.pptx
Project Structure (高层级结构)
src/memslides/– 核心运行时代码与公开入口点.src/memslides/memory/– Profile, working, 与 tool memory 的实现.src/memslides/experiment/– 用于重现论文实验的脚本.tests/– 回归测试与合约测试..memslides/&~/.cache/memslides/– 运行时工作空间、缓存与生成的产出物 (Git 不会追踪这些内容).
Security & Privacy Notes
- API keys 与其他凭证必须通过环境变量、
.env文件或私有的 YAML config 提供; 它们绝不应被提交到版本控制. - 网络访问是可选的,且仅在用户提供搜索或模型服务凭证时才会发生.
- 建议用户在展示前检视任何下载的外部资产.
Citation
如果你在研究中使用 MemSlides, 请引用 README 中提供的 arXiv 论文 (2026).
License
Apache‑2.0 (见 LICENSE).
Bottom line – MemSlides 是一个全栈、研究级框架, 用于构建 LLM 驱动的 agent, 通过使用分层记忆来保持个性化的一致性并使修改过程局部化,从而生成并迭代式地编辑演示文稿幻灯片.
相关
- 项目
- 项目
- 项目
- 项目
- 项目