개선된 Qwen3.8-Flash 채팅 템플릿 (Sharp Template 간결 모드 포함)
요약
본 글은 Qwen3.8-Flash-Next 모델의 채팅 템플릿 개선 사항을 공유하며, Unsloth GGUF 템플릿 기반으로 여러 기능을 수정했습니다. 주요 업데이트로는 인라인 태그 처리, 도구 호출 로직 개선, 오래된 대화 기록 블록 정리 등이 포함됩니다. 또한, 간결성(Terseness) 모드를 포팅하여 다양한 모델에서 더 간결한 응답을 얻는 방법을 제시합니다.
핵심 포인트
- Unsloth GGUF 템플릿 기반으로 Qwen3.8-Flash-Next의 채팅 템플릿을 개선함.
- 인라인 태그 처리, 도구 인자 렌더링 등 여러 로직 오류를 수정하여 안정성을 높임.
- Sharp 간결성 모드를 포팅하여 모델 응답의 장황함을 줄이는 방법을 제공함.
- 간결성 설정(Terseness)은 정확도에 영향을 줄 수 있으므로 주의가 필요함.
Qwen3.8-Flash-Next용 채팅 템플릿을 직접 유지 관리해 왔는데, 다른 스레드에서 논의한 후 이를 공유하기로 결정했습니다. 저는 v1.4 템플릿이 적용된 저장소와 원래 Unsloth가 고정한 기본 템플릿, 그리고 현재는 "Sharp" 간결성 모드가 적용된 버전(원래 /u/peculiar-ragdoll 님의 것을 기반으로 함)을 만들었습니다. Flash-Next는 27B 모델과 템플릿을 공유하지 않기 때문에, 기반은 froggeric이나 Sharp의 것이 아닌 Unsloth의 GGUF 템플릿을 사용했습니다.
Unsloth의 템플릿 위에 남아있거나 제대로 렌더링되지 않던 요청들을 수정했습니다:
<|think_low|>와 같은 인라인 태그는 템플릿 키워드 인자(template kwargs)를 전송할 수 없는 클라이언트의 노력 수준(effort level)을 설정합니다.- 반복되는 도구 실패에는 점진적으로 "먼저 진단하고, 그 후에 방향을 변경하라"는 메모가 추가됩니다.
- JSON 문자열로 전달된 도구 인자는 요청을 중단시키는 대신 렌더링됩니다.
- 오래된 턴(turn)은 더 이상 빈
<think></think>블록을 재생하지 않습니다. - 여는 태그 없이 떨어진
</think>는 답변에 누출되는 대신 분리되어 처리됩니다. max,minimal,none과 같은 노력 값들은 더 이상 오류를 발생시키지 않습니다.
정상적인 사고 기록(Normal thinking-on history)은 Unsloth의 템플릿이 렌더링하는 바이트 단위 그대로 렌더링되므로, KV 캐시가 재사용되며 잘 작동할 때는 아무것도 변경되지 않습니다.
Sharp 버전을 위해 27B Sharp의 간결성 블록을 직접 포팅했습니다. 이것이 Tiel/Dirk/다른 모델들이 Sharp 템플릿과 함께 사용할 때 덜 장황하게 응답하는 이유입니다. 이 블록은 시스템 프롬프트를 대체하지 않고, 그 뒤에 추가됩니다. 저는 Sharp의 medium 대신 Qwen의 xhigh 기본값을 유지했습니다. 간결성(Terseness)은 채팅-템플릿 키워드 인자이며, 기본적으로 활성화되어 있습니다. {"terse": false}를 렌더링하면 v1.4 템플릿이 정상적으로 작동하므로, 재로딩 없이 하나의 서버에서 A/B 테스트가 가능합니다.
간단 테스트: llama.cpp에서 Flash-Next UD-Q5_K_XL 사용, 높은 노력도(xhigh effort), temp 1.0 / top-p 0.95 / top-k 20, 8가지 일상 프롬프트 (설명, 조언, 코딩 요청, 모호한 '제 프로젝트에 도움을 줄 수 있나요?'): | | 답변 토큰 | 추론 토큰 | 벽 시간 | |---|---|---|---| | 생각하기 활성화(16쌍) | −40% (16개 중 13개에서 더 짧음) | −8% (혼합) | −28% | | 생각하기 비활성화(8쌍) | −61% (8개 중 7개에서 더 짧음) | 해당 없음 | −60% | 참고: 저는 개인적으로 간결성 설정은 꺼두는 편입니다. 왜냐하면 정확도를 다소 떨어뜨리는 것을 발견했기 때문이며, 그냥 중간 노력도(medium effort)를 사용하거나 더 빠른 응답이 필요할 때는 Swift-1.5-Flash-Next로 전환합니다. 하지만 많은 분들이 Tiel/Dirk/Sharp을 좋아한다는 것을 알고 있기 때문에, 이미 레포지토리를 올렸으니 그 옵션도 제공해 보려고 했습니다. 피드백이나 개선 제안은 언제든지 환영합니다! 수정: 도구 호출 전에 응답이 바로 도구 호출로 진행되려는 경우에 가끔 발생하는 이상한 '빈 대화' 오류를 해결하는 수정 사항을 포함하여 v1.5로 업데이트했습니다. 이는 템플릿이 초기 <|im_start|> 특수 토큰을 누락했기 때문이라고 생각합니다. /u/returnity가 제출함 [링크] [댓글]
AI 자동 생성 콘텐츠
본 콘텐츠는 Reddit AI Engineering의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기