원문 캡처 · broutonlab.com
원문 캡처 · broutonlab.com

LLM은 온도를 0으로 설정하고 고정 시드를 써도 실제 서비스에서 같은 입력에 늘 같은 답을 내놓지 않는다. 따라서 제품의 모든 결정을 생성형 모델에 맡기기보다, 규칙과 분류기 등 반복 가능한 구성요소를 함께 쓰고 결정별 일관성을 측정해야 한다.

2025년 9월 Thinking Machines는 오픈 모델에 “리처드 파인먼에 대해 알려줘”라는 프롬프트를 온도 0으로 1,000번 보냈다. 답변 80개가 나왔고, 모두 처음 102개 토큰까지는 같았다. 이후 992개는 파인먼이 “뉴욕주 퀸스”에서 태어났다고 했고, 8개는 “뉴욕시”라고 답했다.

결정론적 AI는 같은 입력에 언제나 같은 출력을 내놓는 시스템이다. 규칙 엔진, 고정 가중치를 사용하는 분류기, 의사결정표가 여기에 해당한다. 반면 LLM은 다음 토큰마다 확률을 계산해 하나를 고른다. 온도 0과 고정 시드를 사용해도 실제 서비스 환경에서는 결과가 달라질 수 있다.

2017년부터 프로덕션 머신러닝(ML)을, 2023년부터 LLM 제품을 출시해 온 실무자는 데모에서는 잘 작동하던 제품이 고객 앞에서 같은 입력에 다른 답을 내놓는 경우를 경험한다고 설명한다. 이 글의 핵심은 제품 전체를 결정론적 또는 확률론적 시스템 하나로 만들 필요는 없다는 것이다. 생성형 모델은 정리되지 않은 입력을 읽고 글을 쓰는 데 쓰고, 돈이나 데이터에 영향을 주는 결정은 반복 가능한 구성요소에 맡길 수 있다.

결정론적 시스템은 입력 하나에 출력 하나를 내놓아 단위 테스트와 감사 추적에 적합하다. 확률론적 시스템은 같은 입력에도 다른 답을 낼 수 있어 평가 데이터셋과 일치율을 살펴야 한다. 글은 이 차이를 선택의 문제가 아니라 제품 안에서 결정마다 어떤 방식을 쓸지 정하는 문제로 설명한다.

구분결정론적 시스템확률론적 시스템
출력입력마다 하나의 값분포에서 뽑은 값
실패 방식같은 잘못된 답을 반복같은 입력에 다른 답을 내며, 주로 경계 사례에서 차이가 남
테스트정확한 예상값을 두고 단위 테스트평가 데이터셋, 일치율, 임계값
감사입력을 다시 실행하면 같은 결정원래 결과를 저장하지 않으면 재실행 결과가 달라질 수 있음
결정당 비용1센트의 일부프롬프트가 길수록 늘어나는 모델 호출 비용
적합한 작업한 가지 정답이 있는 한도, 계산, 권한비정형 입력 읽기, 판단, 언어 작업

LLM의 결과가 달라지는 이유

온도는 모델이 다음 토큰을 고르는 방식에 영향을 준다. 온도 1에서는 확률에 따라 토큰을 뽑고, 온도 0에서는 가장 가능성이 큰 토큰을 고르는 것이 이론상 기대되는 동작이다. 하지만 실제로는 다음과 같은 요인으로 결과가 달라질 수 있다.

  • 제공업체 서버의 배칭: 서버는 여러 사용자의 요청을 묶어 처리한다. 배치 크기는 당시 부하에 따라 달라진다. Thinking Machines의 연구는 일반적인 GPU 커널이 배치 크기에 따라 결과가 달라질 수 있음을 보였다. 후보 토큰의 확률이 비슷하면 작은 수치 차이가 선택을 바꾸고, 이후 출력도 달라진다. 파인먼 실험에서는 103번째 토큰에서 이런 차이가 나타났다. 연구진의 배치 불변 커널은 실험의 1,000개 출력을 모두 같게 만들었지만, 같은 작업의 벤치마크에서 추론 시간은 26초에서 42~55초로 늘었다.
  • 시드는 완전한 재현성을 보장하지 않는다. 오픈AI의 안내서는 시드 매개변수를 최선의 노력에 따른 결정론으로 설명한다. 제공업체의 서빙 환경이 바뀌면 system_fingerprint도 달라질 수 있다. 같은 시드와 지문을 사용해도 출력은 대체로 일치할 뿐이라고 안내한다.
  • 모델 이름이 같아도 제공업체가 제공하는 모델이 바뀔 수 있다. 날짜가 붙은 버전을 고정하지 않으면 조용한 모델 업데이트가 제품의 동작 변화로 이어질 수 있다.
  • 입력도 실행마다 달라질 수 있다. 에이전트가 사용하는 도구, 검색 결과, 검색해 온 문서와 시각이 달라지면 모델에 전달되는 프롬프트도 달라진다.

