Inithouse의 Pet Imagination: 60초 이내에 9가지 스타일의 AI 반려동물 초상화를 생성하는 파이프라인
요약
Inithouse의 Pet Imagination은 반려동물 사진을 9가지 예술 스타일의 초상화로 60초 이내에 변환하는 AI 파이프라인을 소개합니다. 프롬프트 스켈레톤과 스타일 매트릭스 기술을 활용하여 일관된 품질과 낮은 지연 시간을 유지하는 구조를 분석합니다.
핵심 포인트
- 프롬프트 스켈레톤을 통한 일관된 생성 구조 확보
- 스타일 매트릭스를 활용한 매개변수 기반 스타일 제어
- 전처리, 프롬프트 구성, 생성, 전달의 4단계 파이프라인
- 60초 이내의 빠른 처리 속도와 개인정보 보호 중심 설계
다양한 제품 포트폴리오를 병렬로 출시하고 있는 스튜디오인 Inithouse에서, 우리는 한 가지 일을 수행하되 빠르게 처리하는 도구들을 만듭니다. Pet Imagination은 9가지 예술 스타일로 반려동물의 AI 초상화를 생성합니다. 사진을 업로드하고, 스타일을 선택하면, 초상화를 얻을 수 있습니다. 가입도 필요 없고, 기다릴 필요도 없습니다. 모든 과정은 60초 이내에 완료됩니다.
이 포스트는 파이프라인이 어떻게 작동하는지, 즉 프롬프트 스켈레톤 (prompt skeleton), 스타일 매트릭스 (style matrix), 그리고 지연 시간 (latency)을 낮게 유지하기 위해 사용하는 기술들을 분석합니다.
파이프라인 (The pipeline)
흐름은 네 가지 단계로 구성됩니다:
업로드 및 전처리 (Upload and preprocessing). 사용자가 반려동물 사진을 업로드합니다. 우리는 이미지를 검증하고 (형식, 크기, 종횡비), 필요한 경우 압축하며, 주요 시각적 특징을 추출합니다. 전처리 단계에서는 피사체가 개인지, 고양이인지, 또는 다른 동물인지도 감지합니다. 이는 일관된 출력을 위해 프롬프트가 동물 유형을 명시적으로 참조해야 하기 때문에 중요합니다.
프롬프트 구성 (Prompt construction). 여기서 스타일 매트릭스 (style matrix)가 작동합니다. 우리는 스켈레톤 템플릿 (skeleton template)으로부터 프롬프트를 구축하고 스타일별 매개변수 (style-specific parameters)를 주입합니다. 이에 대한 자세한 내용은 아래에서 다룹니다.
생성 (Generation). 구성된 프롬프트와 전처리된 이미지가 이미지 생성 API (image generation API)로 전달됩니다. 우리는 수백 번의 생성 과정을 통해 평균 응답 시간을 측정했습니다. 대부분의 스타일은 복잡도에 따라 15초에서 35초 사이에 결과가 반환됩니다.
전달 (Delivery). 생성된 초상화가 사용자에게 제공됩니다. 우리는 처리가 끝난 후 원본 업로드 파일을 삭제합니다. 우리 서버에는 사진이 저장되지 않으며, 걱정해야 할 계정도 없습니다.
프롬프트 스켈레톤 (The prompt skeleton)
모든 생성은 동일한 기본 구조에서 시작됩니다:
[STYLE_PREFIX]
A portrait of a [ANIMAL_TYPE] in [STYLE_DESCRIPTION].
The subject should be the focal point, [COMPOSITION_RULES].
...
스켈레톤은 일정하게 유지됩니다. 스타일마다 변하는 것은 다섯 가지 매개변수 슬롯 (parameter slots)입니다:
스켈레톤은 일정하게 유지됩니다. 스타일마다 변하는 것은 다섯 가지 매개변수 슬롯(parameter slots)입니다:
STYLE_PREFIX: 전체적인 예술적 방향을 설정합니다 (유화, 애니메이션 셀 셰이딩, 연필 스케치)STYLE_DESCRIPTION: 상세한 스타일 지침 (붓터치 질감, 색상 팔레트, 선 가중치)COMPOSITION_RULES: 스타일에 특정한 구도 및 레이아웃 규칙QUALITY_MODIFIERS: 해상도 및 디테일 수준NEGATIVE_CONSTRAINTS: 피해야 할 것 (왜곡, 추가 사지, 텍스트 아티팩트)
스켈레톤을 고정하고 스타일 레이어만 매개변수화함으로써, 9개의 개별 프롬프트 체인을 유지하지 않으면서도 모든 9가지 스타일에서 예측 가능한 품질을 얻을 수 있습니다.
스타일 행렬 (The style matrix)
9가지 스타일 각각은 고유한 매개변수 세트에 매핑됩니다:
| Style | Prefix direction | Key visual trait | Avg. generation time |
|---|---|---|---|
| Renaissance | Classical oil painting | Rich textures, dramatic lighting | ~30s |
| ... | |||
| 더 재미있는 스타일(Sheriff, Wizard, Astronaut, Final Boss)은 일반적인 판타지 클립 아트를 피하기 위해 더 상세한 네거티브 제약 조건이 필요합니다. 이러한 스타일에 특정 구도 규칙( |
업로드 전 압축. 서버로 보내기 전에 클라이언트 측에서 크기를 조정하고 압축합니다. 페이로드(payload)가 작을수록 업로드가 빨라지며, 생성 API는 압축된 입력을 문제없이 처리합니다. 입력 이미지를 70% 품질의 JPEG로 압축했을 때 출력물에 눈에 띄는 품질 차이는 측정되지 않았습니다.
타임아웃 및 재시도 전략. 생성이 45초를 초과하면 취소하고 프롬프트를 약간 단순화(품질 수식어 감소)하여 한 번 다시 시도합니다. 생성의 약 8%가 첫 번째 시도에서 타임아웃에 걸리는데, 단순화된 재시도는 거의 항상 30초 이내에 성공합니다.
포트폴리오 전반을 통해 배운 점
Pet Imagination에서 이미지 생성을 구축하는 과정은 우리가 다른 곳에서도 적용한 패턴들을 가르쳐 주었습니다. 정지 사진을 짧은 애니메이션 비디오로 변환하는 도구인 Ziva Fotka에서는 동일한 병렬 전처리 접근 방식을 재사용했습니다. 수천 장의 이미지를 매일 처리할 때 지연 시간 절감 효과는 누적됩니다.
또한, 생성 파이프라인을 공개적으로 노출하는 것(빈 로딩 화면 대신 사용자에게 진행 단계를 보여주는 것)이 인지된 대기 시간을 줄인다는 것을 발견했습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기