Skip to main content
PromptQuorumPromptQuorum
Home/Prompt Engineering/자기 일관성 프롬프팅: 여러 답변을 생성하고 올바른 답을 선택하십시오
Techniques

자기 일관성 프롬프팅: 여러 답변을 생성하고 올바른 답을 선택하십시오

·12분 읽기·By Hans Kuepper · Founder of PromptQuorum, multi-model AI dispatch tool · PromptQuorum

자기 일관성 프롬프팅은 동일한 질문에 대해 5~20개의 독립적인 추론 경로를 생성한 후 가장 자주 등장하는 답변을 선택합니다. 단일 AI 답변을 신뢰하는 대신(틀릴 수 있으므로), 더 높은 temperature에서 동일한 질문을 여러 번 제시하고 다수결로 결론을 도출합니다. 이 간단한 기법은 수학, 논리, 다단계 분석의 정확도를 15~25 퍼센트포인트 향상시킵니다.

자기 일관성 프롬프팅: 동일한 질문을 temperature 0.7~1.0으로 설정하여 5~20회 모델에 제시함으로써 다양한 추론 경로를 생성한 후, 다수결 답변을 선택합니다. 이 기법은 원본 논문에서 수학 정확도를 단일 chain-of-thought의 56%에서 자기 일관성(40샘플) 74%로 향상시켰습니다. 모든 모델에서 작동합니다. 트레이드오프: 작업당 5~20배 더 많은 토큰이 소비됩니다.

자기 일관성 프롬프팅: 여러 답변을 생성하고 올바른 답을 선택하십시오

Quick Facts

  • ·기법: 동일한 질문에 대해 5~20개의 독립적인 추론 경로를 생성한 후 다수결 투표로 가장 빈번한 답변을 선택합니다.
  • ·논문: Wang et al. (2023), "Self-Consistency Improves Chain of Thought Reasoning in Language Models," ICLR 2023.
  • ·주요 결과: GSM8K 수학 정확도가 단일 chain-of-thought의 56%에서 자기 일관성(40샘플)의 74%로 향상되었습니다—32%의 상대적 개선.
  • ·Temperature 요건: 0.7~1.0으로 설정해야 합니다(temperature=0은 동일한 출력을 생성하여 목적을 상실합니다).
  • ·샘플 수: 5~10샘플이 최적 지점이며, 20샘플 이후에는 수익 감소가 발생합니다.
  • ·비용: 작업당 5~20배 더 많은 토큰 소비; 정확도가 비용보다 중요한 고위험 추론 과제에서만 정당화됩니다.

자기 일관성 프롬프팅이란 무엇인가

자기 일관성 프롬프팅은 동일한 프롬프트에 대해 여러 독립적인 답변을 샘플링하고 가장 일관된 결론을 선택하는 것을 의미합니다. 하나의 chain-of-thought 대신 잠재적으로 다른 여러 chain을 얻습니다.

아이디어는 간단합니다: 모델이 여러 다른 방식으로 추론하고 대부분의 경로가 동일한 답으로 수렴한다면, 그 답은 단일 실행보다 더 신뢰할 수 있습니다. 경로들이 일치하지 않으면, 문제가 모호하거나 어려워 더 면밀한 검토가 필요하다는 것을 알 수 있습니다.

자기 일관성은 Wang et al.이 2023년 ICLR에서 도입하였으며 수학, 논리, 추론 과제에서 극적인 정확도 향상을 보여주었습니다. 이 기법은 통계학의 근본 원리를 활용합니다: 많은 독립적 추정의 합의는 단일 추정보다 더 신뢰할 수 있습니다.

자기 일관성 프롬프팅이 중요한 이유

자기 일관성 프롬프팅이 중요한 이유는 언어 모델이 어려운 추론 과제에서 불안정할 수 있기 때문입니다—샘플링의 작은 변화가 답변을 바꿀 수 있습니다. 하나 대신 여러 시도를 살펴봄으로써 단일 환각이나 실수의 영향을 줄입니다.

  • 수학 및 논리 퍼즐.
  • 다단계 분석 질문.
  • 추론의 작은 실수가 결과를 바꾸는 미묘한 트레이드오프가 있는 결정.
  • 단일 패스 정확도가 90% 미만인 모든 도메인 특정 추론.

🔍 전문가 팁

10개의 출력을 수동으로 비교할 필요가 없습니다. 최종 집계 단계를 추가하십시오: 모든 N개의 답변을 새 프롬프트에 붙여넣고 "다음은 동일한 질문에 대한 10개의 답변입니다. 가장 자주 나타나는 답변은 무엇입니까? 합의 답변과 신뢰도 수준을 말씀해 주십시오."라고 묻습니다. 모델이 투표를 대신 해줍니다.

수치가 보여주는 것

