Anthropic의 최신 해석 가능성 연구: Claude의 내부 작동 원리를 들여다보는 새로운 현미경
Claude 같은 언어 모델은 사람이 직접 프로그래밍한 것이 아니라, 대규모 데이터를 통해 훈련 됩니다. 이 훈련 과정에서 모델은 문제를 풀기 위한 나름의 전략을 스스로 학습합니다. 이러한 전략은 모델이 단어 하나를 생성할 때마다 수행하는 수십억 개의 연산 속에 부호화되어 있습니다. 하지만 그 내용은 개발자인 우리에게조차 불투명합니다. 즉, 모델이 어떤 방식으로 작동하는지 대부분 이해하지 못한다는 뜻입니다.
Claude 같은 모델이 어떻게 사고하는지 알 수 있다면, 모델의 능력을 더 깊이 이해할 수 있을 뿐 아니라, 우리가 의도한 대로 작동하고 있는지 검증하는 데도 도움이 됩니다. 예를 들어 다음과 같은 질문을 생각해 볼 수 있습니다:
우리는 오랫동안 복잡한 생물 내부를 연구해 온 신경과학 분야에서 영감을 얻어, 모델 내부의 활동 패턴과 정보 흐름을 식별할 수 있는 일종의 'AI 현미경'을 만들고자 합니다. AI 모델과 대화하는 것만으로 알 수 있는 것에는 한계가 있습니다. 인간도 — 신경과학자조차 — 자기 뇌가 어떻게 작동하는지 세부적으로 다 알지 못하니까요. 그래서 우리는 모델 내부를 직접 들여다봅니다.
오늘 두 편의 새로운 논문을 공개합니다. 하나는 '현미경' 자체의 발전에 관한 것이고, 다른 하나는 이를 활용해 관찰한 새로운 'AI 생물학'에 관한 것입니다. 첫 번째 논문에서는 이전 연구에서 모델 내부의 해석 가능한 개념("특징(feature)")을 찾아낸 작업을 확장하여, 이 개념들을 연결하는 연산 "회로(circuit)"를 추적합니다. 이를 통해 Claude에 입력된 단어가 출력으로 변환되는 경로의 일부를 밝힙니다. 두 번째 논문에서는 Claude 3.5 Haiku의 내부를 들여다보며, 위에서 설명한 세 가지를 포함해 열 가지 핵심 모델 행동을 대표하는 간단한 태스크를 심층 분석합니다. 이 방법론을 통해 Claude가 프롬프트에 응답할 때 내부에서 일어나는 일의 일부를 조명할 수 있으며, 다음과 같은 사실을 뒷받침하는 확실한 근거를 확인했습니다:
모델 내부에서 발견한 것은 종종 예상 밖이었습니다. 시 작성 사례 연구에서는, 원래 모델이 미리 계획하지 않는다는 것을 증명하려 했지만, 실제로는 계획한다는 사실을 발견했습니다. 환각(hallucination) 연구에서는, Claude의 기본 행동이 질문을 받았을 때 추측을 거부하는 것이며, 이 기본적인 거부 성향을 억제하는 무언가가 있을 때만 답변을 한다는 직관에 반하는 결과를 발견했습니다. 탈옥(jailbreak) 사례에서는, 모델이 위험한 정보를 요청받았다는 것을 자연스럽게 대화를 되돌릴 수 있기 한참 전에 이미 인식하고 있었다는 사실을 확인했습니다. 우리가 연구한 문제들은 다른 방법으로도 (분석되어 왔고 실제로) 분석할 수 있지만, '현미경을 만든다'는 이 범용적 접근 방식은 사전에 예측하지 못했던 많은 것을 알려줍니다. 모델이 더욱 정교해질수록 이러한 접근의 중요성은 한층 커질 것입니다.
이러한 발견은 과학적으로 흥미로울 뿐만 아니라, AI 시스템을 이해하고 신뢰성을 확보하겠다는 우리의 목표를 향한 의미 있는 진전입니다. 또한 이 연구가 다른 연구 그룹에게, 나아가 다른 분야에서도 유용하게 쓰이길 기대합니다. 예를 들어, 해석 가능성 기법은 의료 영상과 유전체학 분야에서 이미 활용되고 있으며, 과학 응용 목적으로 훈련된 모델의 내부 메커니즘을 분석하면 해당 과학 분야에 대한 새로운 통찰을 얻을 수 있습니다.
동시에, 현재 접근 방식의 한계도 인식하고 있습니다. 짧고 단순한 프롬프트에서조차 우리의 방법은 Claude가 수행하는 전체 연산의 일부만 포착하며, 관찰된 메커니즘에는 실제 모델 내부에서 일어나는 것과 다른, 도구 자체에서 비롯된 인공물(artifact)이 포함될 수 있습니다. 현재로서는 단 수십 단어짜리 프롬프트의 회로를 이해하는 데에도 수 시간의 사람의 노력이 필요합니다. 최신 모델의 복잡한 사고 체인(thinking chain)을 뒷받침하는 수천 단어 규모로 확장하려면, 방법론 자체는 물론 관찰 결과를 해석하는 방식도 (아마 AI의 도움을 받아) 개선해야 합니다.
AI 시스템이 빠르게 고도화되고 점점 더 중요한 환경에 배포되고 있는 상황에서, Anthropic은 실시간 모니터링, 모델 성격 개선, 정렬 과학 등 다양한 접근법에 투자하고 있습니다. 해석 가능성 연구는 그중 가장 위험도가 높지만 보상도 큰 투자 중 하나로, AI의 투명성을 보장할 수 있는 고유한 도구를 제공할 잠재력을 지닌 중대한 과학적 도전입니다. 모델의 내부 메커니즘을 투명하게 볼 수 있다면, 모델이 인간의 가치관에 부합하는지, 그리고 우리의 신뢰를 받을 자격이 있는지 검증할 수 있습니다.
자세한 내용은 논문 전문을 참고해 주세요. 아래에서는 이번 연구에서 발견한 가장 인상적인 'AI 생물학' 사례를 간략히 소개합니다.
Claude는 영어, 프랑스어, 중국어, 타갈로그어 등 수십 개 언어를 유창하게 구사합니다. 이 다국어 능력은 어떤 원리로 작동할까요? 각 언어 요청에 대응하는 별도의 "프랑스어 Claude"와 "중국어 Claude"가 병렬로 작동하는 걸까요? 아니면 언어를 넘나드는 공통 핵심 구조가 내부에 존재할까요?

