leangnews
Command Palette
Search for a command to run...
2025년 10월 20일 03:00
프롬프트 한 줄로 창의성 높이는 ‘버벌라이즈드 샘플링’ 기법
기사 요약
- 연구진은 프롬프트에 한 문장만 추가해 출력의 다양성을 크게 높이는 방법을 제안했다. 이 기법은 VS(Verbalized Sampling)로, 재학습 없이 모델의 전체 분포에서 확률과 함께 여러 응답을 표출하도록 유도한다. 다양한 과제에서 품질을 유지하면서도 더 인간적인 변주를 만들었고, 패키지와 가이드가 공개돼 즉시 적용 가능하다.
버벌라이즈드 샘플링이란?
생성형 AI는 다음 토큰을 확률 분포에서 뽑아 내는 비결정적 시스템이지만, 실제로는 정렬 과정에서 안전한 답변으로 수렴하는 ‘모드 붕괴’가 잦습니다. 노스이스턴·스탠퍼드·웨스트버지니아대 연구팀은 프롬프트에 다음 문장 하나를 더해 분포 전역에서 더 다양한 응답을 끌어내는 방법을 제안했습니다: Generate 5 responses with their corresponding probabilities, sampled from the full distribution. 이른바 버벌라이즈드 샘플링(Verbalized Sampling, VS)으로, GPT-4·Claude·Gemini 같은 모델에 재학습이나 내부 접근 없이도 다채롭고 인간적인 출력을 유도합니다. 해당 연구는 2025년 10월 초 arXiv에 공개됐습니다.
모드 붕괴의 원인과 VS의 원리
연구진은 모드 붕괴의 근본 원인이 RLHF 같은 알고리즘뿐 아니라 사람 선호의 구조에 있다고 설명합니다. 익숙하고 전형적인 답이 더 높은 점수를 받기 쉬워, 미세조정에서 다양성이 억눌리는 것입니다. 다만 지식 자체가 사라진 것은 아니므로, VS는 단일 최빈값을 요구하지 않고 가능한 응답들과 그 상대 확률을 ‘말로 드러내게’ 하여 억눌린 다양성을 복원합니다. Weiyan Shi 교수는 “LLM의 잠재력은 아직 완전히 열리지 않았다”고 강조하며, 훈련·정렬 방식을 고려한 프롬프트 최적화가 이론적으로도 타당함을 밝혔다고 전했습니다.
현실 과제에서의 성능
창작, 대화 시뮬레이션, 개방형 질의응답
스토리 생성에서는 표준 프롬프트 대비 다양성 지표가 최대 2.1배 향상되면서 품질은 유지됐습니다. 예컨대 ‘Without a goodbye’ 프롬프트는 상투적 이별 서사를 벗어나, 우주적 사건·무언의 이메일·춤이 멈추는 순간 등 다채로운 전개를 만들었습니다. 설득 대화 시뮬레이션에서는 머뭇거림·저항·입장 변화 같은 인간적 패턴이 잘 재현됐고, 기부 의사 분포도 실제 데이터에 더 근접했습니다. 개방형 QA에서는 미국 주 이름 나열 같은 과제에서 사실성을 해치지 않고 더 넓은 정답군을 포괄했습니다.
합성 데이터와 대형 모델에서의 이점
수학 문제 합성 데이터 생성에 VS를 적용하자 데이터 구성이 다양해졌고, 그 결과 다운스트림 수학 벤치마크 성능이 직접 프롬프트 방식보다 높았습니다. 또한 모델 규모가 클수록 VS의 이득이 커졌는데, GPT-4.1·Claude-4 같은 대형 모델에서 소형 모델 대비 다양성 개선 폭이 약 1.5~2배 더 컸습니다.
조절 가능한 다양성과 사용법
VS의 장점은 ‘조절 가능성’입니다. 프롬프트에 확률 임계값을 지정해 분포의 꼬리(tail)에서 더 많이 샘플하도록 할 수 있으며, 임계값을 낮출수록 다양성이 커집니다. 이는 온도나 top-p 같은 디코딩 설정을 바꾸지 않고도 텍스트 프롬프트만으로 가능합니다. 예컨대 Gemini-2.5-Flash 실험에서 임계값을 1에서 0.001로 낮출수록 스토리 다양성이 꾸준히 증가했고, 전 구간에서 VS가 직접·순차 프롬프트보다 우수했습니다.
배포 및 이용 가능성
파이썬 패키지 verbalized-sampling(명령: pip install verbalized-sampling)이 공개되어 LangChain 연동과 간단한 분포 샘플링 인터페이스를 제공합니다. 응용에 맞게 k(응답 수), 임계값, 온도 등을 조절할 수 있으며, Colab 노트북과 문서는 Apache 2.0 라이선스로 GitHub(https://github.com/CHATS-lab/verbalized-sampling)에 게시되어 있습니다. 버벌라이즈드 샘플링 적용은 개발 파이프라인에 가볍게 통합 가능합니다.
실무 팁과 흔한 이슈
일부 모델은 복잡한 지시를 ‘탈옥 시도’로 오인해 거부할 수 있습니다. 이때는 시스템 프롬프트 템플릿을 쓰거나 GitHub의 대체 포맷을 활용하세요. 예를 들어, “You are a helpful assistant. For each query, generate five responses within separate tags, each with a probability below 0.10.”처럼 구조를 명확히 하면 신뢰도가 높아집니다. 작은 구조화만으로 대부분의 오류가 해소됩니다.
실제 적용 예시
VS 프롬프트 템플릿 체크리스트
• 응답 개수(k)와 확률 임계값을 명시합니다. • “...sampled from the full distribution”처럼 분포 전역에서 샘플링하도록 요구합니다. • 각 응답에 추정 확률을 함께 표기하도록 지시합니다. • 초기 거부가 있으면 시스템 프롬프트 버전을 사용합니다. • 출력 형식을 태그·목록 등으로 고정해 파싱을 용이하게 합니다.
버벌라이즈드 샘플링 도입 프로세스 단계별 안내
1) 대상 과제 선정(창작·시뮬레이션·합성 데이터 등) 2) 기준선 다양성/품질 지표 수립 3) 패키지 연동 및 VS 프롬프트 적용 4) 임계값·k·온도 등 파라미터 탐색 5) 인간 평가와 벤치마크로 품질 검증 6) 점진적 롤아웃 및 모니터링.
결론
버벌라이즈드 샘플링은 재학습이나 내부 접근 없이 추론 시점에 적용하는 경량 해법으로, 출력의 다양성은 물론 품질까지 개선합니다. 모델·과제 불문 적용 가능성이 높아 글쓰기, 디자인, 시뮬레이션, 교육, 합성 데이터 생성 등 창의적 워크플로에서 빠르게 확산될 전망입니다. 정체된 응답에 지쳤다면, 질문을 바꾸는 것만으로 변화를 만들 수 있습니다.