huohua325/Memslides
A hierarchical memory framework for personalized presentation agents. Try it at memslides.com.
MemSlides – 개인화된 슬라이드 생성을 위한 계층형 메모리 에이전트
개요 – MemSlides는 PowerPoint 스타일의 프레젠테이션을 제작하기 위한 stateful AI 어시스턴트를 구축할 수 있는 오픈 소스 프레임워크입니다. 시스템은 전체 슬라이드 덱을 한 번에 생성하는 대신, 여러 계층의 메모리를 유지합니다:
| Memory layer | Purpose |
|---|---|
| User‑profile memory | 프레젠테이션 의도와 연결된 장기적 선호도(스타일, 레이아웃, 톤)를 저장합니다. |
| Working memory | 세션 특정 제약 조건 및 여러 수정 회차에 걸쳐 유지되는 일시적 선호도를 보유합니다. |
| Tool memory | 과거의 도구 체인 실행(예: 렌더링, 이미지 검색)을 기억하여 동일한 작업이 불없이히 반복되지 않도록 합니다. |
사용자가 피드백을 주면, MemSlides는 해당 피드백을 가장 영향을 받는 슬라이드 영역에 투영하여 해당 부분만 패치합니다. 이를 통해 전체 슬라이드 덱의 재생성을 방지합니다.
Key Features (README 설명 기준)
- Intent‑conditioned personalization – 에이전트는 먼저 프레젠테이션 의도와 일치하는 사용자 프로필 조각을 선택한 다음, 세밀한 스타일 및 콘텐츠 선호도를 적용합니다.
- Multi‑turn revision – Working memory는 일시적 편집 및 제약 조건을 보존하여 사용자와의 원활한 상호작용을 가능하게 합니다.
- Tool memory – 성공적인 도구 체인 실행(예: 이미지 생성, 레이아웃 렌더링)을 캐시하여 반복적인 실패를 방지합니다. | Tool memory – 성공적인 도구 체인 실행(예: 이미지 생성, 레이아웃 렌더링)을 캐시하여 반복적인 실패를 방지합니다. |
- Scoped slide‑local revision – 사용자가 변경을 요청한 슬라이드 영역만 업데이트하여, 슬라이드 덱의 나머지 부분에서 의도치 않은 변화(drift)를 방지합니다.
- 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. - Breakdown of the package –
pip install -e "[research]"(선택 사항인 연구용 추가 기능을 추가합니다). - Set up Playwright –
python -m playwright install chromium ffmpeg(웹 기반 도구 서비스에 필요합니다). - 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 키 및 기타 인증 정보는 환경 변수,
.env파일 또는 개인 YAML config를 통해 제공되어야 합니다. 절대 커밋하지 마십시오. - 네트워크 액세스는 옵션이며, 사용자가 검색 또는 모델 서비스 인증 정보를 제공할 때만 발생합니다.
- 사용자는 발표 전 다운로드된 외부 자산을 검토할 것을 권 권장합니다.
Citation
MemSlides를 연구에 사용한다면, README에 제공된 arXiv 논문 (2026)을 인용하십시오. | Citation – MemSlides를 연구에 사용한다면, README에 제공된 arXiv 논문 (2026)을 인용하십시오.
License
Apache‑2.0 (see LICENSE).
Bottom line – MemSlides는 프레젠테이션 슬라이드를 생성하고 반복적으로 편집할 수 있는 LLM 기반 에이전트를 구축하기 위한 풀스택, 연구급 프레임워크입니다. 계층형 메모리를 활용하여 개인화의 일관성을 유지하고 수정을 국소화합니다. }}]}```json [ {
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트