AWS 기술 블로그
아이지에이웍스 AI 에이전트 클레어: Amazon Bedrock 기반 Text-to-SQL/Chart 에이전트로 이룬 데이터 분석 혁신
이 블로그는 2025 AI x Industry Week 에서 “Text2SQL로 완성한 IGAWorks 디파이너리의 데이터 분석 에이전트”의 주제로도 발표되었으며, 세션에서 다루지 못했던 세부 내용에 대해서도 추가로 소개합니다.
블로그는 아이지에이웍스가 AI 에이전트 ‘클레어(Claire)’를 개발하여 SQL 지식이 없는 마케터도 복잡한 데이터 분석을 수행할 수 있도록 한 혁신 사례를 총 2부에 걸쳐 소개하고자 합니다. 이를 통해 데이터 분석의 민주화가 어떻게 실현되었는지, 그리고 기업의 의사결정 프로세스가 어떻게 개선되었는지 살펴보겠습니다.
- 1부에서는 클레어의 기획 배경과 전반적인 아키텍처를 소개합니다.
- 2부에서는 멀티 에이전트 구조, RAG 시스템의 상세 설계, 그리고 LLM 프롬프트, 성능 관리 노하우를 상세히 설명합니다.

아이지에이웍스는 AI 기반의 Synthetic Consumer Intelligence (SCI) 기술로 기업이 소비자를 이해하고 시장을 예측해 성장할 수 있도록 돕는 종합 데이터 테크 기업입니다.
단순 과거 데이터 분석을 넘어, AI가 생성한 가상의 소비자 페르소나를 기반으로 미래 행동을 예측하고, 이를 바탕으로 정밀한 마케팅 전략 수립, 경쟁사 분석, 시장 점유율 확대를 지원합니다.
이를 구현하는 핵심 솔루션이 바로 Customer Data Platform (CDP) & Customer Relationship Management (CRM) 통합 플랫폼 디파이너리(DFINERY) 입니다. 디파이너리는 온/오프라인 고객 데이터를 수집, 정제, 분석하고 CRM 캠페인까지 실행할 수 있는 통합 환경을 제공합니다.
생성형 AI 활용 배경
디파이너리의 주요 사용자인 마케터들은 데이터 분석 과정에서 다음과 같은 어려움을 갖고 있었습니다.
- 디파이너리의 정해진 템플릿이나 제한된 필터, 그룹 기능만 사용 가능
- 맞춤 분석은 직접 SQL을 작성하거나 데이터 분석가에게 요청 필요
- SQL 학습 부담과 분석 요청, 응답 과정에서의 시간 지연과 커뮤니케이션 비용 발생
결과적으로 데이터 접근성과 분석 능력의 한계가 마케터의 기민한 의사결정을 가로막고 있었습니다.
아이지에이웍스는 이러한 문제를 해결하고자 Text-to-SQL 기반 AI 데이터 분석 기능 개발을 결정했고, Amazon Bedrock 기반 생성형 AI 기술을 활용하여 디파이너리의 새로운 AI 분석 에이전트 ‘클레어(Claire)’를 출시했습니다. 클레어는 사용자가 자연어로 질문하면 이를 정확한 SQL 쿼리로 변환하여 데이터를 분석해주는 혁신적인 솔루션입니다.
클레어(Claire) 소개

클레어는 단순히 데이터만 보여주는 것을 넘어, 종합적인 데이터 분석 경험을 제공하는 서비스입니다. 사용자가 일상적인 언어로 질문하면 데이터에 기반한 인사이트를 다각도로 전달합니다.
주요 기능
- 자연어 질의 처리
- 마케터가 일상적인 언어로 질문 입력
- AI가 의도를 파악하여 내부 데이터 구조 분석
- 자동화된 데이터 분석
- Amazon Bedrock 기반 자동 SQL 생성 및 실행
- 분석 결과의 차트 자동 시각화

- 종합적인 분석 결과 제공
- 핵심 내용 요약 및 차트 시각화
- 원본 데이터 테이블 제공
- 데이터 기반 심층 인사이트 도출
- 추가 분석을 위한 연관 질문 추천



