📝 1. 프로젝트 개요
프로젝트 명
BMW AI 기반 디지털 브로슈어 자동 생성 시스템
프로젝트 정보
- 개발 기간: 2025년 6월 25일 ~ 2025년 7월 8일 (14일)
- 참여 인원: 4명
- 이호섭 (프로젝트 리더)
- 박믿음 (백엔드 개발)
- 정동훈 (프론트엔드 개발)
- 김동현 (AI 모델 통합)
프로젝트 목표
- 사용자가 BMW 관심 모델과 선호 사항 및 이메일 주소만 입력하면, 개인화 브로슈어 자동 생성
- AI 기반 이미지 3장 + 동영상 + 한국어 설명 텍스트 통합 제공
- 모든 이메일 클라이언트에서 안전하게 열리는 HTML 이메일 자동 발송
🔗 2. 시스템 아키텍처
전체 시스템 흐름
%%{init: {"theme": "dark"}}%%
graph TB
A[🌐 사용자 웹 클라이언트] --> B[🚪 API Gateway]
B --> C[⚡ 메인 Lambda]
C --> D[📁 S3 상태 파일 생성]
C --> E[📬 SQS 큐]
subgraph image_process [이미지 생성]
F[🖼️ callBendrockSlideImage Lambda]
G[🔤 Claude Sonnet 텍스트 및 이미지 프롬프트 생성]
H[🎨 Titan Image Generator]
I[📁 S3 이미지 저장]
F --> G
G --> H
H --> I
end
J{3개 이미지 완료?}
I --> J
subgraph video_generation [동영상 생성]
direction LR
K[🎬 getVideo Lambda] --> L[🎥 Nova Reel] --> M[📁 S3 동영상 저장]
end
M --> O{동영상 완료?}
subgraph email_sending [이메일 전송]
direction LR
P[📧 send-email Lambda] --> Q[📄 이메일 템플릿 생성] --> R[📮 SES 이메일 발송] --> S[📬 사용자 수신]
end
%% 메인 플로우와 서브그래프 간 연결
E --> F
J -->|Yes| K
O -->|Yes| P
style A fill:#375A7F,stroke:#fff
style B fill:#5D6470,stroke:#fff
style C fill:#466B7F,stroke:#fff
style F fill:#3D5A53,stroke:#fff
style K fill:#44476A,stroke:#fff
style P fill:#495D5B,stroke:#fff
데이터 시퀀스 플로우
%%{init: {"theme": "dark"}}%%
sequenceDiagram
participant U as 👤 사용자
participant C as 💻 클라이언트
participant ML as ⚡ 메인 Lambda
participant SQS as 📬 SQS 대기열
participant IL as 🖼️ 이미지/텍스트 생성 및 <br>Polling Lambda
participant VL as 🎬 동영상 생성 및 <br>Polling Lambda
participant S3 as 📁 S3 저장소
participant EL as 📧 이메일 Lambda
participant SES as 📮 SES
U->>C: 정보 입력 후 <BR>생성 버튼 클릭
C->>ML: 작업 요청
ML->>S3: 상태 파일 생성
ML->>SQS: 3개 이미지 및 텍스트 작업 전송
ML->>C: job_id 반환
SQS->>IL: 메시지 수신
IL->>IL: 텍스트 생성
loop 이미지 생성 (3회)
IL->>IL: 이미지 생성
IL->>S3: 이미지 저장 + 상태 업데이트
end
C->>IL: 이미지 완료 확인
IL->>S3: 상태 파일 조회
S3->>IL: 이미지 n/3개 완료
IL->>C: 이미지 경로 & 텍스트
C->>U: 이미지 & 텍스트 출력
C->>VL: 동영상 요청
VL->>VL: 동영상 생성
VL->>S3: 동영상 저장
C->>VL: 동영상 완료 확인
VL->>C: 동영상 경로
C->>U: 동영상 출력
U->>C: 이메일 전송 버튼 클릭
C->>EL: 이메일 발송 요청
EL->>EL: HTML 템플릿 생성
EL->>SES: 이메일 발송
SES->>U: 완성된 브로슈어 수신
🔧 3. 핵심 기술 구성
AI 모델 통합
AWS 자격증 소유자: 김동현 매니저👍
%%{init: {"theme": "dark"}}%%
graph LR
A[📝 사용자 프롬프트] --> B[🔤 Claude Sonnet]
B --> C[🎨 Titan Image Generator]
C --> D[✅ 이미지 생성]
B --> E[🎥 Nova Reel]
E --> F[🎬 동영상 생성]
B --> G[🇰🇷 한국어 텍스트 생성]
G --> H[📄 브로슈어]
D --> H
F --> H
style A fill:#375A7F,stroke:#222
style B fill:#5D6470,stroke:#222
style C fill:#466B7F,stroke:#222
style E fill:#3D5A53,stroke:#222
AI 모델 과부화 방지 로직
동시성, 할당량만 늘려줬어도 고민 덜했
%%{init: {"theme": "dark"}}%%
graph LR
A[🔄 API 요청] --> B{동시성 제한 확인}
B -->|허용| C[⚡ Lambda 실행]
B -->|초과| D[📬 SQS 대기열]
C --> E{ThrottlingException?}
E -->|Yes| F[⏰ 2<sup>n</sup>초 재시도 대기]
E -->|No| G[✅ 정상 처리]
F --> H[🔄 재시도]
H --> E
D --> I[📋 순차 처리]
I --> C
style A fill:#375A7F,stroke:#222
style C fill:#5D6470,stroke:#222
style G fill:#3D5A53,stroke:#222
🎉 4. 기술적 개발 성과
| 영역 | 구현 하이라이트 |
|---|---|
| 🤖 완전 무인화 | 버튼 한 번으로 이미지 · 동영상 생성부터 이메일 발송까지 전 과정 무인 처리 |
| 🧠 AI 모델 통합 | 1) Claude Sonnet – 텍스트 요약 · 카피라이팅 2) Titan Image Generator – 고품질 이미지 생성 3) Nova Reel – 6초 시네마틱 영상 |
| 🛡️ 안정성 | 메세지 비동기적 처리로 동기성에 의한 타임아웃 문제 해소 제한된 챌린지 AI 모델의 동시성 및 할당량에도 불구하고, 순차적 대용량 처리 |
| 📧 이메일 호환성 | 새로운 HTML 템플릿 생성으로 모든 이메일 클라이언트에서 안전하게 작동 |
📈 5. 비즈니스 효과
- 💰 인력 비용 절감: 디자인 · 편집 · 메일 발송 작업 자동화로 대폭 절감
- 📈 일관된 품질: AI 모델이 동일한 톤 · 스타일 유지
- 🚀 확장성: Lambda + SQS 구조로 요청 폭주 시에도 확장 가능
(AWS 설정 필요)
🔧 6. 기술적 도전과 해결
주요 문제점과 해결책
%%{init: {"theme": "dark"}}%%
graph TD
A[⚠️ ThrottlingException] --> B[⏰ 2<sup>n</sup>초 재시도 대기]
A --> C[🔒 Lambda 동시성 제한]
A --> D[📋 순차 처리 구현]
L[⚡ 동시 요청] --> M[📬 SQS 대기 → 순차 처리 구현]
L --> N["🔒 서버 수신 및 Lambda 동시 처리 제한"]
H[📧 이메일 호환성] --> I[📄 새로운 HTML 템플릿]
H --> J[🎨 인라인 CSS 적용]
H --> K[🖼️ 정적 갤러리 변환]
style A fill:#D32F2F,stroke:#222
style H fill:#F57C00,stroke:#222
style L fill:#F57C00,stroke:#222
해결 과정
- ⚠️ ThrottlingException
- 문제: AWS Bedrock API 요청 한도 초과로 시스템 불안정
- 해결: 2ⁿ 초 재시도 대기 + 순차 처리 + 동시성 제한
- 결과: 기존 동기성 및 타임아웃 문제 해결, 안정적인 대용량 처리 시스템 구축
- 📋 동시 요청
- 문제: 동시 처리로 인한 job_id 불일치 및 상태 관리 복잡성
(메세지 꼬임) - 해결: SQS 설정 조정 + Lambda 동시성 제한
- 결과: 3개 이미지가 동일 작업으로 안정적 순차 처리
- 문제: 동시 처리로 인한 job_id 불일치 및 상태 관리 복잡성
- 📧 이메일 호환성
- 문제: 웹 기술과 이메일 기술의 차이로 인한 호환성 이슈
- 해결: 이메일 전용 HTML 템플릿 새로 개발
- 결과: 모든 이메일 클라이언트에서 완벽 작동
🚧 8. 시스템 한계 및 대응
| 한계 | 현재 대응 |
|---|---|
| 📺 Nova Reel 720p 해상도 제한 | 1080p 이상 지원 출시 시 즉시 교체하도록 인터페이스 분리 |
| ⚡ Bedrock 스로틀링 | 2ⁿ 초 재시도 대기 최대 동시 생성 2건으로 제한 대량 요청 시 대기열로 전환 |
| 📧 이메일 클라이언트 제약 | 정적 갤러리 + 다운로드 버튼에 집중한 간결한 디자인 |
| 🔒 S3 락 파일 미구현 | 현재 단순 상태 파일 업데이트로 동시성 이슈 잠재 |
💰 8. 향후 발전 로드맵
단기 개선 (3-6개월): 매장 디지털 혁신
%%{init: {"theme": "dark"}}%%
graph LR
A[🏪 전시장 키오스크] --> B["📧 카톡/문자(SMS) 발송"]
B --> C[📊 고객 데이터 수집]
C --> D[🙋♂️ 담당자 연동]
style A fill:#375A7F,stroke:#fff
style B fill:#5D6470,stroke:#fff
style C fill:#466B7F,stroke:#fff
style D fill:#3D5A53,stroke:#fff
- 🏪 신차 판매 전시장 키오스크 도입: 고객이 직접 차량 모델을 선택하고 즉석에서 맞춤형 브로슈어 생성
- 📧 카톡/문자(SMS) 발송: 키오스크에서 전화번호 입력 시, 완성된 브로슈어 링크를 즉시 고객에게 전송
- 📊 고객 정보 수집: 키오스크 사용 패턴, 선택한 모델, 옵션 선호도 데이터 자동 수집
- 🙋♂️ 담당자 연동: 생성된 브로슈어 정보와 고객 관심사를 영업 담당자에게 전달
중기 개선 (6-12개월): 다채널 수익 확장
%%{init: {"theme": "dark"}}%%
graph LR
A[🌐 웹사이트 통합] --> B[📱 BMW 모바일 앱 확장]
B --> C[💰 효과 측정]
style A fill:#375A7F,stroke:#fff
style B fill:#466B7F,stroke:#fff
style C fill:#3D5A53,stroke:#fff- 🌐 웹사이트 통합: BMW 공식 웹사이트에서 브로슈어 생성
- 📱 BMW 모바일 앱 확장: 기존 MyBMW 앱에 브로슈어 생성 및 공유 기능 추가
- 💰 효과 측정: 브로슈어 생성 후 실제 구매까지의 전환율 추적
장기 로드맵 (1-2년): 데이터 기반 맞춤 판매
%%{init: {"theme": "dark"}}%%
graph TD
A[🏢 BMW 데이터 센터 연결] --> B[🧠 AI 분석]
B --> C[🎯 맞춤 고객 관리]
F[🔍 고객 행동 분석] --> B
G[📈 예측 분석] --> C
style A fill:#375A7F,stroke:#fff
style B fill:#5D6470,stroke:#fff
style C fill:#466B7F,stroke:#fff- 🏢 BMW 데이터 센터 연결
- 전 세계 BMW 고객 정보와 연결
- 차량 소유주들의 취향 및 소비 패턴 파악
- 🧠 AI 기반 예측 서비스
- 고객 성향 기반 구매 가능성 예측
- 최적 차량 모델 자동 추천
- 🎯 맞춤 고객 관리
- 브로슈어 생성부터 계약까지 전 과정 관리
- 고객별 최적화된 콘텐츠 제공
10. 시연
https://arc7-787585086301.us-west1.run.app/

📋 9. 마무리
기술적 측면
- 최신 AI 모델과 클라우드 서비스를 활용한 시스템 구축
- 초기 발생했던 동기성 및 타임아웃 문제를 단계적으로 해결
- 웹 브라우저용 HTML과 이메일용 HTML의 차이점 발견
AWS 서비스 특성
- Bedrock API 스로틀링 문제를 통해 서비스 제한 사항 파악
- 사전 테스트와 부하 분산 계획의 중요성 확인
- AWS 내 동기 및 비동기 시스템에서 상태 관리의 복잡성 경험
뭐든 쉽지 않음
Thank you
AI 기술과 클라우드 서비스를 활용하여 BMW 디지털 개인화 브로슈어 시스템을 구현했습니다.
개발 과정에서 여러 기술적 도전과 문제점들을 마주했지만, 팀원들의 협력과 지속적인 개선을 통해 해결할 수 있었습니다.
감사합니다.
📅 프로젝트 완료일: 2025년 7월 8일
⏱️ 총 개발 기간: 14일
🙋♂️ 참여 인원: 4명 (이호섭, 김동현, 박믿음, 정동훈)
🛠️ 주요 기술: AWS Lambda, Bedrock, SQS, S3, SES, Python, JavaScript