원본 Wang et al. (2023) 논문은 산술 추론(GSM8K 벤치마크)에서 자기 일관성을 시연하였으며, 이는 언어 모델 수학 능력의 표준 테스트입니다. 결과는 명확한 패턴을 보여줍니다:

패턴: 추가 샘플마다 정확도가 향상되지만 수익 감소가 발생합니다. 1개에서 5개 샘플로 가는 것이 가장 큰 향상(+10 퍼센트포인트)을 가져옵니다. 20개에서 40개로 가면 단 2 퍼센트포인트만 추가됩니다. 대부분의 실용적 목적을 위해 5~10개 샘플이 정확도와 비용 사이의 최적 지점입니다. 20개 샘플 이상에서는 최소한의 정확도 향상을 위해 기하급수적으로 더 많은 토큰을 소비하게 됩니다.

방법GSM8K 정확도샘플 수비용 배수
표준 프롬프팅 (chain-of-thought 없음)18%1
Chain-of-thought (단일 패스)56%11.5×
자기 일관성 (5샘플)66%57.5×
자기 일관성 (10샘플)70%1015×
자기 일관성 (20샘플)72%2030×
자기 일관성 (40샘플)74%4060×

🔍 알고 계셨습니까

자기 일관성은 동일한 질문을 여러 번 묻고 다수결 답변을 선택하는 것만으로 GSM8K 수학 정확도를 56%에서 74%로—32%의 상대적 개선—향상시켰습니다. 모델 변경 없음, 파인튜닝 없음, 새로운 데이터 없음. 단순히 샘플링과 투표만 있을 뿐입니다.

자기 일관성 프롬프팅의 실제 작동 방식

실제로 자기 일관성 프롬프팅은 두 단계 패턴을 따릅니다: 다양한 답변을 생성한 후 집계합니다. 과제 프롬프트는 동일하게 유지하되 모델이 다른 추론 경로를 탐색할 수 있도록 무작위성을 허용합니다.

일반적인 흐름:

  1. 1
    추론 스타일 프롬프트(종종 chain-of-thought 지침 포함)를 사용하고 temperature를 0.7~1.0으로 설정하여 모델이 다양한 설명을 생성하도록 합니다. Temperature는 무작위성을 제어합니다: 0 = 결정론적(매번 동일한 답변), 1.0 = 최대 다양성.
  2. 2
    동일한 프롬프트를 여러 번(예: 5~20회) 실행하고 모든 최종 답변을 수집합니다. 각 실행은 독립적이어야 합니다—다른 temperature 샘플이어야 하며, 캐시된 결과가 아닙니다.
  3. 3
    집계: 가장 자주 나타나는 답변을 계산하거나 유사한 답변을 클러스터링합니다. 다수결 답변을 최종 결과로 사용합니다.
  4. 4
    선택적으로, 모델에게 불일치를 조정하도록 요청할 수 있습니다: "다음은 동일한 질문에 대한 10개의 답변입니다. 가장 자주 나타나는 것은 무엇입니까? 불일치의 이유가 있습니까?" 이렇게 하면 신뢰도 메타데이터가 추가됩니다.

자기 일관성 대 다중 모델 합의

자기 일관성은 동일한 모델을 여러 번 샘플링합니다. 다중 모델 합의는 다른 모델을 각각 한 번씩 샘플링합니다. 두 방법 모두 동일한 원리를 적용합니다—다양한 추론 경로에 대한 다수결 투표—하지만 서로 다른 실패 모드를 포착합니다.

PromptQuorum은 다중 모델 합의를 기본으로 지원합니다—하나의 프롬프트를 여러 모델에 분배하고 비교합니다. 중요한 결정의 경우, 두 가지를 결합하십시오: 주요 모델 내에서 자기 일관성을 실행하고 합의 답변을 두 번째 모델과 비교하십시오.

접근법작동 방식포착하는 것맹점
자기 일관성 (단일 모델)동일한 프롬프트, 동일한 모델, T=0.7+ 에서 5~20회 실행샘플링 불안정성, 무작위 오류체계적인 모델 편향 (모든 샘플에서 동일한 편향)
다중 모델 합의동일한 프롬프트, 다른 모델, 각 1회 실행모델 특정 편향, 아키텍처 맹점모든 모델이 동일한 학습 데이터 공백을 공유할 수 있음
결합 (가장 강력)여러 모델 × 각각 여러 샘플무작위 오류와 체계적 편향 모두비용: N 모델 × M 샘플 = N×M API 호출

자기 일관성 프롬프팅을 사용해야 할 때

자기 일관성 프롬프팅은 틀린 답변의 비용이 높고 과제가 사소하지 않은 추론을 포함할 때 사용해야 합니다. 더 나은 견고성을 위해 계산과 지연 시간을 트레이드합니다.