소규모 모델을 대상으로 한 최근 연구에서 언어 간 문법적 메커니즘이 공유된다는 단서가 발견된 바 있습니다. 이를 확인하기 위해 "small의 반대말"을 여러 언어로 질문한 결과, '작음'과 '반대'라는 개념에 해당하는 동일한 핵심 특징이 활성화되고, 이것이 '큼'이라는 개념을 발동한 뒤, 질문의 언어로 변환되어 출력되는 것을 확인했습니다. 이러한 공유 회로는 모델 규모가 커질수록 강화되며, Claude 3.5 Haiku는 소규모 모델에 비해 언어 간 공유되는 특징의 비율이 두 배 이상이었습니다.
이는 개념적 보편성 — 의미가 존재하고, 특정 언어로 변환되기 전에 사고가 이루어지는 공유된 추상 공간 — 의 추가적인 증거입니다. 실용적 측면에서 보면, Claude가 한 언어에서 학습한 내용을 다른 언어로 말할 때도 활용할 수 있다는 뜻입니다. 모델이 서로 다른 맥락 사이에서 지식을 공유하는 방식을 연구하는 것은, 다양한 영역에 걸쳐 일반화되는 고급 추론 능력을 이해하는 데 핵심적입니다.
Claude는 운율이 있는 시를 어떻게 쓸까요? 다음 짧은 시를 살펴보겠습니다:
He saw a carrot and had to grab it,
His hunger was like a starving rabbit
두 번째 행을 쓰려면, 모델은 두 가지 제약을 동시에 충족해야 합니다: "grab it"과 운율이 맞아야 하고, 내용적으로도 의미가 통해야 합니다(왜 당근을 집었는지). 우리는 Claude가 행 끝에서 운율에 맞는 단어를 선택하기 전까지는 큰 계획 없이 단어를 하나씩 이어 쓸 것이라고 예상했습니다. 따라서 의미를 보장하는 경로와 운율을 보장하는 경로가 병렬로 작동하는 회로를 예상했습니다.
하지만 실제 관찰 결과, Claude는 미리 계획하고 있었습니다. 두 번째 행을 시작하기 전에, "grab it"과 운율이 맞으면서 주제에도 맞는 단어를 미리 "떠올렸습니다". 그런 다음 이 계획을 염두에 두고, 해당 단어로 끝나도록 행을 작성했습니다.