클레어 구축 시 고려한 4가지 핵심 요구 사항
클레어를 설계하기 전, 다음과 같이 네 가지 핵심 요구사항을 정의했습니다.
- 높은 정확도와 신뢰성
사용자의 질문 의도를 정확히 파악하고, 오류 없는 SQL을 생성하여 신뢰할 수 있는 분석 결과를 제공해야 합니다. 잘못된 데이터는 잘못된 의사결정으로 이어지기 때문입니다. - 최적화된 사용자 경험
사용자가 질문하고 답변을 받기까지의 대기 시간을 최소화하고, 문맥이 자연스럽게 유지되어 대화형으로 편안하게 분석을 이어갈 수 있는 사용자 경험을 제공해야 합니다. - 엄격한 데이터 격리 및 보안
디파이너리는 수많은 고객사의 데이터를 다루는 멀티테넌트(Multi-tenant) 서비스입니다. 고객사 간 데이터는 어떠한 경우에도 외부 유출 없이 엄격하게 격리되어야 합니다. - 확장성과 유연성
향후 더 복잡한 요구사항이나 새로운 데이터 소스에 유연하게 대응할 수 있는 확장 가능한 아키텍처를 갖추어야 합니다.
도입 효과
클레어의 도입으로 디파이너리 사용자들은 다음과 같은 실질적인 개선 효과를 경험했습니다.
- 업무 효율성 대폭 향상: 복잡한 엑셀 작업이나 분석가 요청 대기 시간 없이 즉시 분석 결과를 얻을 수 있게 되어 업무 속도가 크게 개선되었습니다.
- 데이터 분석 접근성 확대: 전문 분석가가 없는 중소규모 기업도 손쉽게 고품질의 데이터 분석을 수행할 수 있게 되었습니다.
- 포괄적 분석 결과 제공: 요약된 문장, 핵심 수치, 차트를 한 번에 제공하여 사용자가 다각도로 데이터를 이해하고 활용할 수 있게 되었습니다.
- 복잡한 분석의 일상화: 시간과 비용 제약으로 시도하기 어려웠던 고도의 분석 작업들을 일상적으로 수행할 수 있게 되어 분석 업무의 범위가 확장되었습니다.
클레어에 대한 더 자세한 내용은 디파이너리 사이트 에서 확인하실 수 있습니다.
아키텍처
클레어는 Amazon Bedrock의 Claude 모델을 중심으로, RAG, LangGraph, 그리고 LLMOps 기술을 통합적으로 활용한 4개의 핵심 레이어로 구성되어 있습니다.

1. 사용자 인터페이스 및 대화 관리 레이어
사용자와 AI 에이전트 간의 원활한 상호작용을 담당하는 계층입니다.
1-1. SSE(Server-Sent Events) 기반 실시간 통신
SSE는 서버에서 클라이언트로 단방향 실시간 데이터를 푸시하는 웹 기술로, HTTP 연결을 유지하며 서버가 클라이언트에 지속적으로 이벤트를 전송합니다. 클레어는 SSE 기술을 활용하여 워크플로우 진행 상황과 AI 에이전트의 사고 과정을 실시간으로 전달함으로써 사용자 경험을 크게 향상시킵니다.
사용자는 “클레어가 질문을 어떻게 해석하고 있는지”, “어떤 데이터를 찾고 있는지” 등의 AI 분석 과정을 실시간으로 확인할 수 있어 대기 시간 동안의 불안감을 해소하고 AI에 대한 신뢰도를 높일 수 있습니다.
1-2. Amazon Aurora 기반 대화 이력 관리
Amazon Aurora에 대화 이력과 문맥 정보를 체계적으로 저장하여 클레어가 동일 대화 내에서 문맥을 유지할 수 있도록 합니다. 또한 이전 대화를 바탕으로 사용자의 질문과 추천 후속 질문을 마인드 맵 트리 형태로 제공하므로, 사용자는 클릭만으로 추천 질문을 진행하고 큰 흐름 속에서 자신의 생각 흐름을 시각적으로 확인할 수 있습니다.
2. AI 에이전트 레이어
자연어를 SQL로 변환하는 핵심 엔진을 구현한 계층입니다.
2-1. 핵심 기술 스택
Amazon Bedrock을 통해 AWS의 검증된 인프라로 안정성을 확보하고, 목적에 맞는 최적 모델을 선택할 수 있습니다. AWS의 보안 체계와 비용 효율적인 과금 구조를 활용하여 운영 효율성을 극대화했습니다. LangGraph는 SQL 생성부터 검증까지의 프로세스를 체계적으로 관리하며, LangChain과 연계하여 효율적인 작업 흐름을 구성합니다.
2-2. LLM 선정 전략 및 작업별 최적 모델 활용
네 가지 핵심 역량을 기준으로 모델을 평가하고 선정했습니다. SQL 생성 정확도는 복잡한 자연어 질문을 정확한 SQL로 변환하는 능력을, 스키마 이해도는 테이블 관계와 비즈니스 로직을 파악하는 능력을 평가했습니다. 또한 한국어 처리 성능과 응답 일관성을 통해 안정적이고 일관된 답변 제공 능력을 검증했습니다.
이러한 평가를 바탕으로 Claude 3.7 Sonnet은 복잡한 SQL 쿼리 생성과 비즈니스 로직 처리, RAG 컨텍스트의 효과적 활용을 담당합니다. 특히 한국어 특유의 모호한 표현 해석과 Highcharts JSON 포맷 차트 설정 생성에서 뛰어난 성능을 보입니다. Claude 3.5 Haiku는 단순하고 명확한 내부 보조 작업을 빠른 속도로 처리하여 전체 시스템의 효율성을 높입니다.
2-3. LangGraph 기반의 멀티 에이전트 워크플로우