2024년 연구 ‘결정론적’ LLM 설정의 비결정성은 온도 0에서 같은 벤치마크 작업을 반복했다. 실행에 따라 정확도가 최대 15% 움직였고, 최선의 실행과 최악의 실행 간 차이는 최대 70%에 달했다. 글은 자체 작업에서도 온도와 시드를 고정했는데도 답변이 달라지는 현상을 봤다고 설명한다. 명확한 입력은 안정적인 반면, 모델이 두 선택지 사이에서 확신하지 못하는 경계 사례에서는 결과가 바뀌기 쉽다는 것이다.

제품에서는 결정별로 방식을 나눠야 한다

요약이나 이메일 초안의 표현이 조금 달라지는 것은 문제가 아닐 수 있다. 하지만 환불 승인과 금액, 접근 권한, 규정 준수 판단처럼 고객이나 감사자에게 나중에 설명해야 하는 결정은 다르다. 같은 입력을 다시 넣었을 때 결과를 재현할 수 없다면 문제를 추적하고 고치기 어렵다.

글은 결정론적 시스템을 제품 전체의 속성이 아니라 제품 안의 결정마다 설계할 요소로 본다. 제안하는 방법은 반복 가능성이 높은 구성요소부터 다음과 같다.

  • 코드에 확정 규칙을 둔다. 한도, 권한, 자격 요건, 산술처럼 if 문으로 표현할 수 있는 규칙은 프롬프트에 맡기지 않는다. LLM이 행동을 제안하더라도 코드는 이를 승인하거나 거부할 수 있다.
  • 라벨이 있는 데이터가 충분하면 보정된 분류기를 쓴다. 글은 수천 건의 라벨 사례가 있다면 작은 학습 모델이 더 저렴하고 빠르며 반복 가능할 수 있다고 설명한다. 분류기의 원점수는 0과 1 사이의 값이어도 정확한 확률은 아니다. 홀드아웃 데이터에 맞춰 플랫 스케일링이나 아이소토닉 회귀로 보정해야 임계값에 안전하게 사용할 수 있다. 글은 이런 모델의 학습과 보정을 맞춤형 AI 개발 작업의 일부로 소개한다.
  • 의사결정 모델을 검토한다. TypeSafe AI가 2026년 9월 출시한 Jev는 애플리케이션 상태와 미리 정한 질문을 받아 텍스트 대신 확률을 출력하는 모델로 소개됐다. TypeSafe는 보정된 확률을 위해 학습했다고 설명하지만, 문서에는 개별 답변을 보장하지 않는다고 명시돼 있다. 초기 접근 단계이며 수치는 업체가 제시한 것이므로, 글은 자체 평가 데이터로 확인하라고 권한다.
  • 판단에 LLM이 필요하다면 출력 범위를 제한한다. 허용된 라벨만 담는 열거형(enum)이 포함된 JSON 스키마를 정하고, 코드로 검증한다. 검증에 실패하면 다시 시도하거나 사람에게 넘긴다. 점수 기준도 프롬프트에 구체적으로 정의할 수 있다. 예를 들어 위험도 2, 5, 8에 해당하는 사례와 그 기준을 제시하면 모델이 점수의 의미를 매번 새로 정하는 일을 줄일 수 있다. 비교 사례를 활용할 때는 제시 순서를 바꿔 양쪽 순서로 평가해야 한다. 모델이 먼저 본 선택지를 선호하는 경향이 있기 때문이다.
  • 중요한 답은 여러 차례 묻고 투표나 평균을 낼 수 있다. 같은 질문에 다섯 번 모두 같은 답을 한 경우와 3 대 2로 갈린 경우는 다르다. 의견이 갈렸다는 사실은 경계 사례라는 신호가 될 수 있지만, 결정마다 모델 호출이 다섯 번 필요하다.
  • 답을 다시 생성하는 대신 결정 기록을 저장한다. 입력, 모델 버전, 매개변수와 출력을 기록하면 시스템에 왜 그런 결정이 나왔는지 확인할 수 있다. 일치율이 낮거나 확신이 낮은 사례는 사람에게 보낼 수 있다.