좋은 후보는 다음과 같습니다:

  • 비즈니스 또는 기술적 결정을 이끄는 분석 질문.
  • 논리적 실수가 비싼 복잡한 코딩 과제.
  • 중간 단계가 중요한 교육 또는 시험 스타일의 추론.
  • 단일 실행이 불안정하다고 이미 관찰된 모든 워크플로.
  • 수학 문제, 논리 퍼즐, 연구 합성, 재무 분석.
기법샘플 수비용최적 용도정확도 향상
단일 답변 (기준선)1간단한 과제, 낮은 위험
Chain-of-thought1~1.5×수학, 논리, 단계별보통 (+5~10 pp)
자기 일관성5~207.5~30×어려운 추론, 고위험큰 향상 (GSM8K에서 +18 pp)
다중 모델 합의3~5개 모델3~5×모델 특정 편향 포착보통~큰 향상
두 가지 결합5 × 3개 모델15×최대 신뢰도가장 높음

⚠️ 경고

temperature 0에서의 자기 일관성은 쓸모없습니다—모든 샘플이 동일한 출력을 생성합니다. 다수결 투표를 의미 있게 만드는 변형을 생성하려면 temperature를 0.7 이상으로 설정해야 합니다. 이것이 가장 일반적인 구현 실수입니다.

자기 일관성 프롬프팅의 일반적인 실수

자기 일관성을 훼손하는 함정과 이를 피하는 방법은 다음과 같습니다:

  • temperature 0(결정론적 모드) 사용. 문제점: 모든 샘플이 동일합니다. 10개의 동일한 답변에 투표하면 아무것도 알 수 없습니다. 해결책: temperature를 0.7~1.0으로 설정하여 다양한 추론 경로를 생성하십시오.
  • 단순한 사실 질문에 자기 일관성 사용. 문제점: "프랑스의 수도는 어디입니까?"는 매번 "파리"를 생성합니다. 정확도 향상 없이 토큰을 10배 소비했습니다. 해결책: 단일 실행 정확도가 관찰 가능하게 90% 미만인 과제에만 자기 일관성을 예약하십시오.
  • 너무 적은 샘플(2~3개) 생성. 문제점: 동의하지 않는 2개의 샘플로는 타이브레이커가 없습니다. 3개의 경우 2-1 분할은 약한 합의를 제공합니다. 해결책: 최소 5개의 샘플을 사용하십시오. 1→5의 정확도 향상이 곡선의 가장 가파른 부분입니다.
  • 최종 답변 대신 전체 응답 텍스트에 투표. 문제점: 두 응답이 완전히 다른 추론 경로를 통해 동일한 답에 도달할 수 있습니다. 텍스트 비교는 다르다고 하지만 답변 비교는 동의한다고 합니다. 해결책: 최종 답변만 추출하고("Answer: X" 형식 요구) 그것에 투표하십시오.

PromptQuorum에서의 자기 일관성 프롬프팅

PromptQuorum은 여러 답변을 쉽게 생성하고 비교할 수 있게 하여 자기 일관성 프롬프팅을 자연스럽게 보완하는 다중 모델 AI 분배 도구입니다. "하나의 모델에서 여러 실행"과 "하나의 프롬프트에 대한 여러 모델"을 두 겹의 일관성 검사 레이어로 취급할 수 있습니다.

PromptQuorum으로 다음을 할 수 있습니다:

  • 추론 중심 프레임워크(예: TRACE 또는 APE)를 재사용하고 모델당 여러 번 실행하여 다양한 chain-of-thought를 수집합니다.
  • 동일한 추론 프롬프트를 여러 모델에 나란히 실행하여 동일한 답으로 수렴하는지 확인합니다.
  • 자기 일관성 워크플로를 템플릿으로 저장하여 팀이 패턴을 처음부터 설계하지 않고도 "여러 번 샘플링한 후 집계"를 반복적으로 적용할 수 있습니다.

자기 일관성 프롬프팅 사용 방법

  1. 1
    복잡한 추론 과제의 경우, 다른 무작위 시드로 동일한 프롬프트에서 여러 출력(5~10개)을 생성하십시오. 동일한 질문을 5번 묻습니다. 5개의 다른 응답을 얻게 됩니다.
  2. 2
    출력을 분석하여 일관된 패턴('합의')을 찾으십시오. 5개의 응답 중 4개가 동일한 답에 동의하면, 그 동의가 신뢰도 신호입니다. 5개 모두 동의하지 않으면, 과제가 모호하거나 프롬프트를 개선해야 합니다.
  3. 3
    연구 및 지식 과제에서 환각을 감지하기 위해 자기 일관성을 사용하십시오. "프랑스의 수도는 어디입니까?"를 물을 때 3개의 응답이 "파리"라고 하고 2개가 "리옹"이라고 하면, 합의(파리)가 답변입니다. 무작위로 다른 도시들을 보면 모델이 환각하고 있는 것입니다.
  4. 4
    다양한 출력을 장려하기 위해 Temperature(T)를 높게(0.7~1.0) 설정하십시오. 낮은 temperature(T = 0)는 매번 동일한 결정론적 출력을 생성하여 목적을 상실합니다. 자기 일관성은 합의를 찾기 위해 변형이 필요합니다.
  5. 5
    비용이 허용하는 프로덕션 파이프라인에서 자기 일관성을 구현하십시오. 5~10배 더 많은 생성을 실행하는 것은 비싸지만, 중요한 결정(의료 조언, 금융 권장 사항, 연구 합성)의 경우 합의 신호가 비용을 정당화합니다.