클레어는 LangGraph를 기반으로 여러 에이전트가 유기적으로 협력하는 멀티 에이전트 워크플로우로 구성되어 있습니다.
각 에이전트의 동작을 간단하게 요약하면 다음과 같습니다.
1. Question Agent
가장 먼저 사용자의 질문을 받아 그 의도를 파악하고, 명확한 분석이 가능하도록 다듬습니다. 만약 질문이 명확하지 않은 경우, 사용자와 상호작용하여 모호성을 해소합니다. 질문이 여러 데이터 조회를 요구하는 복잡적인 성격인 경우에 이를 논리적인 최소 단위로 분할하여 후속 에이전트가 효과적으로 처리할 수 있도록 합니다.
2. Query Agent
Question Agent에게 질문을 받아 실제 데이터베이스에 요청할 수 있는 SQL 쿼리를 생성합니다. 이후 쿼리를 실행하고 다음 에이전트에 그 결과를 넘겨준 후 저장합니다.
3. Answer Agent
마지막으로 Query Agent에데 받은 데이터를 바탕으로 최종 답변을 생성합니다. 단순한 텍스트 요약을 넘어, 사용자가 데이터의 인사이트를 직관적으로 이해할 수 있도록, 차트나 그래프 같은 시각화 자료를 함께 제공합니다.
3. RAG 기반 컨텍스트 처리 레이어
LLM이 디파이너리의 데이터 스키마, 마케팅 지표 정의와 계산 방식과 같은 비즈니스 로직, 그리고 고객사별 데이터 특성을 정확히 이해할 수 있도록 돕는 계층입니다.
3-1. Amazon OpenSearch Service 기반 컨텍스트 관리
Amazon OpenSearch Service를 활용하여 데이터베이스 스키마, 관련 샘플 쿼리, 비즈니스 용어 정의 등 SQL 생성에 필요한 정보를 사전에 인덱싱합니다. 사용자 질문이 들어오면 Amazon Titan Embeddings v2 모델을 사용해 질문과 컨텍스트 정보를 벡터화하여 가장 유사한 컨텍스트 정보를 실시간으로 검색합니다.
3-2. 지능형 프롬프트 구성 및 SQL 생성
검색된 관련 정보들을 LLM 입력에 최적화된 형태로 구성하여 풍부한 컨텍스트를 제공합니다. 이를 통해 클레어는 사용자의 질문 의도를 정확하게 파악하고, 고객사의 비즈니스 로직과 데이터 특성을 반영한 정확한 SQL 쿼리를 생성할 수 있습니다.
4. 데이터 레이어와 LLMOps 레이어
LLM의 배포, 관리, 모니터링을 위한 운영 기법과 안전한 데이터 관리를 구현한 계층입니다.
4-1. 멀티 테넌트 환경의 데이터 보안
Amazon Redshift의 스키마 수준 격리를 통해 고객사별 데이터 공간을 완전히 분리합니다. 세션 기반의 동적 권한 관리를 구현하여 사용자별 데이터 접근을 엄격히 통제하며, SQL 실행 전 권한 검증과 결과 암호화 전송을 통해 데이터 보안을 보장합니다.
4-2. LLMOps 운영 관리 및 최적화
프롬프트 템플릿의 체계적인 버전 관리를 통해 일관된 응답 품질을 유지하고, 실시간 응답 품질 모니터링으로 서비스 안정성을 확보합니다. 또한 실행 시간 및 비용 최적화를 통해 효율적인 운영 환경을 구축했습니다.
실무 시나리오: 클레어를 통한 마케터의 분석 여정
앞서 설명드린 아키텍처와 워크플로우를 기반으로 클레어가 답변을 생성하는 과정과 그것이 실제 업무에서 어떻게 활용되는지, 디파이너리를 사용하는 가상의 마케터 A 스토리를 통해 살펴보겠습니다.
대화1: 모호한 질문의 명확화
새로운 분기의 캠페인 집행을 기획하고 있는 마케터 A는 먼저 이전 분기의 전반적인 제품 성과가 궁금해졌습니다. 그녀는 클레어에게 다음과 같이 질문합니다.
마케터 A: "이번 달 성과가 좋은 제품 Top 5 알려줘."
이 질문을 받은 클레어의 Question Agent는 ‘성과’라는 기준이 모호하다는 것을 즉시 인지합니다. ‘성과’는 매출액, 판매량 등 다양한 의미로 해석될 수 있기 때문입니다.
클레어는 단순히 오류를 반환하는 대신, 사용자의 의도를 명확히 파악하기 위해 다음과 같이 되묻습니다.
클레어(Claire): "성과가 어떤 기준으로 정의되는지 명확하지 않습니다. 매출, 구매 빈도 등 구체적인 성과 지표를 명시해주십시오."
대화 2: 명확한 지표로 분석 실행
마케터 A는 클레어의 질문에 따라 자신의 기준을 명확히 합니다. 이 과정에서 마케터 A는 클레어의 도움을 받아 자신의 생각을 구체화하게 됩니다.
마케터 A: "매출액 기준으로 알려줘."
요청이 명확해지자, 클레어는 즉시 분석을 시작합니다. 이때 마케터 A는 단순히 로딩 중이라는 화면만 보지 않습니다. SSE 기반 실시간 통신을 통해, 클레어가 현재 어떤 작업을 수행하고 있는지 작업 단계가 투명하게 공유됩니다.
(사용자 화면에 표시되는 실시간 상태 메시지 예시)
문맥을 파악하고 있습니다.
"지난 분기 매출액 기준 상위 5개 제품 조회" 해석 중입니다.
지난 분기(2025-07-01~2025-09-30) 매출액 기준 상위 5개 제품 조회 (현재 1개 쿼리 실행중)
이처럼 분석 과정을 실시간으로 전달함으로써 사용자는 시스템이 올바르게 동작하고 있음을 인지하고, 응답 대기 시간을 훨씬 덜 지루하게 느낄 수 있습니다.
대화 3: 문맥을 활용한 후속 분석 (복합 질의 처리)
클레어가 ‘매출액 기준 Top 5 제품’ 리스트와 핵심 요약, 그리고 시각화 차트를 제공했습니다. 데이터를 확인한 마케터 A는 이 제품들의 구매 패턴이 궁금해졌습니다.
마케터 A: "그 제품들의 주요 구매 요일과 시간대를 분석해줘."
클레어는 Amazon Aurora에 저장된 대화 이력과 문맥 정보를 즉시 참조하여, ‘그 제품들’이 방금 분석한 ‘매출액 기준 Top 5 제품’ 임을 정확하게 파악합니다.
또한 “주요 구매 요일과 시간대 분석”이라는 질문은 복합적인 분석을 요구합니다. 앞서 아키텍처에서 설명한 Question Agent는 이 의도를 파악하고, 분석을 논리적인 최소 단위로 분할합니다.
이 경우, 클레어는 내부적으로 다음과 같이 4개의 개별 분석을 동시에 준비합니다.
- 매출액 기준 Top 5 제품의 요일별 구매 건수 조회
- 매출액 기준 Top 5 제품의 시간대별 구매 건수 조회
- 매출액 기준 Top 5 제품의 요일별 매출액 조회
- 매출액 기준 Top 5 제품의 시간대별 매출액 조회
Query Agent는 이 4개의 분할된 분석을 수행하기 위한 SQL 쿼리들을 생성하여 실행합니다. 마케터 A는 SSE를 통해 각각의 분석이 어떻게 처리되는지 실시간으로 확인할 수 있으며, 이때 각 차트와 데이터 테이블에는 Top 5 제품 각각의 성과가 명확히 구분되어 시각화 자료로 함께 제공됩니다.
이처럼 마케터 A는 ‘이전 분기 성과’라는 단순한 궁금증에서 시작했지만, 클레어와의 대화를 통해 자신의 생각을 구체화하고, ‘어떤 제품을’, ‘어느 시간대에’ 마케팅해야 할지 구체적인 캠페인 아이디어를 얻을 수 있었습니다.
클레어가 없었다면, 첫 질문은 데이터 분석가에게 요청하고 기다리는 단발성 업무로 끝났을 것입니다. 특히 “주요 구매 요일과 시간대 분석” 같은 후속 질문은, 이를 4가지의 구체적인 지표로 다시 정의하고 요청하는 추가적인 부담 때문에 시도조차 못했거나, 업무 비효율을 감수해야 했을 것입니다.
마무리
지금까지 클레어 프로덕트 소개와 기본 아키텍처에 대해 설명했습니다. 이어서 2부에서는 멀티 에이전트의 구체적 구현 방식, RAG 시스템의 상세 설계, 그리고 프롬프트 엔지니어링 전략에 대해 더 자세히 다루도록 하겠습니다.