방식반복 가능성상대 비용적합한 용도
코드의 규칙완전함가장 낮음한도, 권한, 계산
보정된 분류기릴리스 사이에는 완전함낮음라벨 이력이 있는 대량 결정
의사결정 모델업체 설명상 낮음; 독립 측정은 아직 없음낮음라우팅, 점수화, 가드레일
제약된 LLM대체로 반복 가능하지만 경계 사례는 달라질 수 있음중간비정형 입력에 대한 판단
반복 샘플링을 적용한 LLM동일한 실행이 아니라 안정적인 추정값높음, 결정마다 N회 호출결과가 바뀌는 비용이 큰 경계 사례
자유 형식 LLM낮음중간초안 작성, 요약, 대화

일관성을 측정하는 방법

글은 에이전트의 일관성을 예·아니오가 아니라 제품별 수치로 확인하라고 제안한다.

  • 실제 입력으로 평가 데이터셋을 만들고 경계 사례를 의도적으로 포함한다. 깔끔한 사례만으로는 문제를 드러내기 어렵다.
  • 프로덕션 설정으로 입력마다 10~20회 실행하고, 평균 정확도뿐 아니라 각 입력의 일치율을 측정한다.
  • 답변이 갈린 사례를 읽어 본다. 그 사례가 모이는 지점은 규칙, 보정된 임계값 또는 사람의 판단이 필요한 곳을 보여줄 수 있다.
  • 모델 버전을 고정하고, 제공업체가 지문을 제공하면 이를 기록한다. 모델, 프롬프트 또는 제공업체가 바뀔 때마다 평가 데이터셋을 다시 실행한다.
  • 결정 종류마다 기준을 따로 둔다. 돈이나 접근 권한에 영향을 주는 결정에는 100% 일치율을 요구하고, 초안 작성에는 더 낮은 기준을 둘 수 있다.

글은 정확도만으로는 충분하지 않다고 강조한다. 에이전트가 90%의 경우에 맞더라도 같은 입력에 날짜마다 다른 답을 내놓으면, 정확도가 다소 낮더라도 늘 같은 방식으로 동작하는 시스템보다 신뢰하고 판매하기 어려울 수 있다는 설명이다. 시에라(Sierra)의 τ-bench는 에이전트가 k번 시도 모두에서 작업을 맞힌 비율인 pass^k를 측정한다. 해당 벤치마크의 소매 테스트에서 GPT-4o는 한 번 시도했을 때 작업의 절반도 해결하지 못했고, 8회 시도 모두에서 성공한 작업은 25% 미만이었다.

제품에서는 생성형 모델로 정리되지 않은 입력을 읽고 글을 쓰게 하되, 돈·데이터·접근 권한에 영향을 주는 결정은 규칙, 보정된 분류기나 의사결정 모델로 옮기는 것이 글의 권고다. 온도 0과 시드는 변동을 줄일 수 있지만 없애지는 못하므로, 경계 사례에서의 일치율을 측정하고 필요하면 사람의 판단을 더해야 한다.