TL;DR
Qwen 3.8 27B는 사고 중 높은 temperature가 필요하지만 답변 단계에서는 같은 값 때문에 출력이 흐려질 수 있습니다. 게시자는 vLLM fork에 post_thinking 설정을 추가해 <think> 내부에는 temperature 0.9~1.0을, </think> 이후에는 temperature 0.2를 적용하도록 만들었습니다. post_thinking은 top_p와 top_k도 별도로 지정하며, 생략한 값은 기본 설정을 상속합니다. 초기 테스트에서는 사고 과정은 동일하게 유지하면서 생성 오류가 크게 줄었다고 보고됐지만, 기능은 아직 작업 중입니다.
실용적 조언
- Qwen 3.8 27B를 vLLM으로 제공할 때 사고 단계에는 temperature 0.9~1.0을 두고 post_thinking에는 temperature 0.2, top_p 0.95, top_k 20을 설정하는 구성이 게시자의 권장·테스트 값입니다. 서버 전체에 적용하려면 --override-generation-config를 사용하고, 특정 요청에만 적용하려면 extra_body 안에 post_thinking을 넣습니다. 다만 게시자는 이 기능을 아직 작업 중인 상태로 밝혔으므로 실제 배포에서는 자신의 프롬프트와 요청 유형으로 출력 오류를 다시 확인해야 합니다.
섹션별 상세
"post_thinking":{"temperature":0.2,"top_p":0.95,"top_k":20}사고 블록이 끝난 뒤 적용할 별도 샘플링 파라미터를 generation config에 추가합니다.
vllm serve Qwen/Qwen3.8-27B-FP8 \
--override-generation-config '{"temperature":0.9,"top_p": 0.95,"top_k":20,"min_p":0,"post_thinking":{"temperature":0.2,"top_p":0.95,"top_k":20}}'vLLM 서버 전체의 기본 generation config에 사고 중 temperature 0.9와 사고 후 temperature 0.2를 지정해 실행합니다.
client.chat.completions.create(
model="qwen/qwen3.8-27b",
messages=[{"role": "user", "content": "..."}],
temperature=0.9,
extra_body={
"post_thinking": {"temperature": 0.2, "top_p": 0.95, "top_k": 20},
},
)OpenAI 호환 클라이언트의 개별 요청에 post_thinking 샘플링 설정을 전달합니다.
용어 해설
- 사고 후 샘플링(Post-thinking Sampling)
- — 모델이 <think> 블록에서 사고를 마친 뒤 생성하는 답변에 별도의 샘플링 설정을 적용하는 방식입니다. 사고 중에는 높은 temperature를 유지하고, 이후에는 낮춰 출력의 불필요한 무작위성과 오류를 줄이는 데 쓰입니다.
- Temperature
- — 다음 토큰을 선택할 때 분포의 무작위성을 조절하는 샘플링 값입니다. 값이 높으면 다양한 토큰을 선택해 사고 과정의 반복을 줄일 수 있지만, 답변 단계에서는 출력이 느슨해질 수 있어 단계별 조정이 필요합니다.
- Top-p 샘플링(Top-p)
- — 누적 확률이 지정된 값에 이를 때까지 후보 토큰을 추려 그 안에서 다음 토큰을 선택하는 방식입니다. post_thinking 설정에 포함하면 사고 이후에도 후보 분포를 별도로 제한할 수 있습니다.
언급된 도구
Qwen 3.8 27B의 추론 서버를 실행하고 사고 전후의 샘플링 설정을 적용하는 데 사용됩니다.
언급된 리소스
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.