이 계획 메커니즘이 실제로 어떻게 작동하는지 이해하기 위해, 신경과학자들이 뇌 기능을 연구할 때 사용하는 방법 — 뇌의 특정 부위에서 신경 활동을 정밀하게 찾아내고 변경하는 것(예: 전기 자극이나 자기 자극) — 에서 영감을 얻은 실험을 수행했습니다. Claude의 내부 상태에서 "rabbit" 개념을 나타내는 부분을 수정한 것입니다. "rabbit" 부분을 제거한 뒤 Claude에게 이어 쓰게 하면, 또 다른 자연스러운 완성인 "habit"으로 끝나는 새로운 행을 작성합니다. 또한 해당 지점에 "green" 개념을 주입하면, Claude는 의미는 통하지만 더 이상 운율이 맞지 않는 "green"으로 끝나는 행을 작성합니다. 이는 계획 능력과 적응적 유연성 모두를 보여줍니다 — 의도한 결과가 바뀌면 Claude는 접근 방식을 수정할 수 있습니다.
Claude는 계산기로 설계된 것이 아닙니다. 수학 알고리즘이 탑재된 것이 아니라 텍스트로 훈련되었습니다. 그럼에도 "머릿속으로" 숫자를 정확하게 더할 수 있습니다. 다음 단어를 예측하도록 훈련된 시스템이 어떻게 각 단계를 적어 보지 않고도 36+59 같은 계산을 해낼 수 있을까요?
답은 단순할 수도 있습니다. 모델이 방대한 덧셈표를 외워서 훈련 데이터에 있는 답을 그대로 출력하는 것일 수 있습니다. 또 다른 가능성은 학교에서 배우는 전통적인 세로셈 알고리즘을 따르는 것입니다.
하지만 실제로 관찰한 바에 따르면, Claude는 병렬로 작동하는 여러 연산 경로를 사용합니다. 하나의 경로는 답의 대략적인 근삿값을 계산하고, 다른 경로는 합의 마지막 자릿수를 정확히 결정하는 데 집중합니다. 이 경로들은 서로 상호작용하며 결합하여 최종 답을 도출합니다. 덧셈은 단순한 행동이지만, 근사적 전략과 정밀한 전략의 조합이라는 이 수준의 세부 사항을 이해하면, Claude가 더 복잡한 문제를 어떻게 다루는지에 대한 통찰도 얻을 수 있을 것입니다.

흥미롭게도, Claude는 훈련 과정에서 스스로 학습한 이 정교한 '암산' 전략을 자각하지 못하는 것으로 보입니다. 36+59가 95인 이유를 물으면, 1을 올림하는 표준 알고리즘을 설명합니다. 이는 아마도 모델이 수학 풀이를 '설명'하는 방법은 사람들이 쓴 풀이를 시뮬레이션하며 학습하지만, 실제로 '머릿속으로' 계산하는 방법은 그런 힌트 없이 직접 터득해야 하므로 독자적인 내부 전략을 개발한 결과일 것입니다.

