LLM 생각의 흐름을 프로그래밍하는 세 가지 방법: CoT, ToT, GoT 완벽 가이드
“지난 분기 보고서 내용을 요약해서, 신사업 발표용 트윗 초안 10개 만들어줘.”
우리가 AI에게 이런 요청을 할 때, AI가 뚝딱하고 완벽한 결과물을 가져다주길 기대합니다. 하지만 현실에서는 조금만 복잡한 지시를 내리면 AI가 길을 잃고 헤매는 경우를 흔히 봅니다. 왜 그럴까요?
이는 마치 유능하지만 아직 업무 프로세스를 모르는 신입사원에게 “잘 해봐!”라며 최종 목표만 툭 던져주는 것과 같습니다. 당연히 신입사원은 우왕좌왕할 수밖에 없죠. 초기 프롬프트 엔지니어링은 바로 이 ‘업무 지시’, 즉 생각의 절차를 명확히 알려주는 데 집중했습니다.
하지만 단순히 지시를 순서대로 나열하는 프롬프트 체이닝(Prompt Chaining)만으로는 한계가 뚜렷한 문제들이 있습니다. 여러 가능성을 동시에 탐색하고, 잘못된 길로 들어섰을 때 되돌아 나와 다른 길을 찾아보고, 여러 아이디어를 합쳐 더 나은 결론을 만들어야 하는 복잡한 문제들 말입니다.
이 글에서는 LLM을 단순한 ‘명령 실행기’에서 스스로 ‘생각하는 문제 해결사’로 진화시킨 세 가지 혁신적인 프롬프트 아키텍처, CoT, ToT, GoT의 핵심을 파헤쳐 보겠습니다. 각각의 원리가 무엇인지, 장단점은 어떤지, 그리고 가장 중요한 ‘언제, 어떤 기술을 써야 하는지’에 대한 실용적인 가이드까지 명쾌하게 정리해 드리겠습니다.
모든 것의 시작: 생각의 사슬 (Chain-of-Thought, CoT)
복잡한 추론 문제의 포문을 연 기술은 단연 CoT입니다. 기존 방식이 AI에게 <질문, 정답>만 보여주고 답을 요구했다면, CoT는 그사이에 ‘풀이 과정’을 추가했습니다. 프롬프트에 “단계별로 생각해보자(Let’s think step by step)”라는 마법 같은 문장 하나만 넣어도 AI의 추론 능력이 극적으로 향상된다는 사실이 밝혀졌죠.
CoT의 원리는 ‘생각의 발판(Scaffolding)’을 놓아주는 것과 같습니다. 어려운 문제를 한 번에 풀라고 다그치는 대신, 생각의 단계를 차례대로 뱉어내게 함으로써 스스로 생각할 시간과 공간을 벌어주는 겁니다. 모델이 생성한 중간 생각은 다음 생각을 위한 ‘메모장’ 역할을 하며 인지적 부담을 덜어줍니다.
CoT 사례:
질문: “카페에 테이블이 5개 있고 각 테이블마다 의자가 4개씩 있습니다. 손님 3명이 의자를 사용 중이라면, 비어있는 의자는 총 몇 개인가요?”
CoT 추론: “먼저 전체 의자 수를 계산해야 합니다. 테이블 5개 × 의자 4개 = 총 20개의 의자가 있습니다. 여기서 사용 중인 의자 3개를 빼면, 20 – 3 = 17개입니다. 따라서 남은 의자는 17개입니다.”
하지만 CoT는 외길만 달리는 기차와 같았습니다. 즉, 선형성(linearity)이라는 치명적인 약점이 있었죠. 추론 과정이 단 하나의 길로만 이어지기 때문에, 첫 단추를 잘못 꿰면 최종 목적지까지 계속 잘못된 길로 달려갈 수밖에 없습니다. 중간에 실수를 바로잡거나 다른 가능성을 탐색할 방법이 원천적으로 차단된 셈입니다.
여러 갈래 길을 탐색하다: 생각의 트리 (Tree-of-Thoughts, ToT)
CoT의 외길 문제를 해결하기 위해 등장한 것이 바로 ToT입니다. ToT는 문제 해결 과정을 하나의 경로가 아닌, 여러 갈래로 뻗어 나가는 ‘의사결정 나무(Tree)’ 구조로 바라봅니다.
ToT의 핵심은 LLM에게 ‘탐색’과 ‘평가’라는 두 가지 역할을 부여하는 것입니다.
- 아이디어 생성 (Generator): 여러 갈래의 가능한 다음 생각(자식 노드)을 생성합니다.
- 가능성 평가 (Evaluator): 생성된 생각들이 최종 목표에 도달할 가능성이 얼마나 높은지 스스로 점수를 매깁니다.
- 최적 경로 탐색 (Searcher): 가장 유망해 보이는 경로를 따라 탐색을 이어갑니다.
이는 마치 유능한 탐정이 여러 용의자를 동시에 수사선상에 올려놓고, 각 용의자의 알리바이를 검증하며 가장 가능성 높은 인물에게 수사력을 집중하는 방식과 같습니다.
CoT: 4개의 숫자(1, 2, 3, 4)로 24를 만드는 문제에서, (4 × 3) + (2 × 1) = 14 라는 잘못된 길로 들어서면 더는 나아가지 못하고 막혀버립니다.
ToT:
- 생성: (4×3), (4+3), (3-1) 등 여러 초기 계산 후보를 만듭니다.
- 평가: 각 후보가 24에 가까워질 가능성을 평가합니다. (4×3=12)가 유망해 보입니다.
- 탐색: ’12’라는 중간 결과를 바탕으로 남은 숫자(1, 2)를 조합해 다음 단계를 탐색합니다. (12 × 2 × 1 = 24). 정답을 찾았습니다!
이 덕분에 ToT는 ‘Game of 24’ 문제에서 CoT의 성공률 4%를 74%까지 끌어올리는 압도적인 성능을 보여줬습니다. 하지만 ToT 역시 한계는 있었습니다. 나무의 가지가 한번 뻗어 나가면 서로 다시 합쳐지지 않는 것처럼, 서로 다른 추론 경로에서 나온 좋은 아이디어들을 하나로 합치는(merge) 것이 불가능했습니다.
아이디어를 합치고 다듬다: 생각의 그래프 (Graph-of-Thoughts, GoT)
인간의 생각은 직선이나 나무보다는 복잡하게 얽힌 ‘네트워크’에 가깝습니다. 여러 아이디어를 합쳐 새로운 결론을 내기도 하고, 하나의 아이디어를 계속 되돌아보며 발전시키기도 하죠. GoT는 이러한 인간의 사고 과정을 가장 가깝게 모방한, 현존하는 가장 유연하고 강력한 추론 아키텍처입니다.
GoT의 핵심은 ‘종합(Aggregation)’과 ‘정제(Refinement)’라는 두 가지 혁신적인 기능입니다.
- 종합 (Aggregation): 서로 다른 추론 경로에서 나온 결과물을 하나로 합쳐 시너지를 내는 능력입니다. 예를 들어, 보고서의 ‘시장 분석’ 파트와 ‘기술 동향’ 파트를 각각 다른 경로로 작성한 뒤, 두 결과를 종합하여 ‘최종 결론’을 도출하는 것과 같습니다. 이는 ToT에서는 불가능했던 기능이죠.
- 정제 (Refinement): 특정 생각에 대해 피드백 루프를 돌며 스스로 반복 개선하는 능력입니다. AI가 초안을 작성하고, 스스로 문제점을 찾아 수정하고, 다시 검토하는 인간의 글쓰기 과정과 똑 닮았습니다.
이러한 유연성 덕분에 GoT는 여러 항목을 정렬하는 작업에서 ToT보다 62%나 높은 품질의 결과를 보이면서도, 불필요한 탐색을 줄여 비용은 31% 이상 절감하는 놀라운 효율성을 보여주었습니다. 사실 CoT는 하나의 경로만 가진 그래프, ToT는 순환이 없는 트리 형태의 그래프로 볼 수 있으므로, GoT는 이 둘을 모두 포함하는 가장 일반적이고 강력한 모델인 셈입니다.
그래서, 무엇을 선택해야 할까요? (성능 vs. 비용)
CoT에서 GoT로의 발전은 문제 해결 능력을 비약적으로 향상시켰지만, 세상에 공짜 점심은 없습니다. 더 높은 성능은 필연적으로 더 많은 계산 비용(LLM 호출 횟수, 토큰 사용량)을 요구합니다.
기법 | 추론 구조 | 핵심 역량 | 비용 | 이상적인 사용 사례 |
---|---|---|---|---|
CoT | 선형 경로 | 단계별 절차 수행 | 낮음 | 정답 경로가 명확한 산술, 논리 추론 문제 |
ToT | 계층적 트리 | 계획, 탐색, 전략 수립 | 높음 | 여러 대안을 비교 평가해야 하는 문제 (e.g., 글쓰기) |
GoT | 임의 네트워크 | 종합, 정제, 최적화 | 매우 높음 | 여러 정보를 융합하거나 점진적 개선이 필요한 문제 |
결국 “가장 좋은” 아키텍처는 없습니다. 내가 해결하려는 문제의 본질이 무엇인지, 어느 정도의 성능이 필요한지, 그리고 내가 감당할 수 있는 예산은 얼마인지를 고려하여 최적의 균형점을 찾는 전략적 결정이 필요합니다.
미래를 향하여: 단순 프롬프트를 넘어 지능형 에이전트로
CoT, ToT, GoT는 단순히 LLM의 성능을 높이는 기술을 넘어, 자율적으로 사고하고 행동하는 LLM 에이전트의 ‘두뇌 회로’를 설계하는 핵심 아이디어입니다.
미래의 AI 에이전트는 문제의 난이도에 따라 비용 효율적인 CoT로 간단한 업무를 처리하고, 복잡하고 중요한 문제에 직면했을 때만 강력한 GoT 탐색을 활성화하는 동적 하이브리드 시스템으로 발전할 것입니다.
LLM의 잠재력을 최대한 끌어내기 위한 여정은 이제 막 시작되었습니다. 생각의 흐름을 프로그래밍하는 이 놀라운 기술들이 앞으로 우리의 일과 삶을 어떻게 바꿀지 지켜보는 것은 매우 흥미로운 일이 될 겁니다.
다음 포스팅 예고: AI의 추론 원리를 이론적으로 이해했다면, 이제 실전 무기를 손에 쥘 차례입니다. 다음 시간에는 학계의 연구 결과를 집대성하여 만든 궁극의 프롬프트 설계 템플릿, ‘프롬프트 캔버스’를 활용해 누구나 전문가급 프롬프트를 작성하는 비법을 알려드립니다.
다음 글 읽어보기 →