경험 중심 1인칭 답변
LLM 기반 서비스를 만들 때 비결정성 관리에서 가장 먼저 쓰는 방법은 temperature를 0 또는 낮은 값으로 고정하는 것입니다. 분류나 추출처럼 일관된 출력이 필요한 태스크에서는 이것만으로도 재현성이 크게 높아집니다. 그 다음으로는 system prompt에 출력 형식을 명시적으로 지정합니다. JSON 스키마나 예시를 직접 넣으면 파싱 오류 빈도가 줄어듭니다. 학교 프로젝트에서 텍스트 분류 파이프라인을 만들 때 같은 입력에 대해 10회 호출 결과를 비교해 출력 변동 폭을 측정했고, temperature·seed·format 지정의 조합으로 변동 폭을 85% 줄였습니다. 완전한 결정성이 필요한 경우는 LLM을 분류기로 쓰지 않고 임베딩 + 코사인 유사도 방식으로 대체하는 것도 방법이라고 생각합니다.
비결정성은 피하기보다 측정하고 허용 범위를 설계하는 것이 현실적이라는 것을 그 경험에서 배웠습니다.