Somnium Audio 꿈 일기
Source: Dev.to

Education Track: Build Apps with Google AI Studio
이 게시물은 DEV Education Track: Build Apps with Google AI Studio에 제출한 작품입니다.
What I Built
나는 Somnium이라는 신비로운 음성‑우선 꿈 일기를 만들었습니다. 이 앱은 사용자가 한밤중에 꿈을 타이핑하는 대신 목소리만 녹음하면, Google의 Gemini API를 사용해 오디오를 전사하고, 융 심리학을 기반으로 꿈을 분석하며, 감정 테마를 감지하고, 꿈 풍경을 나타내는 초현실적 이미지를 생성합니다.
Key Prompts & Features
- Multimodal audio processing –
gemini-3-flash-preview모델을 활용해 원시 오디오 블롭을 직접 처리했습니다. - Analysis Prompt:
“당신은 전문가인 융 심리학 꿈 분석가입니다… 오디오를 전사하십시오… 숨은 의미를 분석하십시오… 원형(archetype)을 식별하십시오… 주요 감정의 강도를 평가하십시오.”
- Visual Generation – 분석 결과를 활용해
gemini-2.5-flash-image에 동적 프롬프트를 전달했습니다. 프롬프트는 “꿈에서 발견된 특정 감정과 테마를 기반으로 ‘추상 표현주의와 Dreamcore의 혼합’”을 요청합니다. - Real‑time audio visualizer와 emotion radar chart(Recharts 사용) 구현.
- Auto‑tagging system – AI가 각 일기 항목에 적합한 키워드를 자동으로 제안합니다.
Demo
Somnium Audio Dream Journal 데모
My Experience
Google GenAI SDK를 사용한 개발은 특히 Structured Output과 관련해 놀라울 정도로 직관적이었습니다.
- Multimodal Ease – 별도의 음성‑텍스트 변환 라이브러리가 필요 없었습니다. 오디오 블롭을 Gemini에 직접 전달하고 “전사하고 분석하라”는 프롬프트만 주면 한 번의 요청으로 두 작업을 모두 수행해 지연 시간과 코드 복잡성을 크게 줄일 수 있었습니다.
- JSON Schema –
responseSchema설정을 사용해 Gemini가 항상 정돈된 JSON 형식(예: 감정 점수와 원형 리스트)으로 데이터를 반환하도록 했으며, React 컴포넌트가 파싱 오류 없이 즉시 렌더링할 수 있었습니다. - Chaining Outputs – 텍스트 분석 결과를 이미지 생성 프롬프트에 바로 연결함으로써 시각적 요소가 꿈 해석의 “분위기”와 완벽히 일치하는 일관된 사용자 경험을 만들 수 있었습니다.