CoT 프롬프팅에 대한 정리
✔ CoT 프롬프팅(Chain of Thought Prompting)은 AI가 문제 해결 시 단계별 논리적 사고 과정을 거쳐 답을 도출하도록 유도하는 기법입니다.
✔ 기존 AI는 즉각적인 답변을 제공하지만, CoT 프롬프팅은 사고 과정까지 설명하여 신뢰성을 높이고 복잡한 문제 해결 능력을 향상시킵니다.
✔ Few-shot Prompting과 결합하면 AI가 논리적 패턴을 빠르게 학습하여 더욱 정밀하고 신뢰할 수 있는 답변을 생성할 수 있습니다.
CoT 프롬프팅(Chain of Thought Prompting)은 인공지능(AI) 모델이 문제 해결 과정에서 논리적인 사고 단계를 거쳐 최종 답을 도출하도록 유도하는 프롬프팅 기법입니다. 기존의 단순한 질문-답변 방식과 달리, CoT 프롬프팅은 AI가 중간 사고 과정을 명확히 표현하도록 함으로써 결과의 신뢰성과 정확도를 향상시킵니다.
이 기법은 수학 문제 해결, 논리적 추론, 프로그래밍 코드 작성, 의료 진단 지원 등의 영역에서 특히 효과적이며, 인간의 사고 방식과 유사한 방식으로 문제 해결 능력을 강화하는 데 기여합니다.
최근에는 모델의 성능이 너무 좋아져서 단순한 질문만으로도 원하는 대답을 만들지만, 과거 모델의 성능이 좋지 않았을때는 CoT 프롬프팅으로 질문을 하면 어려운 문제도 잘 해결해주었습니다. 또한 모델의 성능이 아무리 좋아도 응답받기 어려운 문제에 대해서는 아직도 CoT 프롬프트가 매우 효과적입니다.
AI 모델은 기본적으로 방대한 데이터에서 학습한 패턴을 바탕으로 답변을 생성합니다. 하지만 복잡한 논리적 추론이나 단계적 문제 해결이 필요한 경우, 기존의 프롬프팅 방식으로는 한계가 있습니다.
CoT 프롬프팅은 다음과 같은 이유로 필요합니다.
추론 오류 감소: AI가 논리적인 사고 단계를 거치면서 오류를 스스로 발견하고 수정할 가능성이 높아짐
복잡한 문제 해결 능력 향상: 수학, 논리 퍼즐, 프로그래밍 오류 분석 등과 같은 작업에서 뛰어난 성능 발휘
사용자 신뢰도 증가: AI가 답변을 단순히 제공하는 것이 아니라, 그 과정까지 설명하면 사용자가 더욱 신뢰할 수 있음
CoT 프롬프팅은 AI가 단순히 정답을 출력하는 것이 아니라, 인간처럼 단계별 사고 과정을 통해 결론을 도출하도록 만듭니다.
� 예제 질문
"어떤 사람이 8개의 사과를 가지고 있었고, 친구가 5개를 더 주었다. 총 몇 개인가?"
✅ 일반 AI 응답:
"13개입니다."
✅ CoT 프롬프팅 응답:
처음에 8개의 사과가 있다.
친구가 5개의 사과를 추가로 준다.
따라서 8 + 5 = 13개가 된다.
이 방식은 간단해 보이지만, 복잡한 문제에서는 훨씬 더 강력한 효과를 발휘합니다.
특히 모델 제공 업체의 경우 이런 과정의 답변 데이터를 모아서 학습한 모델을 론모델(LLM Reasoning) 모델로 서비스하였으며, CoT 프롬프트의 성능을 알아본 LLM 개발자들은 LLM Agent를 만드는데 큰 도움이 되었다.
CoT 프롬프팅을 적용하면 AI는 다음과 같은 방식으로 사고합니다.
문제 분석: 질문의 핵심 요소를 식별하고 필요한 정보를 추출
논리적 전개: 해결 과정을 단계별로 나누고 연결
최종 결론 도출: 논리적 과정을 기반으로 정답을 생성
이러한 접근 방식은 인간이 사고하는 방식과 유사하여 AI가 더욱 신뢰할 수 있는 결과를 제공할 수 있도록 합니다.
CoT 프롬프팅을 적용하면 AI가 문제 해결 과정을 상세히 설명하며 오류를 줄일 수 있습니다.
� 예제 질문
"학생 15명이 3개의 그룹으로 나눠져야 합니다. 한 그룹당 몇 명씩 배정될까요?"
✅ CoT 프롬프팅 응답:
총 15명의 학생이 있습니다.
이 학생들을 3개의 그룹으로 나눠야 합니다.
따라서, 15 ÷ 3 = 5명씩 배정될 수 있습니다.
CoT 프롬프팅을 사용하면 AI가 코드의 논리적 흐름을 이해하고 오류를 분석하는 데 유용합니다.
� 예제 질문
"다음 Python 코드에서 오류를 찾아 수정하세요."
✅ CoT 프롬프팅 응답:
주어진 코드의 각 줄을 분석
오류의 원인을 파악하고 설명
수정된 코드와 이유를 제공
Few-shot Prompting은 AI가 몇 개의 예제만으로도 특정 패턴을 학습하도록 돕는 기법입니다.
Few-shot Prompting의 주요 유형:
Zero-shot Prompting: 예제 없이 AI가 문제 해결
One-shot Prompting: 단일 예제 제공 후 해결
Few-shot Prompting: 여러 개의 예제를 제공하여 AI가 학습하도록 유도
Few-shot Prompting과 CoT 프롬프팅을 함께 사용하면 AI가 논리적 사고 패턴을 더욱 빠르게 학습할 수 있습니다.
� Few-shot CoT 프롬프팅 예제
"5개의 사과가 있고, 친구가 7개를 더 주었습니다.
이때 사과가 몇개있는지 알기 위해서는 5+7 =12 과정을 거쳐 사과가 총 12개가 있는것을 알 수 있습니다 (Few-shot)
딸기가 4개 현재 있습니다. 어떤사람이 딸기가 10개가 들어있는 박스 11박스를 사서, 내가 포함되어있는 교실에 나눠주었습니다. 우리교실은 총 11명이 있습니다. 나는 딸기가 총 몇 개인가요?"
✅ Few-shot CoT 프롬프팅 응답:
처음에 4개의 딸기가 있다.
딸기 11박스의 들어있는 딸기는 10 * 11 = 110개 입니다
교실에서 나눠받은 딸기의 수는 111 / 11 = 10개 입니다.
나는 4 + 10 = 14개의 딸기를 가지고 있습니다.
이러한 CoT 프롬프팅 + Few-shot Prompting을 활용하면 AI가 논리적 사고 과정을 더욱 빠르고 효과적으로 응답할 수 있습니다.
또한 이러한 응답으로 도출되는 LLM은 복잡한 수학문제를 푸는데 좀더 효과적이며, 사람들의 신뢰를 얻을 수 있는 설명가능한 AI, (XAI, eXplainable AI), 추론 AI(Reasoning AI), Agentic AI 등에 영향을 끼쳤다고 볼 수 있습니다.