프롬프팅

트리 오브 쏘트

Tree of Thought

LLM이 여러 갈래의 생각을 펼친 뒤 갈래마다 평가해 유망한 쪽만 파고들고, 막히면 되돌아가는 문제 풀이 방식이다. 한 줄로만 생각하는 Chain-of-Thought와 달리, 퍼즐이나 계획 세우기, 설계안 고르기처럼 여러 길을 시도해 봐야 하는 문제에 쓴다.

방식생각하는 모양어울리는 문제
Chain-of-Thought한 줄로 순서대로단계가 정해진 계산·설명
Self-Consistency여러 줄을 끝까지 풀고 다수결로 정함정답이 하나인 문제
Tree of Thought갈래마다 중간 평가, 막히면 되돌아가기여러 길을 시도해 봐야 하는 문제

체스를 두는 사람이 몇 수 앞을 따져 보듯, 가다가 막다른 길이 나오면 되돌아가 다른 갈래를 시도한다.

펼치고, 평가하고, 고른다

ToT는 2023년 프린스턴대와 구글 딥마인드 연구진이 논문으로 제안했다. 문제를 작은 단계로 나누고, 단계마다 아래 과정을 반복한다.

단계하는 일
쪼개기문제를 한 번에 한 단계씩 풀 수 있는 크기로 나눈다
펼치기지금 단계에서 가능한 다음 생각을 여러 개 만든다
평가하기각 생각이 가망 있는지, 애매한지, 불가능한지 LLM이 스스로 판정한다
탐색하기유망한 갈래만 남기고, 막히면 앞 단계로 되돌아간다

평가도 LLM에게 다시 물어서 하므로 따로 채점 모델이 없어도 된다.

간단히는 프롬프트로, 제대로는 코드로

채팅에서 간단히 쓰려면 프롬프트에 탐색 순서를 적어 주면 된다. 예를 들면 "서로 다른 접근법 3가지를 먼저 적어라. 각각 장단점과 성공 가능성을 평가한 다음, 가장 나은 하나를 골라 끝까지 풀어라. 중간에 막히면 다른 접근법으로 돌아가라"라고 쓴다. "전문가 세 명이 한 단계씩 생각을 말하고, 틀렸다고 깨달은 사람은 빠진다"처럼 역할극으로 흉내 내는 방법도 자주 쓴다.

제대로 쓰려면 코드에서 LLM을 여러 번 호출한다. 후보를 만드는 호출과 점수를 매기는 호출을 번갈아 하면서, 점수가 높은 몇 개만 다음 단계로 넘기는 반복문을 짠다. 답변 한 번 안에서 흉내 낼 때보다 되돌아가기가 확실하게 일어나지만, 그만큼 호출이 늘어난다.

비용이 크니 탐색이 필요할 때만

갈래마다 생성과 평가 호출이 따라붙기 때문에 토큰과 시간이 CoT보다 훨씬 많이 든다. 첫 시도가 자주 틀리고 중간 단계가 맞는지 확인할 수 있는 문제에만 쓰는 것이 좋다.

상황ToT 사용
숫자 퍼즐, 일정·경로 계획쓴다
여러 설계안 중 하나 고르기쓴다 (프롬프트로 충분)
요약, 번역, 단순한 질의응답쓰지 않는다

답하기 전에 스스로 오래 생각하는 추론 모델은 이미 안에서 여러 방향을 검토하는 경우가 많다. 그래서 따로 ToT 프롬프트를 넣어도 효과가 작을 수 있다. 내 문제로 CoT와 결과·비용을 비교해 보고 정하는 것이 안전하다.

고민은 프롬프트로, 퍼즐·계획은 반복문으로

가장 흔한 건 채팅에서 프롬프트 한 줄로 흉내 내는 방식이다. 반복문으로 짜는 본격적인 ToT는 갈래를 하나씩 확인할 수 있는 퍼즐이나 계획 문제에 주로 쓴다.

어디서어떻게 쓰나
채팅 속 설계·의사결정접근법 몇 가지를 적게 하고 장단점을 평가시킨 뒤, 가장 나은 하나만 끝까지 풀게 한다
퍼즐·일정·경로 계획 코드후보 생성과 채점 호출을 번갈아 돌리고, 점수 높은 갈래만 다음 단계로 넘긴다
버그 원인 찾기원인 가설을 여러 개 세운 뒤 확인하기 쉬운 것부터 검증하고, 틀리면 다음 가설로 돌아간다
#추론#탐색#복잡문제
참고 자료
← AI Wiki에서 더 보기
updated at 2026-10-20