Vomit: Local LLM을 사용하여 Claude 5의 토큰 출력을 정리하기
개요
Vomit은 사용자들이 "token vomit"—즉, 지나치게 장황하고, 부자연스러우며, 때로는 이해할 수 없는 산문—라고 묘사하는 Claude 5의 출력을 가로채고 재작성하도록 설계된 오픈 소스 유틸리티입니다. 이 도구는 Claude의 출력을 별도의 로컬 LLM으로 파이프하여 "Claudish" 스타일을 명확하고 대화적인 영어로 번역합니다.
Go로 구축된 Vomit은 텔레메트리(telemetry)가 없고 외부 종속성이 없는 완전한 로컬 환경을 지향하여, 재작성된 텍스트의 처리가 사용자의 기기 내에서만 유지되도록 설계되었습니다.
핵심 기능 및 설치
Vomit은 LLM 훅(hooks)을 사용하여 실시간으로 Claude의 출력을 교체하거나, 비침습적(non-invasive) 모드로 실행하여 세션 로그를 번역합니다.
설치 및 설정
To install and configure Vomit, users follow these steps:
- Install the binary:
go install github.com/zachahn/vomit@latest - Initialize connection: Run
vomit initto set up connection details for the local LLM. - Configure hooks: Run
vomit scrub -claudeto set up the instructions for replacing Claude's output.
사용 모드
- Invasive Mode: 훅을 통해 Claude의 출력을 직접 교체합니다.
- Non-Invasive Mode:
vomit list(세션 식별자 확인) 및vomit tail(특정 또는 가장 최근 세션 번역)과 같은 명령어를 사용하여 측면에서 세션을 번역할 수 있습니다.
지원되는 로컬 LLM 백엔드
Vomit은 다음을 포함하여 OpenAI API를 사용하는 모든 LLM 제공업체와 호환됩니다:
- Llama.app (권장 모델: GPT-OSS 20B)
- Ollama
기술적 구현: "Claudish" 번역 프롬프트
Vomit의 효과는 에디터 역할을 수행하는 로컬 LLM이 사용하는 특정 시스템 프롬프트에 달려 있습니다. 이 프롬프트는 로컬 모델이 Claude 5의 출력에서 흔히 나타나는 특정 "이상한 특징"을 식별하고 제거하도록 명시적으로 지시합니다:
- Roundabout reasoning: 의사 깨달음(pseudo-epiphanies)과 흐름을 방해하는 불필요한 비트(beats)를 제거합니다.
- Incorrect Subject-Verb combinations: 인간, 그룹, 에이전트만이 "동사(action verbs)"를 수행하도록 보장하고, 사물은 수동태로 유지합니다.
- Specific banned words: 사물을 대상으로 동사로 사용될 때 "carries" 및 "names"와 같은 단어를 타겟팅합니다.
- Stylistic distractions: 산문의 흐름을 방해하는 엠 대시(—)를 제거합니다.
Claude 5의 산문 품질에 대한 커뮤니티 분석
Vomit의 탄생은 최근 Anthropic 모델, 특히 Opus 5의 산문 품질 저하에 관한 개발자들 사이의 더 넓은 논의를 촉발했습니다.
The "Claudish" Phenomenon
사용자들은 Claude 5의 출력이 다음과 같은 특징으로 인해 점점 더 읽기 어려워지고 있다고 보고합니다:
- Deliberate obfuscation: 더 권위 있게 들리기 위해 밀집된 전문 용어와 부자연스러운 은유를 사용합니다.
- Agent-centric optimization: 일부는 모델이 인간 대 에이전트 통신이 아닌 에이전트 대 에이전트 통신을 위해 RL-optimized 되었기 때문에, 기괴한 단어 선택과 과도한 자기 정당화로 이어진다고 추측합니다.
- Cognitive burden: 개발자들은 장황함과 "Columbo-style" 푸터(모든 응답 끝에 주의 사항을 추가하는 것)가 기술 정보를 파싱하는 데 필요한 정신적 노력을 증가시킨다고 언급했습니다.
Alternative Workarounds
Vomit을 사용하는 것 외에도, 커뮤니티는 "slop"을 처리하기 위한 몇 가지 다른 방법을 제안했습니다:
- Prompt Engineering: "You must use ASD-STE100 Simplified Technical English (STE)"와 같은 주문을 사용하거나, "Caveman"과 같은 도구를 사용하여 더 단순한 스타일을 스타일을 강제합니다.
- Model Switching: 기술적 글쓰기를 위해 Codex 또는 오픈 웨이트 모델(예: Muse Glimmer 30B)로 전환합니다.
- Version Downgrading: 일부 사용자는 Opus 4.6이 이러한 산문 문제 없이 마지막 버전이었다고 보고합니다.
- Official Settings: 최근 Claude Code의 업데이트로 인해 장황함을 완화화하기 위해
outputStyle: concise옵션이 도입되었습니다.
Theoretical Causes
일부 기여자는 이 기괴한 산문이 모델의 추론 과정의 부산물이라고 제안합니다. 이론에 따르면, "이상한" 추론 산문은 모델의 내부 루핑과 체계적인 사고를 위해 효과적이지만—코딩 및 수학 성능을 향상시켰지만—최종적인 "인간화" 단계 없이 전달 가능한, 인간이 읽을 수 있는 답변으로 번역되지 못하는 것입니다.
Sources
관련
- Dispatch
- Dispatch
- Dispatch
- 프로젝트
- 프로젝트