Amazon ElastiCache for Valkey의 CESC로 대화형 AI 스토리텔링 플랫폼 최적화하기
뷰컴즈는 Amazon ElastiCache for Valkey의 CESC로 타닥 v2 이미지 응답을 100ms 미만으로 줄이고 생성 비용도 35% 낮췄다.
뷰컴즈는 타닥 v2에서 사용자 입력에 월드 메타데이터와 캐릭터 상태를 함께 묶는 CESC를 도입하고, Amazon ElastiCache for Valkey의 벡터 검색으로 같은 맥락의 이미지를 재사용하는 구조를 만들었다. 같은 문장이라도 월드와 상황이 다르면 다른 이미지를 돌려주고, 표현이 달라도 맥락이 같으면 캐시를 재활용한다.
주요 과제는 세 가지였다.
- 고품질 이미지 생성에 평균 3~5초가 걸려 대화 흐름이 끊겼다.
- 키워드 매칭만으로는 세계관과 캐릭터 설정을 충분히 반영하기 어려웠다.
- 매번 새로 생성하면 장당 약 50원의 비용이 반복됐다.
Amazon ElastiCache for Valkey는 Valkey 7.2부터 지원되며 Redis OSS와 호환된다. 서버리스는 Redis OSS 대비 33%, 노드 기반은 20% 저렴하고, 최근 지원이 시작된 Valkey 8.0은 I/O Multi-thread 아키텍처로 최대 230% 처리량 향상과 최대 70% 지연 시간 개선을 제공한다. 벡터 검색과 시맨틱 캐싱은 Valkey 8.2에서 사용할 수 있고, 마이크로초 단위 지연 시간으로 수십억 개의 고차원 벡터를 다룰 수 있다. 최대 99% 재현율(Recall), HNSW와 FLAT, 벡터·태그·숫자 필터 조합도 지원한다.
Valkey GLIDE는 다중 언어 지원, 향상된 가용성, 관찰 가능성을 제공하는 오픈소스 클라이언트로, 벡터 인덱스 생성과 관리, 벡터 저장, 유사도 검색, 하이브리드 검색을 처리한다. 타닥 v2는 월드 진입, 보스 조우, 아이템 획득 같은 이벤트를 구조화해 서로 다른 사용자가 비슷한 시각 맥락을 반복적으로 만들도록 설계했고, NodeJS 백엔드에서 Aurora 메타데이터와 ElastiCache를 연결해 하이브리드 검색(Pre-filtering + KNN) 을 수행했다.
검색된 후보는 LLM verifier가 현재 맥락과 비교해 최종 1장을 고르거나 Reject하고, safetyFilterStatus를 다시 확인해 부적절한 콘텐츠 노출도 막는다. 캐시가 없으면 Text-First로 텍스트를 먼저 출력하고 Async Generation으로 이미지를 생성해 이후 요청에 대비한다.
그 결과 캐시 적중 시 응답은 100ms 미만으로 줄었고, 전체 트래픽의 **35%**를 캐시가 처리하면서 월 100만 회 요청 기준 생성 API 비용은 5,000만 원에서 3,250만 원으로 낮아졌다. 검색 비용은 ElastiCache 고정 비용에 포함돼 사실상 미미했고, 월 절감액은 1,750만 원 수준이다. 월드와 스토리가 쌓일수록 재사용 가능한 맥락 데이터도 함께 축적돼 응답 속도와 일관성이 더 좋아지는 구조를 확보했다.
이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.
요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.