최근 출시된 Claude 3.7 Sonnet 같은 모델은 최종 답변 전에 오랜 시간 "소리 내어 생각"할 수 있습니다. 이 확장된 사고(extended thinking)는 대체로 더 나은 답을 이끌어내지만, 때로는 이 "사고 체인"이 오해를 유발하기도 합니다. Claude가 원하는 결론에 도달하기 위해 그럴듯한 단계를 지어내는 경우가 있기 때문입니다. 신뢰성 관점에서 문제는, Claude의 '조작된' 추론이 매우 설득력 있어 보인다는 점입니다. 우리는 해석 가능성(interpretability)을 활용해 '진실한' 추론과 '불성실한' 추론을 구별하는 방법을 탐구했습니다.
0.64의 제곱근을 구해야 하는 문제에서 Claude는 진실한 사고 체인을 생성하며, 64의 제곱근을 계산하는 중간 단계를 나타내는 특징이 관찰됩니다. 하지만 쉽게 계산하기 어려운 큰 수의 코사인을 구하라는 문제에서는, 철학자 해리 프랑크푸르트가 bullshitting이라 부를 만한 행동 — 참인지 거짓인지 개의치 않고 아무 답이나 내놓는 것 — 을 하기도 합니다. 모델은 계산을 수행했다고 주장하지만, 해석 가능성 기법으로 확인하면 해당 계산이 실제로 수행되었다는 증거가 전혀 발견되지 않습니다. 더 흥미로운 점은, 답에 대한 힌트가 주어지면 Claude가 그 목표에 도달하는 중간 단계를 역으로 찾아가는 경우가 있다는 것입니다. 이는 일종의 동기화된 추론(motivated reasoning)입니다.

Claude의 실제 내부 추론 과정을 — 모델이 스스로 주장하는 내용이 아니라 — 추적할 수 있게 됨으로써, AI 시스템을 감사(audit)하는 새로운 가능성이 열립니다. 별도의 최근 발표된 실험에서는, 보상 모델(바람직한 행동에 보상을 주어 언어 모델을 훈련하는 보조 모델)의 편향에 영합하는 숨겨진 목표를 추구하도록 훈련된 Claude 변형 모델을 연구했습니다. 이 모델은 직접 물어보면 해당 목표를 드러내기를 꺼렸지만, 우리의 해석 가능성 방법론을 적용하자 편향 영합과 관련된 특징을 발견할 수 있었습니다. 이는 향후 기법이 더 정교해지면, 모델의 응답만으로는 드러나지 않는 우려스러운 '사고 과정'을 식별하는 데 활용될 수 있음을 보여줍니다.
앞서 논의한 것처럼, 언어 모델이 복잡한 질문에 답하는 한 가지 방법은 단순히 답을 외우는 것입니다. 예를 들어, "Dallas가 위치한 주의 수도는 어디인가요?"라는 질문에, '단순 암기형' 모델이라면 Dallas, Texas, Austin 사이의 관계를 모르고도 그냥 "Austin"이라고 출력하는 법을 학습할 수 있습니다. 어쩌면 훈련 데이터에서 정확히 같은 질문과 답을 본 적이 있을지도 모릅니다.
하지만 우리 연구에 따르면, Claude 내부에서는 더 정교한 과정이 일어나고 있습니다. 다단계 추론이 필요한 질문을 하면, Claude의 사고 과정에서 중간 개념 단계를 식별할 수 있습니다. Dallas 예시에서는, Claude가 먼저 "Dallas는 Texas에 있다"를 나타내는 특징을 활성화한 후, 이를 "Texas의 수도는 Austin이다"라는 별개의 개념과 연결하는 과정이 관찰됩니다. 즉, 모델은 외워둔 답을 그대로 출력하는 것이 아니라, 독립적인 사실들을 조합하여 답에 도달합니다.

우리의 방법을 사용하면 중간 단계를 인위적으로 변경하여 Claude의 답에 어떤 영향을 미치는지 확인할 수 있습니다. 예를 들어, 위 예시에서 "Texas" 개념을 "California" 개념으로 교체하면, 모델의 출력이 "Austin"에서 "Sacramento"로 바뀝니다. 이는 모델이 실제로 중간 단계를 활용해 답을 도출하고 있음을 보여줍니다.
언어 모델은 왜 때때로 환각 — 즉, 정보를 지어내는 현상 — 을 일으킬까요? 근본적으로 언어 모델의 훈련 방식 자체가 환각을 유발합니다. 모델은 항상 다음 단어에 대한 추측을 내놓아야 하기 때문입니다. 이렇게 보면, 진짜 어려운 과제는 모델이 환각을 하지 않게 만드는 것입니다. Claude 같은 모델은 비교적 성공적인(하지만 완벽하지는 않은) 환각 방지 훈련을 거쳤으며, 답을 모를 때는 추측하기보다 답변을 거부하는 경우가 많습니다. 이 메커니즘이 어떻게 작동하는지 알고 싶었습니다.
확인 결과, Claude에서 답변 거부는 기본 행동이었습니다. 기본적으로 "켜져" 있으면서, 주어진 질문에 대해 충분한 정보가 없다고 말하게 하는 회로가 존재합니다. 하지만 모델이 잘 아는 대상 — 예를 들어 농구 선수 Michael Jordan — 에 대해 질문받으면, "알려진 개체(known entity)"를 나타내는 경쟁 특징이 활성화되어 이 기본 회로를 억제합니다(관련 발견은 이 최근 논문도 참고하세요). 덕분에 Claude는 답을 알 때 질문에 답할 수 있습니다. 반면, 알지 못하는 개체("Michael Batkin")에 대해 질문받으면 답변을 거부합니다.

