본문 바로가기
카테고리 없음

로컬 LLM을 Hermes Agent에 붙일 때 토큰 낭비 없이 끝내는 법 (Qwen과 Hermes 연동기)

by 에띵 2026. 6. 23.

1. 시작 전에 "하드웨어"부터 말하라. 나는 Hermes Agent(데스크톱 앱, Windows 11, RTX 3060 12GB)에 로컬 LLM을 붙이려 했다. 처음엔 Qwen Code를 떠올렸지만 그건 로컬이 아니었고, "Hermes에 잘 맞는 로컬 LLM"을 찾아보니 메모리가 큰 환경이면 GLM 계열, 단일 GPU면 Qwen 계열이 갈림길이었다. 결국 Ollama로 qwen3-coder:30b을 골랐는데, 정작 30B(약 18GB)는 12GB GPU에 다 안 들어간다는 걸 한참 뒤에야 알았다. 시작부터 GPU VRAM을 밝히고 모델을 골랐다면 절반은 줄였을 일이다. → 본인의 AI에게 미리 물어보세요: "내 GPU는 VRAM ○○GB야. Hermes Agent(최소 64k 컨텍스트 요구)에서 tool-calling이 되는 로컬 모델 중, 64k컨텍스트까지 VRAM에 다 들어가는 걸로 추천해줘."

 2. 데스크톱 앱의 초기 설정 함정 세 가지. 커스텀 엔드포인트를 고를 때 모델 칸에 custom만 보여서 막혔는데, 알고 보니 그 드롭다운은 모델이 아니라 프로바이더 목록이었고 맨 아래 Local (localhost:nnnnn) 프리셋이 Ollama용이었다. 또 API key를 비워두면 /v1/models 조회가 막혀 모델 목록이 안 뜨니 더미값(ollama)이라도 넣어야 했다.

마지막으로, 설정이 다 완료되었다고 생각해서 chat session에서 모델에게 "안녕, 자기소개 해봐"라는 테스트 메세지를 보냈더니 모델이 답변으로 자기를 "저는 Claude입니다"라고 소개해서 당황했다;; 너가 왜 클로드야;;; 근데 이건 오픈 모델이 학습 데이터 영향으로 정체성을 착각하는 무해한 환각이었다(연결은 VRAM 로드 여부로 확인하면 됨). → 역시 본인의 AI에게 미리 물어보세요: "Hermes Desktop + Ollama에서 ① 모델 선택 드롭다운에 모델이 안 보일 때 ② API key 빈칸의 영향 ③ 모델이 자기를 Claude라고 하는 현상, 각각 정상인지/대처법 알려줘."

3. 진짜 시간을 잡아먹은 문제 — tool call이 텍스트로 새버림. 두 번째 테스트로 내 컴퓨터의 특정 폴더에 있는 파일 목록을 요청했는데 답변으로 계속  <function=terminal><parameter=command>… 같은 raw 텍스트가 그대로 출력됐다. 나는 컨텍스트 잘림, 스트리밍, 모델 인식 등 가설을 하나씩 세우고 매번 테스트하느라 토큰을 살살 녹였는데..^^

결론만 보면 범인은 단순했다: Ollama 기본 컨텍스트가 4096인데,Hermes의 시스템 프롬프트 + 툴 29개 정의만으로 약 18k 토큰이라 프롬프트가 통째로 잘려 모델이 native tool_calls를 못 만들고 자기 텍스트 형식으로 뱉은 것이다(로그의 in=4095가 증거였다). 게다가 Hermes는 최소 64,000 컨텍스트를 요구한다. → 그러니까, 토큰 살려~!!!! 본인의 AI에게 미리 물어보세요: "Hermes에서 tool call을 했더니 답변이 <function=...> 텍스트로 출력돼. 모델 컨텍스트가 (시스템 프롬프트 + 툴 정의 토큰)보다 작아 잘리는 게 원인일 수 있어. Ollama 기본 num_ctx 4096이 문제인지부터 확인하고, Hermes 64k 최소 요구도 같이 맞춰줘."

 4. 해결과 속도 — 컨텍스트를 키우고, 모델을 GPU에 다 넣어라.

해결책은 모델에 num_ctx를 65536으로 박고(Ollama로 모델 재정의), Hermes config의 context_length도 65536으로 맞춰 인식 불일치를 없애는 것이었다. 툴 30개를 실은 테스트에서 native tool_calls이 정상 반환되며 파일 목록이 실제로 실행됐다. 다만 30B는 12GB에 42%만 올라가 나머지가 CPU로 새어나가 전반적으로 느렸다(응답 20~40초). 그래서 모델을 qwen3:8b로 바꾸고 KV 캐시 압축(OLLAMA_FLASH_ATTENTION=1, OLLAMA_KV_CACHE_TYPE=q8_0)을 켜니 8.3GB로 100% GPU에 들어갔다. → 미리 물어보세요: "내 모델이 64k 컨텍스트로 VRAM에 100% 들어가는지(size_vram 확인) 계산해줘. 안 들어가면 더 작은 모델 추천 + KV 캐시 q8_0 압축 + flash attention으로 줄이는 법까지 한 번에 알려줘."

 

 

 

여러분은 이런 바보같은 실수를 하지 않길 바라며

오늘의 토큰살려

김토큰

이었습니다.... 허무해..허무하다..


소개 및 문의 | 개인정보처리방침 | 면책 조항