Hallucination 발생 과정
AI는 왜 존재하지 않는 정보를 그럴듯하게 만들어낼까?
- Hallucination은 AI가 거짓말을 하는 것이 아니라 가장 그럴듯한 답을 생성하는 과정에서 발생하는 현상입니다.
- 학습 데이터 부족, 모호한 질문, 긴 추론 과정, Temperature 설정 등이 복합적으로 영향을 줍니다.
- 최신 AI도 Hallucination을 완전히 제거하지는 못하며 감소시키는 방향으로 발전하고 있습니다.
- 검색(RAG), 공식 문서 활용, 검증 단계 추가를 통해 발생 확률을 크게 줄일 수 있습니다.
- 사용자 질문 방식도 Hallucination 발생률에 직접적인 영향을 줍니다.
ChatGPT나 Gemini, Claude 같은 생성형 AI를 사용하다 보면 매우 자신감 있게 설명했지만 실제로는 존재하지 않는 정보를 답하는 경우를 볼 수 있습니다. 존재하지 않는 논문을 인용하거나 실제 없는 기능을 설명하거나, 잘못된 코드를 정답처럼 제시하는 사례도 있습니다.
이러한 현상을 AI 업계에서는 Hallucination(환각)이라고 부릅니다. 이름 때문에 AI가 착각하거나 상상한다고 오해하기 쉽지만 실제 내부에서는 전혀 다른 이유로 발생합니다.
이번 글에서는 Hallucination이 왜 발생하는지, 내부적으로 어떤 단계에서 만들어지는지, Temperature나 추론 과정과는 어떤 관계가 있는지까지 실제 생성 과정을 기준으로 자세히 알아보겠습니다.
1. Hallucination이란 무엇일까?
Hallucination은 AI가 학습하지 않은 사실이나 존재하지 않는 정보를 실제 사실처럼 생성하는 현상을 의미합니다.
중요한 점은 AI가 거짓말을 하려는 것이 아니라는 것입니다. GPT 계열 모델은 본질적으로 ‘다음에 올 가능성이 가장 높은 토큰’을 예측하는 시스템입니다. 따라서 정답을 알고 있는 것이 아니라 가장 자연스러운 문장을 이어가는 것이 목표입니다.
즉, 답을 모르는 상황에서도 문장을 끝까지 완성하려고 하기 때문에 현실에는 없는 정보도 매우 자연스럽게 만들어질 수 있습니다.
검색엔진은 “모르면 검색 결과가 없습니다.”라고 답할 수 있지만, 생성형 AI는 문장을 완성하는 모델이기 때문에 모르는 경우에도 가장 가능성이 높은 문장을 만들어내려는 성향이 있습니다.
2. Hallucination은 어느 단계에서 발생할까?
많은 사람이 학습 과정에서 잘못 외워서 Hallucination이 생긴다고 생각하지만 실제로는 생성 단계에서 가장 많이 발생합니다.
특히 토큰을 하나씩 생성하는 과정에서 앞에서 만들어진 내용이 뒤에도 영향을 주기 때문에 초기에 작은 오류가 발생하면 이후 문장 전체가 잘못 이어질 수도 있습니다.
GPT는 데이터베이스에서 문장을 복사하는 구조가 아니라 확률적으로 다음 토큰을 생성합니다. 따라서 처음 몇 개의 토큰 선택이 이후 답변 전체를 결정하는 경우가 많습니다.
3. Hallucination이 발생하는 대표 원인
Hallucination은 하나의 원인으로 생기지 않습니다. 여러 요소가 동시에 작용하여 발생합니다.
- 학습 데이터 부족
- 최신 정보 미반영
- 모호한 질문
- Temperature 증가
- 긴 추론 과정
- 컨텍스트 손실
- 잘못된 이전 답변 영향
예를 들어 존재하지 않는 논문 제목을 질문하면 AI는 실제 논문 이름과 비슷한 패턴을 학습했기 때문에 매우 그럴듯한 제목과 저자, 발행 연도까지 만들어낼 수도 있습니다.
4. Temperature가 영향을 줄까?
많은 사용자가 Temperature와 Hallucination을 혼동하지만 둘은 동일한 개념이 아닙니다.
Temperature는 여러 후보 토큰 가운데 얼마나 다양한 선택을 허용할지를 결정하는 설정입니다.
Temperature가 높을수록 예측 확률이 낮은 토큰도 선택될 가능성이 커지고, 창의성은 증가하지만 Hallucination 가능성도 함께 증가하는 경향이 있습니다.
- Temperature 0에 가까움 → 가장 안전한 답변
- 중간 Temperature → 균형
- 높은 Temperature → 창의성 증가
- 높은 Temperature → Hallucination 가능성 증가
하지만 Temperature를 0으로 설정했다고 Hallucination이 완전히 사라지는 것은 아닙니다. 기본적으로 모델이 잘못 학습했거나 정보 자체가 부족하면 낮은 Temperature에서도 같은 오류가 반복될 수 있습니다.
Temperature는 Hallucination의 원인이 아니라 발생 확률을 조절하는 변수에 가깝습니다. 즉 Temperature가 낮아도 모델이 모르는 사실은 여전히 틀릴 수 있습니다.
Hallucination은 AI가 의도적으로 거짓말을 하는 현상이 아니라 확률적으로 다음 토큰을 생성하는 과정에서 발생하는 자연스러운 한계입니다. 특히 생성 단계와 Temperature, 질문 방식이 큰 영향을 미치며, 다음에서는 실제 내부 생성 흐름과 최신 AI가 Hallucination을 줄이는 방법, RAG와 추론 모델의 차이까지 이어서 살펴보겠습니다.
5. 실제 Hallucination 생성 흐름
Hallucination이 만들어지는 과정을 이해하려면 AI가 완성된 답을 한 번에 꺼내는 시스템이 아니라는 점부터 알아야 합니다. 언어 모델은 입력된 질문과 지금까지 생성한 문장을 바탕으로 다음에 올 토큰의 확률을 계산하고, 선택된 토큰을 다시 입력 문맥에 추가하는 과정을 반복합니다.
- 사용자의 질문을 토큰 단위로 변환합니다.
- 질문과 대화 기록을 컨텍스트로 구성합니다.
- 다음에 올 가능성이 높은 토큰 후보를 계산합니다.
- 후보 가운데 하나를 선택해 문장에 추가합니다.
- 생성된 내용을 기준으로 다음 토큰을 다시 예측합니다.
- 초기 오류가 뒤의 문장과 추론에 계속 반영됩니다.
- 문법적으로 자연스럽지만 사실과 다른 답변이 완성됩니다.
예를 들어 사용자가 실제로 존재하지 않는 기술 보고서의 내용을 질문했다고 가정해보겠습니다. 모델이 질문 속 전제를 사실로 받아들이면 먼저 보고서가 존재한다고 가정할 수 있습니다. 이후에는 학습 데이터에서 보았던 보고서 제목, 연구기관, 저자 이름, 발행 연도 등의 일반적인 패턴을 조합해 빈 부분을 채웁니다.
이때 만들어진 정보가 실제 데이터베이스에서 검색된 결과는 아닙니다. 언어적으로 해당 위치에 들어가기에 그럴듯한 표현이 선택된 것입니다. 문장 구조와 전문 용어가 자연스러울수록 사용자는 오히려 내용을 사실로 받아들이기 쉽습니다.
Hallucination의 핵심 문제는 틀린 답이 어색하게 보이지 않는다는 점입니다. 언어 모델은 문장의 자연스러움을 높이는 데 매우 뛰어나기 때문에 사실성이 낮은 정보에도 논리적인 연결어, 전문 용어, 구체적인 숫자를 붙일 수 있습니다.
6. 첫 번째 오류가 답변 전체를 바꾸는 이유
자동회귀 방식의 언어 모델에서는 이미 생성한 내용이 다음 토큰을 결정하는 새로운 조건으로 사용됩니다. 따라서 답변 초반에 잘못된 인물, 날짜 또는 전제가 등장하면 이후 문장은 그 오류와 모순되지 않도록 이어질 가능성이 커집니다.
예를 들어 모델이 어떤 제품의 출시 연도를 잘못 생성하면 이후에는 해당 연도를 기준으로 후속 모델, 지원 기간, 운영체제 버전까지 연결할 수 있습니다. 각각의 문장만 보면 자연스럽지만 최초 전제가 틀렸기 때문에 답변 전체가 잘못된 방향으로 진행됩니다.
긴 답변을 검증할 때는 결론만 보는 것보다 처음 등장한 인물, 날짜, 제품명, 논문명, 계산 조건부터 확인하는 것이 효과적입니다. 초기 전제가 틀리면 뒤의 세부 설명도 함께 틀릴 가능성이 높습니다.
7. 모호한 질문이 Hallucination을 늘리는 이유
질문에 필요한 정보가 부족하면 모델은 빈 부분을 추론해 채워야 합니다. 이 과정에서 사용자가 의도한 상황과 모델이 가정한 상황이 달라지면 사실과 맞지 않는 답변이 생성될 수 있습니다.
예를 들어 “이 기능은 언제 추가됐어?”라고만 질문하면 어떤 제품, 앱, 운영체제 또는 버전을 말하는지 명확하지 않습니다. 모델은 직전 대화나 자주 등장하는 사례를 기준으로 대상을 추정할 수 있지만 그 추정이 틀렸다면 답변도 잘못됩니다.
질문의 범위를 구체화한다고 정답이 보장되는 것은 아니지만 모델이 임의로 채워야 하는 정보가 줄어들기 때문에 Hallucination 가능성을 낮출 수 있습니다.
8. 긴 추론은 Hallucination을 줄일까?
추론 단계가 길어지면 복잡한 문제를 여러 단계로 나눌 수 있다는 장점이 있습니다. 계산 조건을 확인하거나 서로 다른 가능성을 비교하기 쉬워지기 때문에 단순한 즉답보다 정확도가 높아지는 경우도 있습니다.
하지만 추론이 길다고 항상 정확한 것은 아닙니다. 초기에 잘못된 전제를 선택했다면 더 긴 추론은 그 오류를 정교하게 확장할 수도 있습니다. 또한 각 단계에서 새로운 가정이 추가될수록 검증되지 않은 정보가 포함될 가능성도 커집니다.
추론 능력과 사실 확인 능력은 구분해야 합니다. 모델은 주어진 전제를 바탕으로 논리적인 결론을 만들 수 있지만, 그 전제 자체가 현실에서 사실인지 확인하려면 검색 도구나 신뢰할 수 있는 외부 자료가 필요할 수 있습니다.
- 문제가 요구하는 조건을 정확히 사용했는지
- 중간에 새로운 가정을 임의로 추가하지 않았는지
- 계산 과정과 최종 숫자가 일치하는지
- 사실 정보와 모델의 추론을 구분했는지
- 다른 방법으로 검산했을 때 같은 결과가 나오는지
9. RAG는 Hallucination을 어떻게 줄일까?
RAG는 Retrieval-Augmented Generation의 약자로, 질문과 관련된 자료를 먼저 검색한 뒤 검색된 내용을 모델의 입력에 함께 제공하는 방식입니다. 모델 내부의 학습 정보에만 의존하지 않고 문서, 데이터베이스 또는 검색 결과를 근거로 답하게 만드는 구조라고 볼 수 있습니다.
예를 들어 회사 내부 규정을 질문할 때 모델이 기억에 의존해 규칙을 추측하게 하는 대신 실제 사내 문서에서 관련 부분을 검색해 제공하면 답변의 근거가 분명해집니다. 최신 제품 사양이나 자주 변경되는 정책을 설명할 때도 같은 방식이 유용합니다.
Microsoft의 RAG 문서에서도 검색된 내용이 부정확하거나 불완전하면 근거를 제공했더라도 잘못된 답변이 나올 수 있다고 설명합니다. 즉 RAG는 Hallucination을 줄이는 중요한 방법이지만 완전히 제거하는 장치는 아닙니다. :contentReference[oaicite:0]{index=0}
10. 검색 기능이 있어도 틀릴 수 있는 이유
검색 기능이 연결됐다고 해서 AI가 자동으로 모든 정보를 정확하게 읽는 것은 아닙니다. 먼저 검색 시스템이 질문과 관련된 문서를 찾아야 하고, 그 문서에서 필요한 부분을 선택해야 하며, 모델은 선택된 내용을 올바르게 해석해야 합니다.
검색 결과에 오래된 문서가 포함되거나, 중요한 문장이 잘려 있거나, 서로 다른 제품의 자료가 함께 검색되면 모델이 잘못된 결론을 낼 수 있습니다. 자료에는 없는 내용을 기존 학습 지식으로 보충하면서 다시 Hallucination이 발생할 수도 있습니다.
- 질문과 관련 없는 문서를 검색함
- 오래된 버전의 자료를 우선 선택함
- 표나 각주가 검색 과정에서 분리됨
- 문서 일부만 읽고 전체 의미를 추정함
- 검색 자료에 없는 내용을 모델이 추가함
- 여러 출처가 충돌하는데 하나만 선택함
따라서 검색 기반 AI에서는 단순히 출처가 표시됐는지만 볼 것이 아니라 해당 출처가 실제 주장과 연결되는지 확인해야 합니다. 인용 링크가 존재한다고 해서 답변 전체가 그 자료의 지원을 받는 것은 아닙니다.
11. Hallucination을 줄이는 질문 방법
사용자는 모델 내부를 직접 변경할 수 없지만 질문 구조를 조정해 오류 가능성을 낮출 수 있습니다. 핵심은 모델이 임의로 가정해야 하는 범위를 줄이고, 답변의 근거와 불확실성을 분리하도록 요구하는 것입니다.
- “확인되지 않은 내용은 추측하지 말고 모른다고 표시해줘.”
- “공식 문서에서 확인되는 정보와 추론을 구분해줘.”
- “제품명과 운영체제 버전을 기준으로 설명해줘.”
- “출처가 해당 주장과 직접 연결되는지 확인해줘.”
- “서로 다른 공식 자료가 충돌하면 양쪽 내용을 알려줘.”
- “계산 과정과 최종 결과를 각각 검산해줘.”
사실 확인, 비교, 추천, 계산을 하나의 질문에 모두 넣으면 오류 원인을 찾기 어려워집니다. 먼저 사실을 확인하고, 다음 질문에서 비교하거나 해석하도록 나누면 각 단계의 근거를 검토하기 쉬워집니다.
다만 “절대로 틀리지 마”와 같은 문장은 정확성을 보장하지 않습니다. 모델에게 의지를 강조하는 것보다 대상, 시점, 버전, 공식 출처, 답변 형식을 구체적으로 지정하는 편이 더 실용적입니다.
12. 특히 검증이 필요한 답변
모든 AI 답변을 같은 수준으로 검증할 필요는 없습니다. 창작 아이디어나 문장 다듬기처럼 사실 정확성이 핵심이 아닌 작업에서는 Hallucination의 영향이 상대적으로 작습니다. 반면 날짜, 수치, 출처, 법률, 의료, 금융, 제품 사양처럼 실제 행동과 판단에 영향을 주는 정보는 반드시 추가 확인이 필요합니다.
AI 답변의 신뢰도는 문장이 얼마나 자신감 있게 쓰였는지로 판단할 수 없습니다. 답변 속 주장마다 검증 가능한 근거가 있는지, 출처가 실제 내용을 지원하는지를 확인해야 합니다.
13. Hallucination을 발견하는 체크리스트
- 존재하지 않는 논문이나 문서 제목이 포함됐는가?
- 구체적인 숫자에 출처가 없는가?
- 질문하지 않은 조건을 임의로 가정했는가?
- 제품명이나 버전이 서로 섞였는가?
- 출처를 열었을 때 해당 내용이 실제로 있는가?
- 같은 질문을 다르게 물었을 때 답이 크게 달라지는가?
- 공식 문서와 AI의 설명이 충돌하는가?
- “항상”, “절대”, “완벽하게” 같은 단정 표현이 과도한가?
특히 실제처럼 보이는 논문명, 법 조항, 통계 수치, URL은 주의해야 합니다. 구체성이 높다고 해서 사실성이 높은 것은 아니며, 오히려 모델이 현실적인 형식을 정교하게 재현한 결과일 수 있습니다.
14. 자주 묻는 질문
일반적으로 의도적인 거짓말과는 다릅니다. 모델은 사실 여부를 인간처럼 판단해 숨기는 것이 아니라 입력 문맥에 맞는 다음 토큰을 생성합니다. 그 결과 사실과 다른 내용을 자연스럽게 만들 수 있습니다.
아닙니다. 출력의 무작위성은 줄어들 수 있지만 모델이 가진 잘못된 정보, 모호한 질문, 부족한 컨텍스트에서 발생하는 오류까지 제거되지는 않습니다.
추론 능력과 검증 절차가 개선돼 오류가 줄어들 수는 있지만 완전히 사라지지는 않습니다. 특히 최신 정보, 구체적인 출처, 존재 여부를 묻는 질문은 별도의 확인이 필요합니다.
검색 결과가 부정확하거나 필요한 문서가 누락될 수 있으며, 모델이 자료를 잘못 해석할 수도 있습니다. 검색 기능은 오류 가능성을 줄이는 도구이지 정답을 보장하는 장치는 아닙니다.
출처 링크가 실제 주장과 직접 연결되는지 확인해야 합니다. 관련 분야의 문서라는 이유만으로 답변 속 모든 내용을 지원하는 것은 아닙니다.
질문에 “확인할 근거가 없으면 모른다고 표시해달라”고 명시하면 불필요한 추측을 줄이는 데 도움이 됩니다. 다만 이 지시만으로 모든 오류가 차단되는 것은 아닙니다.
📚 함께 보면 좋은 글
Hallucination은 토큰 선택, 입력 데이터 처리, 이미지 해석, 코드 추론 방식과 연결되어 있습니다. 아래 글을 함께 살펴보면 생성형 AI가 정보를 받아들이고 답을 구성하는 구조를 더 입체적으로 이해할 수 있습니다.
🔗 공식 자료
📖 출처
- OpenAI, Why Language Models Hallucinate
- Microsoft Learn, Retrieval-Augmented Generation and Indexes
- Microsoft Learn, Groundedness Detection in Azure AI Content Safety
- Google for Developers, What Is a Generative Model?
- AWS, What Is Generative AI?
Hallucination은 AI가 사실을 검색해 전달하는 시스템이 아니라 확률적으로 다음 토큰을 생성하는 모델이기 때문에 발생합니다. 질문을 구체화하고 공식 자료와 검색 결과를 함께 검증하는 것이 가장 현실적인 대응 방법입니다.









