핵심 키워드: AI 환각, AI 데이터 분석, Enterprise AI, LLM 오류, AI 신뢰성, 데이터 거버넌스, SELMA

생성형 AI의 대표적인 문제로 흔히 AI 환각(Hallucination)을 이야기합니다.
존재하지 않는 사실을 만들어내거나 잘못된 정보를 자신 있게 말하는 현상입니다.
기업 데이터 분석 AI에서도 당연히 중요한 문제입니다.
그런데 개인 프로젝트 SELMA를 개발하면서 저는 조금 다른 종류의 오류를 경험했습니다.
처음에는 오류인지 알아차리기도 쉽지 않았습니다.
왜냐하면 AI가 보여준 숫자가 실제 데이터와 정확하게 일치했기 때문입니다.
문제는 숫자가 아니라 다른 곳에 있었습니다.
사용자가 물어본 것과 다른 것을 계산하고 있었습니다.
틀린 숫자는 오히려 발견하기 쉽다
예를 들어 AI가 회사의 8월 매출을 3억 원이라고 답했는데 실제 매출이 10억 원이라면 비교적 빠르게 문제를 발견할 수 있습니다.
SQL 오류가 발생하거나 데이터베이스에 존재하지 않는 값을 말해도 마찬가지입니다.
누군가 숫자를 확인하면 이상하다는 사실이 드러납니다.
하지만 이런 경우는 어떨까요?
사용자가 순매출을 물었는데 시스템이 결제금액을 조회합니다.
두 값 모두 데이터베이스에 존재합니다.
SQL도 정상적으로 실행됩니다.
응답 형식도 자연스럽습니다.
결과 숫자 역시 실제 데이터입니다.
모든 것이 정상처럼 보이지만 질문에 대한 답은 아닙니다.

SELMA에서도 실제로 비슷한 문제가 있었다
SELMA의 초기 개발 과정에서도 이런 유형의 문제가 반복적으로 발견됐습니다.
질문에서 요구한 Dimension을 계약이 표현하지 못하면 해당 조건을 버리고 전체 합계를 답하거나, 요청한 Metric을 찾지 못하면 이름이 비슷한 다른 Metric으로 해석하는 식의 보완 경로가 있었습니다.
이런 fallback은 처음에는 사용자에게 최대한 답을 제공하기 위한 친절한 기능처럼 보였습니다.
하지만 실제로는 위험했습니다.
질문의 일부를 이해하지 못했는데도 이해한 것처럼 계속 실행할 수 있었기 때문입니다.
특히 결과 숫자가 실제 데이터에서 나온다는 점이 문제였습니다.
완전히 지어낸 숫자보다 오히려 더 신뢰하기 쉽습니다.
“모르면 비슷한 것으로 답한다”는 전략의 위험
일반적인 검색이나 대화에서는 사용자의 표현이 조금 모호할 때 가장 가까운 의미를 추측하는 것이 도움이 될 수 있습니다.
하지만 기업 데이터에서는 상황이 다릅니다.
매출, 순매출, 주문금액, 처방액, 해지 월요금은 비슷해 보이더라도 각각 다른 Business Meaning을 가질 수 있습니다.
그래서 SELMA를 Architecture Hardening하면서 중요한 원칙을 하나 세웠습니다.
정본이 말하지 않으면 말하지 않는 채로 둔다.
계약에 없는 의미를 Runtime이 이름을 보고 추측해 새로운 의미를 만들지 않는다는 뜻입니다.
질문을 정확하게 표현할 수 없다면 다른 것으로 대신 답하기보다 되묻거나 무엇이 부족한지 명시적으로 알려주는 것을 선택했습니다.
“분석해줘”에 숫자 하나만 답했던 이유
Architecture를 상당 부분 정리한 뒤 실제 사용자처럼 SELMA를 사용했을 때 또 흥미로운 사례가 나왔습니다.
제가 이렇게 질문했습니다.
“올해 8월 매출 분석해줘.”
SELMA는 정확한 8월 매출 숫자를 답했습니다.
데이터도 맞고 기간도 맞았습니다.
하지만 저는 매출을 알려달라고 한 것이 아니라 분석해달라고 했습니다.
조사해보니 당시 SELMA에서는 알려줘와 분석해줘가 같은 실행 계획으로 처리되고 있었습니다.
이번에도 결과 숫자는 맞았습니다.
하지만 사용자가 요청한 작업의 깊이가 달랐습니다.
결국 SELMA에서는 질문이 요구하는 작업을 lookup, analyze, explain, compare처럼 명시적으로 구분하도록 구조를 바꿨습니다.

Enterprise AI에서 Semantic Correctness가 중요한 이유
이 경험을 통해 AI 데이터 분석의 정확성을 단순히 숫자 정확도로만 평가하기 어렵다고 느꼈습니다.
적어도 다음 조건이 함께 맞아야 합니다.
올바른 Metric을 선택했는가?
올바른 Dimension과 기간을 적용했는가?
사용자가 요청한 작업을 수행했는가?
허용된 데이터 범위만 읽었는가?
답변의 주장이 실제 Evidence보다 강하지 않은가?
이 중 하나라도 틀리면 데이터베이스에서 가져온 숫자가 정확하더라도 전체 답변은 잘못될 수 있습니다.
그래서 SELMA에서는 단순한 SQL correctness뿐 아니라 Semantic Correctness를 중요한 문제로 보고 있습니다.
Enterprise AI에서 가장 위험한 답은 무엇일까?
SELMA를 개발하기 전에는 AI가 존재하지 않는 숫자를 만들어내는 것이 가장 위험하다고 생각했습니다.
지금은 조금 다르게 생각합니다.
물론 Hallucination은 여전히 중요한 문제입니다.
하지만 기업의 의사결정에 사용되는 AI라면 더 조심해야 하는 경우가 있습니다.
실제 데이터에서 가져온 정확한 숫자를 사용해
사용자가 묻지 않은 질문에 자신 있게 답하는 것.
이런 오류는 시스템도 성공으로 기록하고 사용자도 쉽게 믿을 수 있습니다.
그래서 신뢰할 수 있는 Enterprise AI를 만들기 위해서는 단순히 “숫자가 맞는가?”를 넘어,
“이 숫자가 정말 사용자가 물어본 것에 대한 답인가?”
를 검증할 수 있어야 한다고 생각합니다.
다음 6편에서는 이 문제와 직접 연결되는 주제를 다뤄보겠습니다. 기업의 Business Meaning을 누가 결정해야 하는지, 그리고 SELMA가 LLM이나 Runtime의 추측 대신 Contract를 Source of Truth로 선택한 이유를 정리해보겠습니다.
#AI환각 #AIHallucination #EnterpriseAI #엔터프라이즈AI #AI데이터분석 #LLM #AI신뢰성 #SemanticAI #DataContract #데이터거버넌스 #AI에이전트 #SELMA