관련 읽기

출처

자주 묻는 질문

자기 일관성 프롬프팅이란 무엇입니까?

자기 일관성 프롬프팅은 동일한 질문에 대해 여러 독립적인 답변을 생성하고—각각 자체 추론 경로를 가진—가장 자주 나타나는 답변을 선택하는 기법입니다. 하나의 AI 응답을 신뢰하는 대신, 많은 응답의 합의를 신뢰합니다. Wang et al. (2023)이 도입하였으며 수학, 논리, 다단계 추론 과제에서 정확도를 크게 향상시킵니다.

자기 일관성에 몇 개의 샘플이 필요합니까?

대부분의 과제에서 5~10개의 샘플이 최적의 정확도 대 비용 비율을 제공합니다. 원본 논문은 1~5개 샘플에서 정확도가 빠르게 향상되고 20개 이후에는 수익 감소가 발생함을 보여주었습니다. GSM8K에서 20개에서 40개 샘플로 가는 것은 단 2 퍼센트포인트만 추가되었습니다. 5개로 시작하고, 고위험 결정에만 10~20개로 늘리십시오.

자기 일관성이 단순한 과제에서도 작동합니까?

의미 있게 작동하지 않습니다. 사실 조회, 단순 분류, 또는 단편 작문의 경우 단일 답변이 거의 항상 충분하며 훨씬 저렴합니다. 자기 일관성은 모델의 단일 패스 정확도가 ~90% 미만인 과제—일반적으로 수학, 논리 퍼즐, 다단계 분석, 복잡한 추론—에서만 가치를 추가합니다.

자기 일관성에는 어떤 temperature를 사용해야 합니까?

temperature를 0.7~1.0으로 설정하십시오. 이 기법은 다양한 추론 경로가 필요합니다—temperature가 0(결정론적)이면 모든 샘플이 동일한 출력을 생성하고 투표는 의미가 없습니다. 더 높은 temperature는 다수결 투표를 의미 있게 만드는 변형을 생성합니다.

자기 일관성의 비용이 얼마나 더 많이 드나요?

5~20개의 완전한 응답 대신 하나를 생성하므로 작업당 약 5~20배 더 많은 토큰이 필요합니다. $0.01의 비용이 드는 응답의 경우, 10개 샘플의 자기 일관성은 $0.10이 됩니다. 이는 중요한 결정(재무 분석, 의료 추론, 법적 해석)에서 정당화되지만 일상적인 과제에는 낭비입니다.

자기 일관성이 "best-of-N" 샘플링과 같습니까?

유사하지만 동일하지 않습니다. Best-of-N은 N개의 응답을 생성하고 가장 좋은 것을 선택합니다(종종 품질 스코어러에 의해). 자기 일관성은 N개의 추론 경로를 생성하고 가장 일반적인 답변—품질이 아닌 결론에 대한 투표—을 선택합니다. 자기 일관성은 품질 스코어러가 필요 없습니다; 동의를 신호로 사용합니다.

자기 일관성을 chain-of-thought 프롬프팅과 함께 사용할 수 있습니까?

예—이것이 원본이자 가장 효과적인 조합입니다. N개의 각 샘플은 chain-of-thought 추론을 사용하여 전체 추론 추적과 최종 답변을 생성합니다. 그런 다음 모든 N개의 추적에서 최종 답변에 투표합니다. 추론 경로는 다를 수 있지만 대부분이 동일한 결론에 도달하면 그 결론은 견고합니다.

PromptQuorum이 자기 일관성과 어떻게 관련됩니까?

PromptQuorum은 하나의 모델 내에서 대신 다른 모델에 걸쳐 동일한 합의 원리를 적용합니다. 동일한 모델에 10번 묻는 대신, 5개의 다른 모델에 각각 한 번씩 묻고 답변을 비교합니다. 동의하는 경우 신뢰도가 높습니다. 동의하지 않는 경우 주장을 확인해야 합니다. 이는 단일 모델 자기 일관성이 감지할 수 없는 모델 특정 편향을 포착합니다.

Apply these techniques with a local LLM or your own API keys — PromptQuorum works with any backend.

Try PromptQuorum free →

← Back to Prompt Engineering