
핵심요약
카카오페이의 금융 AI 컨시어지 '페이지니'는 사용자의 위치, 시간, 이용 기록을 분석하여 맞춤형 금융 서비스와 혜택을 제안하며, 음성 및 텍스트 입력을 모두 지원하는 멀티 에이전트 기반 서비스입니다.
카카오페이 금융 AI 컨시어지 '페이지니' 아키텍처 및 구현 상세
페이지니 서비스 주요 기능
- 개인화된 혜택 제안: 사용자의 위치, 시간, 이용 기록을 분석하여 맞춤형 금융 서비스와 혜택을 선제적으로 제안합니다.
- 멀티모달 입력 지원: 음성(STT) 및 텍스트 입력, 추천 질문 선택 등 다양한 방식으로 페이지니와 대화 가능하도록 설계되었습니다.
- 복합 질문 이해: 사용자의 질문에 숨겨진 진짜 고민과 의도를 정확히 파악하여 최적의 서비스와 활용 시나리오를 제시합니다.
- 스마트한 장소 및 혜택 추천: 사용자의 취향과 구체적 요청을 반영, 가맹점 리뷰 및 실시간 영업 정보를 분석해 장소를 추천하고, 카카오페이 할인/적립 혜택 정보를 함께 제공합니다.
아키텍처 및 기술 스택
- Frontend: TypeScript + React 기반으로 구현되었으며, AWS Amplify를 통해 배포되었습니다.
- Backend: AWS Lambda를 활용하여 Serverless 아키텍처를 구축, 요청 파싱 및 AWS Bedrock Client 호출 로직을 수행합니다.
- STT 서버: 실시간 음성 인식을 위해 시간적 제약으로 EC2에 별도 서버를 운영하며 AWS Transcribe를 활용합니다.
- TTS 기능: Lambda는 AWS Polly를 사용하여 Agent 응답 텍스트를 오디오 타입으로 변환하고, 이를 FE에 JSON 형식으로 전달합니다.
AWS Bedrock Agent 활용
- Multi-agent Collaboration: Supervisor Agent가 사용자 요청을 받아 적절한 Worker Agent를 선택하여 응답을 위임하는 구조로 확장성을 확보했습니다.
- Worker Agent 구성: 각 도메인에 최적화된 응답을 위해 Knowledge Base와 Function을 제공하며, 현재는 '전체 서비스' 및 '가맹점 혜택' 에이전트가 개발되었습니다.
- 전체 서비스 에이전트: RAG (Retrieval-Augmented Generation) 기반으로 Knowledge Base를 탐색하여 서비스 식별자를 조회하고, Lambda의 Function을 호출해 정형 데이터를 조회합니다.
- 가맹점 혜택 에이전트: 가맹점 리뷰 및 기본 정보로 구성된 Knowledge Base를 활용하며, 사용자의 입력 특성에 따라 RAG 사용 여부를 제어하여 최적의 가맹점을 추천합니다.
프롬프트 엔지니어링 전략
- 명확한 역할 부여 및 행동 원칙 수립: AI에 구체적인 페르소나와 행동 제약을 부여하여 예측 가능한 일관된 결과물을 생성합니다.
- 단계별 목표 제시: 작업을 논리적 단계로 나누어 워크플로우를 명확히 제시함으로써, 안정적인 함수 호출까지의 추론 과정을 유도합니다.
- 조건부 규칙으로 효율성 극대화: Knowledge Base를 우선 검색하고, 필요 시에만 전체 DB를 조회하도록 조건을 설정하여 응답 속도와 비용을 최적화합니다.
- 구체적인 예시 및 출력 형식 강제:
<thinking>태그 반복 문제 해결 및 JSON 예시와<answer>태그 강제를 통해 원하는 포맷의 정확한 출력을 보장합니다.
STT (Speech-To-Text) 구현 과정
- 오디오 샘플레이트 변환: Amazon Transcribe가 지원하는 16kHz 이상의 샘플레이트에 맞춰 클라이언트에서 녹음된 8kHz 음성 데이터를 16kHz로 리샘플링하여 전송했습니다.
- 발화 종료 감지: Socket 통신을 통해 서버에서 수신한 JSON 응답의
event필드가SPEECH_END일 경우, 사용자 발화가 종료된 것으로 판단하여 음성 스트리밍을 종료하도록 구현했습니다.
카카오 페이