피드로 돌아가기
뱅크샐러드에서 테스트 데이터를 생성하는 방법 (feat. LLM)
뱅크샐러드 기술블로그뱅크샐러드 기술블로그
Backend

뱅크샐러드에서 테스트 데이터를 생성하는 방법 (feat. LLM)

뱅크샐러드 QA팀이 LLM 기반 프롬프트 엔지니어링으로 자동 테스트 데이터 생성 파이프라인 구축해 수작업 데이터 생성 제거

2024년 11월 18일8intermediate

Context

마이데이터 기반 금융 서비스는 은행 계좌, 신용카드, 대출, 투자, 보험 등 다양한 금융 상품과 사용자별 고유한 금융 패턴을 반영한 복잡한 테스트 데이터가 필요했다. 이러한 데이터를 매 테스트마다 수작업으로 생성하는 것은 시간이 매우 많이 소요되는 작업이었다.

Technical Solution

  • 페르소나 설정을 통한 맥락 제공: LLM이 실사용자 데이터를 생성하도록 구체적인 페르소나(이름, 나이, 직업, 가족 구성, 라이프스타일, 재무 목표)를 프롬프트에 포함
  • JSON 형식 및 구조 명시: LLM 반환값의 예측 가능성을 위해 원하는 데이터 형식을 명확하게 지정
  • Few-shot 학습 방식 적용: JSON 형식의 실제 가계부 내역 예시 데이터를 프롬프트에 첨부해 LLM의 생성 품질 향상
  • 후처리 자동화: 마크다운 형식 제거, 불필요한 설명 제거, JSON 파싱 및 유효성 검사를 프로그래매틱하게 수행
  • API 연동 및 자동화: JSON을 Kotlin/Java DataClass로 매핑해 개발 서버에 전송하고, GitHub Actions Cron Job으로 매일 자동 데이터 생성 및 업로드

Impact

아티클에 정량적 수치(시간 단축, 데이터 생성 속도 등)가 명시되지 않았음.

Key Takeaway

복잡한 실제 도메인 데이터를 자동으로 생성해야 할 때, LLM에 구체적인 페르소나와 출력 형식, 그리고 예시 데이터(few-shot)를 함께 제공하면 수작업 없이 신뢰할 수 있는 테스트 데이터를 지속적으로 생성할 수 있다.


금융, 전자상거래, 의료 등 복잡한 도메인 데이터가 필요한 서비스에서 QA/개발 팀은 LLM 프롬프트 엔지니어링 시 페르소나 설정, JSON 스키마 명시, few-shot 예시 데이터를 함께 제공한 후 후처리 파이프라인(형식 정제, 검증)을 추가하면, 매번 수작업하던 테스트 데이터 생성을 완전 자동화할 수 있다.

원문 읽기
뱅크샐러드에서 테스트 데이터를 생성하는 방법 (feat. LLM) | Devpick