LLM 환각 해결 CoK 프롬프팅: CoT의 한계를 넘어 지식 기반 추론의 신뢰도를 높이는 법
LLM의 ‘그럴듯한 거짓말’, CoT를 넘어 CoK가 필요한 이유
대규모 언어 모델(LLM)은 놀랍습니다. 복잡한 질문에 답하고, 코드를 작성하고, 심지어 시를 짓기도 합니다. 하지만 우리 모두가 경험한 고질적인 문제가 있습니다. LLM은 너무나 자신감 있게, 그리고 너무나 그럴듯하게 ‘거짓말’을 한다는 것입니다.
AI 업계에서는 이를 ‘환각(Hallucination)’이라고 부릅니다.
이 문제를 해결하기 위해 등장한 가장 유명한 기법이 바로 ‘생각의 사슬(Chain-of-Thought, CoT)’ 프롬프팅입니다. “단계별로 생각하자(Let’s think step by step)”라는 간단한 주문 하나로, LLM은 복잡한 문제를 중간 추론 단계로 나누어 해결하며 정확도를 높였습니다.
하지만 CoT에도 치명적인 결함이 있었습니다. LLM이 생성하는 ‘추론 과정’ 자체가 환각일 수 있다는 점입니다. 그럴듯해 보이는 추론 단계가 사실은 틀린 정보에 기반하고 있다면, 최종 결론 역시 틀릴 수밖에 없습니다.
예를 들어, “데릭 화이트가 백핸드 샷을 날렸다”라는 문장이 그럴듯한지 물었을 때, CoT를 사용한 모델은 “데릭 화이트는 하키 선수일 가능성이 높다”라는 잘못된 추론을 합니다. (실제 데릭 화이트는 농구 선수입니다.) 이 잘못된 전제 때문에 “그렇다, 그럴듯하다”라는 틀린 답을 내놓게 됩니다.
추론 과정은 그럴듯했지만, 그 기반이 되는 ‘사실’이 무너진 것입니다.
이러한 LLM 추론의 취약성을 해결하기 위해, East China Normal University와 The University of Hong Kong의 연구원들이 새로운 프롬프팅 전략을 제안했습니다. 바로 ‘지식의 사슬(Chain-of-Knowledge, CoK)’ (논문 링크)입니다.
이 글에서는 CoK가 무엇인지, CoT와 어떻게 다른지, 그리고 어떻게 LLM의 환각을 줄이고 사실적, 충실한 추론을 이끌어내는지 깊이 있게 분석합니다.
1. 지식의 사슬(CoK)이란 무엇인가?
CoK 프롬프팅은 LLM이 모호한 텍스트 추론에만 의존하는 대신, 명시적인 ‘지식 증거(knowledge evidence)’를 먼저 생성하고 이를 기반으로 추론하도록 유도하는 방식입니다.
연구팀은 우리가 복잡한 질문에 답하기 전에 머릿속으로 ‘마인드맵’이나 ‘지식맵’을 그리는 인간의 행동에서 영감을 받았습니다. CoK는 LLM에게 이와 유사한 작업을 시키는 것입니다.
CoK 프롬프팅은 크게 두 가지 핵심 요소로 구성됩니다:
증거 트리플(Evidence Triples, CoK-ET): 구조화된 지식 조각입니다. 이는 (주어, 관계, 목적어) 형태의 튜플(triple)로 표현됩니다. 예를 들어, (데릭 화이트, isA, 농구 선수)와 같은 형태입니다. 이는 LLM이 최종 답변에 도달하기까지 사용한 핵심 지식의 ‘뼈대’ 역할을 합니다.
설명 힌트(Explanation Hints, CoK-EH): 이 증거 트리플들을 논리적으로 연결하는 자연어 설명입니다. CoT의 추론 과정과 유사하지만, CoK-ET라는 명확한 ‘사실 앵커’에 기반한다는 차이점이 있습니다.
CoT vs CoK: 결정적 차이
앞서 언급된 “데릭 화이트가 백핸드 샷을 날렸다”라는 예시로 돌아가 보겠습니다.
CoT의 실패 사례:
- 추론: “데릭 화이트는 아마도 농구 또는 하키 선수일 것이다. 그는 백핸드 샷을 시도했다.”
- 문제: ‘아마도’라는 모호한 추측에 기반하며, ‘데릭 화이트 = 하키 선수’라는 잘못된 사실을 생성합니다.
- 결과: (틀림) “예, 그럴듯합니다.”
CoK의 성공 사례:
- 증거 트리플 (ET):
- (데릭 화이트, isA, 농구 선수)
- (백핸드 샷, is commonly used in, 하키 또는 테니스)
- 설명 힌트 (EH): “백핸드 샷은 하키나 테니스에서 흔히 사용되지만, 농구에서는 사용되지 않습니다.”
- 결과: (정답) “아니요.”
CoK는 LLM이 ‘데릭 화이트’와 ‘백핸드 샷’이라는 키워드를 기반으로 모호하게 추론하는 대신, 먼저 명확한 사실(지식 트리플)을 생성하도록 강제합니다. 이 구조화된 지식 덕분에 LLM은 “데릭 화이트는 농구 선수”이고 “백핸드 샷은 농구 기술이 아님”을 명확히 인지하고 올바른 결론에 도달합니다.
2. CoK의 핵심 엔진: F²-검증 (F²-Verification)
CoK의 진정한 힘은 단순히 지식을 생성하는 데서 그치지 않고, 생성된 지식을 ‘검증’하는 메커니즘을 갖추고 있다는 점입니다. 연구팀은 이 강력한 검증 및 수정 프로세스를 F²-검증(F²-Verification)이라고 부릅니다.
F²는 다음 두 가지를 의미합니다:
- 사실성(Factuality): 생성된 추론 증거(ET)가 ‘사실’에 부합하는가?
- 충실성(Faithfulness): 이 증거(ET)와 설명(EH)이 최종 답변과 논리적으로 ‘일치’하는가?
LLM이 CoK 프롬프트에 따라 답변을 생성하면, 이 F²-검증 시스템이 생성된 ‘증거 트리플’과 ‘설명 힌트’의 신뢰도를 평가합니다.
단계 1: 사실성(Factuality) 검증
먼저, 시스템은 LLM이 생성한 각각의 증거 트리플 (s, r, o)이 외부 지식 베이스(KB)의 ‘사실’과 일치하는지 확인합니다. 이 검증은 두 가지 전략으로 수행됩니다.
정확한 검증(Exact Verification): 가장 간단한 방법입니다. LLM이 생성한 트리플, 예를 들어 (데릭 화이트, isA, 농구 선수)가 우리가 보유한 지식 베이스(KB)에 정확히 존재하는지 확인합니다.
암시적 검증(Implicit Verification): 만약 KB에 정확한 트리플이 없다면 어떨까요? 그 트리플이 틀렸다고 단정할 순 없습니다. KB가 세상의 모든 지식을 담고 있진 않기 때문입니다. 이때 시스템은 KB 임베딩 모델(논문에서는 TransR 사용)을 활용하여, 이 트리플이 KB 내의 다른 지식들과 비교했을 때 ‘사실일 가능성이 높은지’를 예측합니다.
이 과정을 통해 LLM이 생성한 모든 지식 조각은 ‘사실 점수’를 받게 됩니다.
단계 2: 충실성(Faithfulness) 검증
사실성이 확보되었더라도, LLM이 그 사실들을 가지고 엉뚱한 결론을 내릴 수 있습니다 (논리적 오류). 충실성 검증은 이 논리적 연결고리를 확인합니다.
이전 연구들은 텍스트로만 된 CoT 추론 과정과 최종 답변 간의 논리적 일관성을 검증하기 어려웠습니다. 하지만 CoK는 ‘증거 트리플(ET)’이라는 명확한 구조적 증거를 가지고 있습니다.
충실성 검증 프로세스는 다음과 같습니다:
- [질문 + 증거 트리플(ET) + 최종 답변]을 하나의 시퀀스로 묶습니다.
- LLM이 생성한 ‘설명 힌트(EH)’ 텍스트를 가져옵니다.
- 두 텍스트(1번과 2번)를 SimCSE와 같은 문장 인코더로 인코딩하여 의미론적 유사도를 계산합니다.
- 만약 두 텍스트의 유사도가 높다면, 이는 LLM이 생성한 설명(EH)이 ‘증거(ET)와 최종 답변(A) 사이의 논리’를 충실하게 반영하고 있음을 의미합니다.
3. 틀렸다면 다시 생각하라: 재고(Rethinking) 프로세스
F²-검증을 통해 ‘사실성’이나 ‘충실성’ 점수가 낮은, 즉 신뢰할 수 없는 응답이 발견되면 어떻게 할까요? CoK는 여기서 멈추지 않고 ‘재고(Rethinking) 프로세스’를 실행합니다.
이는 마치 학생이 틀린 문제를 푼 뒤, 선생님이 올바른 개념(지식)을 알려주고 다시 풀어보게 하는 과정과 같습니다.
- F²-검증 시스템이 사실성 점수가 낮은(즉, 틀린) 증거 트리플을 식별합니다. (예: (데릭 화이트, isA, 하키 선수))
- 시스템은 KB에서 올바른 지식 트리플을 검색합니다. (예: (데릭 화이트, isA, 농구 선수))
- 이 ‘올바른 지식’을 원래 프롬프트에 추가하여 LLM에게 주입합니다.
- LLM은 이 새로운 ‘힌트’를 바탕으로 문제를 “다시 생각(rethink)”하여 새로운 답변과 추론 과정을 생성합니다.
이 ‘생성-평가-재고’의 역동적인 순환은 LLM이 신뢰할 수 있는 답변에 도달할 때까지 반복됩니다.
4. CoK는 실제로 효과가 있는가? (실험 결과)
연구팀은 CoK 프롬프팅과 F²-검증의 효과를 입증하기 위해 상식, 사실, 상징, 산술 추론 등 다양한 벤치마크에서 광범위한 실험을 수행했습니다.
결과는 매우 인상적이었습니다.
CoK의 압도적 성능: CoK는 text-davinci-002 및 gpt-3.5-turbo 모델 모두에서 기존 CoT 전략보다 꾸준히 높은 성능을 보였습니다. 이는 명시적인 증거 트리플과 설명을 결합하는 CoK의 방식이 LLM의 추론 능력을 근본적으로 향상시킨다는 것을 증명합니다.
F²-검증의 힘: CoK에 F²-검증을 추가하자 성능은 더욱 향상되었습니다. 특히 StrategyQA와 ARC-c 같은 일부 태스크에서는 파인튜닝(fine-tuning)한 모델의 성능에 거의 근접했습니다. 이는 잘못된 증거를 사후에 교정하고 올바른 지식을 주입하는 것이 추론에 매우 중요하다는 것을 시사합니다.
결합 시너지: CoK는 자기 일관성(Self-Consistency, SC)과 같은 기존의 다른 프롬프팅 전략과도 잘 통합되었습니다. CoK + SC + F²-V 조합은 대부분의 태스크에서 최고의 성능을 달성했습니다.
5. 한계점 및 고려사항
CoK는 강력한 접근 방식이지만 만병통치약은 아닙니다. 연구팀은 다음과 같은 한계점들을 명확히 밝혔습니다.
지식 베이스의 한계: F²-검증의 ‘사실성’은 KB에 의존합니다. 만약 KB가 유한하거나 특정 질문에 필요한 지식을 포함하고 있지 않다면, 검증의 효과가 떨어질 수 있습니다. (향후 KB를 실시간 검색 엔진으로 확장할 계획이라고 합니다.)
비용 문제: ‘재고(Rethinking)’ 프로세스는 신뢰도가 낮은 답변에 대해 LLM을 여러 번 호출할 수 있습니다. 이는 일반적인 CoT보다 더 많은 API 호출, 즉 더 많은 비용과 시간을 필요로 함을 의미합니다.
결론: 신뢰할 수 있는 AI를 향한 진일보
‘생각의 사슬(CoT)’이 LLM에게 ‘어떻게 생각하는지’를 보여주었다면, ‘지식의 사슬(CoK)’은 LLM에게 ‘무엇을 기반으로 생각해야 하는지’를 가르쳐줍니다.
CoK는 모호한 텍스트 추론의 한계를 극복하기 위해, 추론 과정을 ‘구조화된 지식(ET)’과 ‘논리적 설명(EH)’으로 분해합니다. 여기서 더 나아가 ‘F²-검증’이라는 강력한 사후 검증 및 교정 메커니즘을 도입하여, 추론의 ‘사실성’과 ‘충실성’을 모두 확보합니다.
물론 KB의 한계나 비용 증가는 해결해야 할 과제입니다. 하지만 CoK 프롬프팅은 LLM의 고질적인 ‘환각’ 문제를 해결하고, 더 신뢰할 수 있으며 사실에 기반한 AI를 구축하는 데 중요한 이정표를 제시합니다.
이제 우리의 AI는 단순히 ‘단계별로 생각하는’ 것을 넘어, ‘검증된 지식을 바탕으로 생각하는’ 단계로 나아가고 있습니다.
자주 묻는 질문 (FAQ)
Q1: 지식의 사슬(CoK) 프롬프팅이란 무엇인가요?
A1: CoK(Chain-of-Knowledge)는 LLM이 복잡한 질문에 답할 때, 모호한 텍스트 추론(CoT) 대신 명시적인 ‘증거 트리플(Evidence Triples)’이라는 구조화된 지식을 먼저 생성하고, 이를 ‘설명 힌트(Explanation Hints)’로 연결하여 추론하도록 유도하는 고급 프롬프팅 기법입니다.
Q2: CoK는 CoT(생각의 사슬)와 어떻게 다른가요?
A2: CoT는 ‘단계별’ 텍스트 추론 과정을 생성하지만, 이 과정 자체가 사실이 아닐 수 있습니다(환각). 반면 CoK는 추론의 기반이 되는 핵심 ‘지식’을 (주어, 관계, 목적어) 형태의 트리플로 먼저 생성하도록 강제하여, 추론이 사실에 기반하도록 앵커링합니다.
Q3: F²-검증(F²-Verification)이란 무엇인가요?
A3: F²-검증은 CoK가 생성한 답변의 신뢰도를 평가하는 핵심 엔진입니다. ‘사실성(Factuality)’ 검증을 통해 생성된 지식이 외부 KB의 사실과 일치하는지 확인하고, ‘충실성(Faithfulness)’ 검증을 통해 이 지식들이 최종 답변과 논리적으로 일관되는지 확인합니다.
Q4: CoK가 LLM의 환각 문제를 완전히 해결할 수 있나요?
A4: 완전히 해결하지는 못하지만, 크게 완화할 수 있습니다. CoK는 F²-검증과 ‘재고(Rethinking)’ 프로세스를 통해 잘못된 사실이나 논리를 감지하고 수정합니다. 하지만 이 능력은 지식 베이스(KB)가 얼마나 포괄적인지에 의존하는 한계가 있습니다.
