第5講

단계적 사고(Chain-of-Thought)

3 閲覧 1

CoT·ToT·Self-consistency 등 모델의 추론 능력을 극대화하는 고급 기법들을 원리부터 실전 적용까지 완전히 정복한다.

Chain-of-Thought란?

Chain-of-Thought(CoT, 생각의 연쇄)는 모델이 최종 답변 전에 중간 추론 단계를 명시적으로 거치도록 유도하는 기법입니다. Wei et al.(2022)의 Google Brain 논문에서 처음 체계화되었으며, 복잡한 추론 문제에서 정확도를 극적으로 높입니다.

CoT가 필요한 이유

# CoT 없이 (오답 발생)
Q: "철수는 사과 5개를 갖고 있었는데 영희에게 2개를 주고,
    마트에서 3개를 더 샀습니다. 지금 사과는 몇 개?"
A: "6개" (틀림)

# CoT 적용 (정답)
Q: 위와 동일 + "단계별로 생각해줘"
A: "1단계: 철수 초기 → 5개
    2단계: 영희에게 2개 줌 → 5-2=3개
    3단계: 마트에서 3개 구입 → 3+3=6개
    따라서 6개" (맞음)

숫자 예시가 단순하지만, 법률 계약 해석, 코드 디버깅, 의학적 진단 추론 등 복잡한 영역에서도 동일한 원리가 적용됩니다.

CoT 활성화 방법

방법 1: 마법의 문구

"단계별로 생각해줘"         (가장 범용적)
"Think step by step"       (영어 프롬프트용)
"추론 과정을 보여줘"
"결론 전에 근거를 먼저 설명해줘"

방법 2: CoT Few-shot (가장 강력)

Q: 어떤 제품의 원가가 1,000원이고 이익률이 30%라면 판매가는?
A: 이익 = 원가 × 이익률 = 1,000 × 0.3 = 300원
   판매가 = 원가 + 이익 = 1,000 + 300 = 1,300원
   따라서 판매가는 1,300원입니다.

Q: 매출이 5억원이고 영업이익률이 15%라면 영업이익은?
A: [모델이 위 패턴을 따라 단계적 추론]

방법 3: 역방향 CoT (결론 먼저, 근거 나중)

"결론을 먼저 제시하고, 그 결론을 지지하는 근거를 3단계로 설명해줘"

고급 기법: Tree of Thoughts (ToT)

CoT가 하나의 선형 추론 경로라면, ToT는 여러 추론 가지를 탐색하고 가장 유망한 경로를 선택합니다. 창의적 문제 해결이나 다수의 해결책이 있는 문제에 적합합니다.

"이 비즈니스 문제를 해결하는 3가지 다른 접근법을 각각 단계적으로 탐색해줘.
 각 접근법의 장단점을 평가하고, 최종적으로 가장 적합한 접근법을 추천해줘.

 문제: [문제 내용]

 접근법 A: ...
 접근법 B: ...
 접근법 C: ...
 최종 추천: ..."

고급 기법: Self-Consistency

동일한 프롬프트를 여러 번 실행하고 가장 많이 나온 답을 최종 답으로 선택하는 앙상블 기법입니다. 중요한 의사결정에 활용하면 신뢰도를 높입니다.

# API로 3회 실행 후 다수결
import openai

results = []
for i in range(3):
    response = client.chat.completions.create(
        model="gpt-4o",
        messages=[{"role": "user", "content": prompt}],
        temperature=0.7  # 약간의 다양성 허용
    )
    results.append(response.choices[0].message.content)

# 결과 비교 후 합의점 추출

고급 기법: Least-to-Most Prompting

복잡한 문제를 작은 하위 문제로 분해하여 순서대로 해결하는 기법입니다.

# 1단계: 분해 프롬프트
"다음 문제를 해결하기 위한 하위 단계를 나열해줘:
 [복잡한 문제]"

# 2단계: 각 단계 해결
"이전 답변을 참고해서, 1단계 [하위 문제]를 해결해줘"
"이전 결과를 바탕으로, 2단계 [하위 문제]를 해결해줘"
... (단계별 진행)

실전 CoT 적용: 비즈니스 분석

CoT가 효과적인 작업 vs 불필요한 작업

CoT 효과적CoT 불필요
수학 문제, 논리 추론단순 번역, 요약
복잡한 의사결정 분석단순 분류 작업
코드 디버깅, 아키텍처 설계창의적 글쓰기 (흐름 끊김)
법률/계약서 해석감성적 공감 응답
CoT는 모델에게 "정답을 말해"가 아니라 "어떻게 생각했는지 보여줘"라고 요청하는 것입니다. 추론 과정이 드러나면 오류도 잡을 수 있고, 더 정확한 결과를 얻을 수 있습니다. 복잡한 문제라면 항상 CoT를 기본으로 사용하세요.

관련 검색어  ·  Chain-of-Thought 프롬프팅, CoT 기법, Tree of Thoughts, 단계별 사고 AI, 추론 프롬프트, Self-consistency 프롬프트

채용정보
공지사항
인사이트
MY