
AI
AI & Event Driven 오디오 데이터 LinkedIn 글 자동 발행 (feat. Apache Flink)
두줄요약
오디오를 텍스트로 바꾸고 GPT로 LinkedIn 글을 자동 생성하는 이벤트 기반 워크플로를 소개했습니다. 프론트엔드와 AI 처리를 분리해 확장성과 유지보수성을 높인 점이 핵심입니다.
문제 상황
- 오디오 내용을 바탕으로 LinkedIn 게시물을 자동 생성하고, 이를 실시간 워크플로로 처리할 필요성
- 프론트엔드와 AI 처리 흐름이 얽히면 개발과 확장, 기술 교체가 어려워지는 구조
구조와 흐름
- Next.js에서 MP3 URL과 에피소드 설명을 입력받아 처리 시작
- OpenAI Whisper로 오디오를 텍스트로 변환하고, GPT-4로 LinkedIn 포스트 생성
- Kafka 토픽으로 이벤트를 전달하고, Flink SQL로 프롬프트 생성과 LLM 호출을 연결
선택 이유
- 이벤트 주도 아키텍처로 구성 요소를 분리해 비동기 처리와 확장성 확보
- Confluent Cloud, Kafka, Flink 조합으로 스트리밍 기반 AI 워크플로 구성
- 뷰와 SQL 기반 구성으로 프롬프트 조립과 워크플로 수정의 유지보수성 향상
트레이드오프
- 데이터베이스 저장 대신 임시 캐시를 선택해 보관 부담을 줄이는 대신 영속성은 낮춤
- 문자열 연결을 직접 넣는 방식보다 뷰를 사용해 가독성과 수정 용이성을 우선
적용해볼 점
- AI 기능을 앱 본체와 분리해 이벤트 기반으로 연결하는 설계 방식
- 실시간 스트리밍 처리와 생성형 AI를 결합할 때 Kafka와 Flink 활용 가능성
