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 pointsmemslides generate, memslides revise, memslides template induct를 통한 스크립트 사용, 그리고 실험 실행기 (python -m memslides.experiment)를 제공합니다.
  • Docker support – Docker Hub에 사전 빌드된 이미지가 있습니다. 컨테이너 내부에서 smoke-test 스위트를 실행할 수 있습니다.
  • Research‑oriented – 재현성 스위트 (smoke_minimal)와 동반되는 arXiv 논문 연구를 위한 전체 실험 세트를 포함합니다.

Quick‑Start Summary

  1. System dependencies – LibreOffice, fontconfig, Noto CJK fonts, poppler‑utils.
  2. Create the Conda environmentconda env create -f environment.yml && conda activate memslides.
  3. Breakdown of the packagepip install -e "[research]" (선택 사항인 연구용 추가 기능을 추가합니다).
  4. Set up Playwrightpython -m playwright install chromium ffmpeg (웹 기반 도구 서비스에 필요합니다).
  5. Run a sanity check
    python -m memslides.experiment run smoke_minimal \
      --output-base .memslides/experiments \
      --parallel 1
    
  6. Or use Dockerdocker 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 [ {

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트