할루시네이션과 줄이는 방법
**할루시네이션(hallucination)**은 모델이 거짓을 완전한 확신을 가지고 진술하는 것입니다. 거짓말을 하는 것도 아니고 고장 난 것도 아닙니다 — LLM이 작동하는 방식의 이면입니다: LLM은 그럴듯한 텍스트를 생성하는데, 그럴듯한 것이 항상 참은 아닙니다(LLM이란 무엇인가? 참고). 프롬프트만으로 이를 완전히 없앨 수는 없지만, 크게 줄이고 나머지를 잡아낼 수는 있습니다.
왜 일어나는가
모델은 가능성 높은 이어지는 내용을 예측합니다. 무언가를 "모를" 때, 가장 그럴듯해 보이는 이어짐은 종종 자신 있고 잘 짜인 — 그리고 틀린 — 답입니다. 여지를 만들어 주지 않는 한, 내장된 "나는 확신이 없다"는 신호는 없습니다.
고위험 영역
출력이 다음과 관련될 때 가장 회의적으로 보세요:
- 인용, 따옴말, 참고문헌 — 지어낸 논문, 가짜 URL, 잘못 귀속된 인용구.
- 구체적인 숫자, 날짜, 통계 — 그럴듯하지만 날조된 수치.
- 틈새이거나 매우 최근의 사실 — 모델이 안정적으로 학습한 범위를 벗어남.
- API와 라이브러리 세부사항 — 존재하지 않는 메서드나 파라미터.
- 인물 및 법률/의료 관련 구체 사항 — 위험이 크고, 미묘하게 틀리기 쉬움.
줄이기 위한 도구 모음
이것들을 쌓아 보세요 — 하나하나가 도움이 됩니다:
- 출처에 근거하게 하세요. 원문 텍스트를 붙여 넣고 *"위 텍스트만으로 답하고, 거기에 없으면 없다고 말해 줘"*라고 하세요. 이것이 RAG의 핵심 아이디어입니다.
- 빠져나갈 길을 주세요. *"확신이 없으면 '모르겠다'고 말해 줘"*를 명시적으로 허용하세요 — 자신 있는 추측을 극적으로 줄입니다.
- 추론과 인용을 요청하세요. "각 주장을 뒷받침하는 정확한 문장을 인용해 줘." 뒷받침되지 않는 주장이 드러납니다.
- 모델이 온도(temperature) 제어를 노출하는 사실 기반 작업에서는 창의성을 낮추세요(샘플링 제어 참고).
- 도구를 사용하세요. 수학, 최신 데이터, 조회의 경우 모델의 기억에 의존하는 대신 계산기/검색/도구를 주세요.
- 교차 확인하세요. 같은 질문을 두 가지 방식으로 묻거나, 두 번째 패스가 첫 번째를 비평하게 하세요.
실제로 당신을 지켜 주는 마음가짐
:::warning 중요한 것은 — 항상 검증하세요 어떤 프롬프트도 출력을 100% 신뢰할 수 있게 만들지 못합니다. 결과가 중요한 무엇이든 — 보고서 속의 숫자, 인용, 실행할 명령, 의료/법률/재무 세부사항 — 신뢰할 수 있는 출처와 대조해 확인하세요. AI는 최종 권위가 아니라 빠른 초안으로 다루세요. 이것이 책임 있는 사용의 핵심입니다. :::
간단한 규칙: 틀렸을 때의 대가가 검증의 양을 정한다. 브레인스토밍 중인가요? 마음껏 믿으세요. 통계를 발표하나요? 매번 검증하세요.