llama.cpp v0.6.0 공개… 토큰·임베딩 함께 넣는 확장 배치 API 도입, GLM-5.3-Flash 등 새 모델 지원

작은 장비에서도 대형 언어모델을 실행할 수 있게 해 주는 오픈소스 추론 엔진 llama.cpp가 새 정식 버전 v0.6.0을 내놨다. 개발팀이 10월 6일 GitHub에 올린 릴리스 노트에 따르면 이번 버전의 중심은 새 확장 배치 API다. 모델 지원 범위도 넓혔고, 웹 UI 개편과 하드웨어별 연산 최적화도 함께 담았다.
가장 큰 변화는 'llamabatchext' 확장 배치 API와 이를 처리하는 'llamaprocess'다. 릴리스 노트는 이 API가 토큰과 임베딩이 섞인 입력을 한 배치로 처리할 수 있다고 설명한다. 토큰마다 붙는 '상태(state)' 임베딩도 다룰 수 있어 MTP(다중 토큰 예측) 모델과 deepstack 구조 모델을 지원한다. 지금까지 배치는 대체로 텍스트 토큰 위주로 들어갔다. 이번 변경으로 이미지 같은 비텍스트 입력이나 모델 내부 상태를 함께 넘겨야 하는 구조를 엔진이 더 직접 다룰 수 있게 된 것으로 보인다.
새로 지원하는 모델도 여럿이다. 개발팀은 320B(3,200억) 파라미터 규모의 하이브리드 모델 GLM-5.3-Flash(GLM5-Next)와, 텍스트와 비전을 모두 처리하는 의사결정 모델 Clef를 지원 목록에 올렸다. Qwen4Exp에는 MTP를 이용한 추측 디코딩(speculative decoding)을 붙였다. 추측 디코딩은 다음에 올 토큰 여러 개를 미리 예측한 뒤 한꺼번에 검증하는 방식이다. 보통 생성 속도를 높이려고 쓴다. 다만 이번 버전에서 실제로 속도가 얼마나 빨라지는지는 릴리스 노트 발췌본에서 확인되지 않았다.
서버 기능도 늘었다. 의사결정 모델 전용 서버 API인 '/v1/systemone'이 새로 들어갔다. 대상 모델로는 laya, julia-1, lev, openjev, kev, nimble이 나열됐다. 웹 UI는 크게 고쳤다. 허깅페이스 허브 데이터 계층과 모델 다운로드 파이프라인을 넣어, 웹 화면에서 모델을 찾고 내려받는 과정을 엔진 쪽에서 직접 맡도록 했다.
하드웨어 최적화로는 애플 Metal의 텐서 API를 쓰는 플래시 어텐션 커널이 추가됐다. 키·값(KV) 캐시를 F16 형식으로 쓸 때 적용된다. Vulkan에서는 양자화된 K/V에 대한 희소(sparse) 플래시 어텐션을 지원한다. 하부 텐서 연산 라이브러리 ggml도 v0.26.0으로 올렸다.
이번 업데이트를 보면 llama.cpp가 '가벼운 장비에서 언어모델을 돌리는 엔진'이라는 역할을 넘어 기능을 넓히고 있다는 점이 드러난다. llama.cpp는 모델을 낮은 비트로 양자화해 고가 GPU 서버가 없는 PC나 노트북에서도 언어모델을 돌릴 수 있게 하는 프로젝트다. 지금은 여러 로컬 AI 도구가 내부 엔진으로 쓰고 있다. 최근 공개되는 모델은 텍스트만 다루던 구조에서 벗어나 이미지를 함께 처리하는 멀티모달, 여러 토큰을 한 번에 예측하는 MTP, 의사결정 특화 모델로 빠르게 갈라지고 있다. 이런 모델을 돌리려면 엔진의 입력 구조부터 유연해야 한다. 이번 확장 배치 API는 그 요구에 맞춘 기반 작업으로 볼 수 있다. Metal과 Vulkan 최적화는 애플 실리콘 맥과 다양한 GPU 환경에서 메모리를 아끼면서 긴 문맥을 처리하는 데 초점을 맞췄다.
사용자에게 바로 와닿는 변화는 두 가지로 보인다. 하나는 새 모델을 로컬에서 실행할 수 있는 길이 열린 것이고, 다른 하나는 웹 UI에서 모델을 받는 과정이 간단해진 것이다. 다만 320B 규모의 GLM-5.3-Flash를 어느 정도 사양에서 실용적으로 돌릴 수 있는지는 릴리스 노트에서 확인되지 않았다. 새 배치 API가 기존 API와 어떤 관계인지, 기존 API를 쓰는 애플리케이션이 코드를 고쳐야 하는지도 공개된 발췌 내용만으로는 확인되지 않는다. 전체 변경 목록은 llama.cpp GitHub 저장소의 v0.6.0 릴리스 페이지에 공개돼 있다.