Files
C.E.L_Slide_test2/README.md
kyeongmin 46e53beeaf README 재정리: AS-IS / TO-BE 프로세스 구조 명시
- 현재 프로세스(AS-IS) 7단계 정리
- 개선 프로세스(TO-BE) 5단계 정리
- 핵심 차이: 꼭지 추출 시점, redesign 반복 조정, 빈 공간 재분배, 시각 검증
- 프로젝트 구조/산출물/향후 방향 포함

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 16:53:51 +09:00

4.8 KiB
Raw Blame History

C.E.L. Slide Pipeline

MDX 기반 콘텐츠를 분석하여 1280×720 슬라이드 HTML로 자동 변환하는 파이프라인입니다.

한 줄 요약

텍스트 콘텐츠를 넣으면, 코드가 구조를 분석하고 디자인을 입혀서 슬라이드로 만들어줍니다.


현재 프로세스 (AS-IS)

1. MDX 입력
   - MDX 파일 읽기
   - 정규화 (제목/본문/이미지/표/핵심요약 분리)

2. 꼭지 추출 (AI)
   - 중목차별 핵심 주제 파악
   - 각 꼭지의 성격 분류

3. zone 구분 (코드)
   - 중목차(##) 기준으로 영역 분할 (top/bottom)
   - 콘텐츠 양 기준으로 비중(weight) 산출

4. BEPs 디자인 매칭 (코드)
   - catalog에서 tag/schema 기준으로 블록 검색
   - 매칭되면 → 해당 블록에 콘텐츠 삽입
   - 미매칭이면 → 기존 스타일 따라 코드가 고정 렌더 (1회)

5. 조립 (코드)
   - slide-base(1280×720)에 zone별 배치
   - 상세 내용은 첨부 파일로 분리

6. 검증
   - overflow 측정 (Selenium)
   - 구조 검증 (본문 visible, 링크 수)

7. 출력
   - final.html + 첨부 HTML

현재 수준

대상 상태
MDX 03 (3개 목표 + 비교표) 정상 동작
MDX 02 (목표 + 프로세스 + 상세표) △ 구조 동작, 시각 품질 보정 중

개선 프로세스 (TO-BE)

1. MDX 입력
   - MDX 파일 읽기
   - 정규화 (제목/본문/이미지/표/핵심요약 분리)

2. zone 구분 (코드)
   - 중목차(##) 기준으로 영역 분할

3. BEPs 디자인 매칭 검토
   3-1. 매칭 시
        - 해당 디자인 선택
        - zone 크기에 맞게 재구성
   3-2. 미매칭 시
        - 중목차에 대한 꼭지 정리 (AI)
        - 꼭지별 유사 디자인 선택
        - 해당 중목차/소목차에 맞게 redesign
        - 입력 → 조정 반복 (빈 공간/overflow 자동 조절)

4. 검증
   - overflow / 빈 공간 측정
   - 시각 품질 검증 (정렬, 위계, 가독성)

5. 출력
   - final.html + 첨부 HTML

AS-IS → TO-BE 핵심 차이

항목 AS-IS TO-BE
꼭지 추출 시점 zone 구분 전에 항상 실행 미매칭 시에만 (3-2)
디자인 미매칭 코드 고정 렌더 1회 redesign + 반복 조정
빈 공간 처리 그냥 둠 자동 재분배
검증 overflow만 시각 품질까지

핵심 원칙

원칙 설명
콘텐츠가 기준 디자인이 콘텐츠에 맞춤 (콘텐츠를 디자인에 맞추지 않음)
코드가 판단 AI는 꼭지 추출만, 레이아웃/디자인 선택은 규칙 기반
기존 디자인 재활용 Figma에서 추출한 BEPs 블록을 우선 활용, 없으면 같은 스타일로 생성
넘치면 분리 슬라이드에 안 들어가는 상세 내용은 첨부로 분리 (자세히보기)
통일이 아닌 다양성 같은 구조라도 콘텐츠에 따라 다른 표현 가능 (recipe = 표현 범주)

프로젝트 구조

파이프라인 핵심

파일 역할
src/pipeline.py 전체 파이프라인 오케스트레이션
src/section_parser.py 중목차 추출, schema 분류, subsection typing
src/block_reference.py BEPs 디자인 매칭 (catalog 검색)
src/block_assembler.py 슬라이드 HTML 조립, recipe executor, direct render
src/space_allocator.py zone 크기/비율 계산
src/pipeline_context.py 파이프라인 데이터 모델 (PopupItem 등)

템플릿 / 카탈로그

파일 역할
templates/catalog.yaml BEPs 블록 목록 (when/slots/template)
templates/blocks/slide-base.html 슬라이드 기본 틀 (1280×720)
templates/blocks/new/ Figma 추출 블록 (prerequisites-3col 등)
templates/blocks/redesign/ 재디자인 블록 (process-product-2col 등)

검증

파일 역할
src/slide_measurer.py Selenium overflow 측정
src/step_visualizer.py 단계별 디버그 보드 생성
src/validators.py 구조 검증

산출물

각 실행은 data/runs/{run_id}/ 아래에 저장됩니다.

파일 내용
final.html 최종 슬라이드
final_context.json 전체 파이프라인 결과 데이터
steps/*.html 단계별 디버그 보드
첨부*_상세*.html popup 상세 내용

향후 개선 방향

  1. 3-2 입력→조정 반복 구현 — redesign 후 빈 공간/overflow 자동 재분배
  2. 검증 강화 — overflow뿐 아니라 정렬, 위계, 가독성까지 시각 품질 검증
  3. BEPs 매칭 범위 확대 — 더 많은 Figma 블록 추출 및 catalog 등록
  4. 다양한 MDX 확장 — MDX 02, 03 이후 추가 문서 유형 검증