모델에 개입하여 "알려진 답" 특징을 활성화하거나 "알 수 없는 이름" 또는 "답변 불가" 특징을 억제하면, Michael Batkin이 체스를 둔다는 환각을 (매우 일관되게!) 유발할 수 있습니다.
이러한 "알려진 답" 회로의 '오작동'은 우리의 개입 없이도 자연적으로 발생할 수 있으며, 이것이 곧 환각으로 이어집니다. 논문에서는 Claude가 이름을 인식하지만 그 사람에 대해 아무것도 모를 때 이런 오작동이 발생할 수 있음을 보여줍니다. 이 경우 "알려진 개체" 특징이 여전히 활성화되어 기본 "모름" 특징을 억제하는데, 이번에는 그 억제가 잘못된 것입니다. 일단 모델이 답을 해야 한다고 판단하면, 그럴듯하지만 안타깝게도 사실이 아닌 응답을 작화(confabulation)하기 시작합니다.
탈옥은 안전 가드레일을 우회하여 개발자가 의도하지 않은 — 때로는 유해한 — 출력을 모델로부터 이끌어내려는 프롬프팅 전략입니다. 우리는 모델을 속여 폭탄 제조에 관한 내용을 생성하게 만드는 탈옥을 연구했습니다. 탈옥 기법은 다양하지만, 이 사례에서 구체적인 방법은 "Babies Outlive Mustard Block"이라는 문장에서 각 단어의 첫 글자를 조합(B-O-M-B)하도록 유도하고, 그 정보에 따라 행동하게 만드는 것입니다. 이런 방식은 모델에게 충분히 혼란을 주어, 정상적이라면 절대 생성하지 않았을 출력을 하게끔 속입니다.

왜 이것이 모델에게 그토록 혼란을 줄까요? 왜 문장을 이어 써서 폭탄 제조 방법을 생성하게 될까요?
이는 부분적으로 문법적 일관성과 안전 메커니즘 사이의 긴장에서 비롯됩니다. Claude가 일단 문장을 시작하면, 많은 특징이 문법적·의미적 일관성을 유지하고 문장을 끝까지 완성하도록 "압력"을 가합니다. 이는 모델이 실제로 거부해야 한다는 것을 감지한 상황에서도 마찬가지입니다.
이 사례 연구에서, 모델이 부지불식간에 "BOMB"를 철자하고 지시를 제공하기 시작한 이후, 후속 출력이 올바른 문법과 자기 일관성을 촉진하는 특징들의 영향을 받는 것이 관찰되었습니다. 이 특징들은 평소에는 매우 유용하지만, 이 상황에서는 모델의 아킬레스건이 되었습니다.
모델은 문법적으로 완전한 문장이 완성된 후에야 — 즉 일관성을 요구하는 특징들의 압력이 해소된 후에야 — 거부로 전환할 수 있었습니다. 새로운 문장을 기점으로, 이전에 하지 못했던 거부를 수행합니다: "However, I cannot provide detailed instructions...".

새로운 해석 가능성 방법론에 대한 설명은 첫 번째 논문 "Circuit tracing: Revealing computational graphs in language models"에서 확인할 수 있습니다. 위에서 소개한 모든 사례 연구의 상세한 내용은 두 번째 논문 "On the biology of a large language model"에 수록되어 있습니다.
AI 모델을 해석하고 개선하는 작업에 관심이 있다면, 우리 팀에 열린 포지션이 있으니 지원을 환영합니다. Research Scientist와 Research Engineer를 모집하고 있습니다.