llama.cpp 프로젝트가 2026년 10월 14일 빌드 b11597을 내놓았다. 문장 임베딩처럼 시퀀스당 벡터 하나만 뽑는 풀링 임베딩 컨텍스트에서 언어 모델(LM) 헤드 계산을 건너뛰도록 한 변경(#30445)이 들어갔다.1
약 20분 뒤 나온 b11598에는 laguna 모델용 YaRN 베타 메타데이터를 불러오는 수정(#30331)이 담겼다. 두 빌드 모두 macOS, Linux, Windows, Android, iOS용 바이너리가 함께 올라왔다.1,2
임베딩 추출에서 로짓 계산 제거
풀링 임베딩을 추출하는 컨텍스트는 시퀀스마다 벡터 하나를 출력한다. 그런데 기존에는 모든 모델이 LM 헤드를 그래프에 넣어, 토큰마다 어휘 크기(n_vocab)만큼의 로짓을 계산했고 컨텍스트는 이 값을 담을 호스트 버퍼도 유지했다. 이번 변경으로 풀링 임베딩 컨텍스트는 토큰마다 어휘 크기만큼 로짓을 계산하지 않는다. 연산량이나 속도를 비교한 측정치는 공개되지 않았다.
풀링 임베딩 컨텍스트에서는 로짓 계산을 그래프에 넣지 않는다. 임베딩을 추출하더라도 풀링 유형이 NONE이면 기존처럼 로짓을 계산한다. 풀링 컨텍스트에서는 이 설정을 바꾸면 그래프 모양이 달라지므로, 설정을 바꿀 때 그래프 자원을 다시 예약하도록 했다.
최종 구조에서는 LM 헤드를 그래프에 넣는 전용 함수 build_logits()를 새로 두었고, set_outputs()는 출력을 다시 표시하는 일만 맡는다.
build_sampling()이 t_logits를 읽기 때문에 build_logits()를 먼저 호출한다. 풀링 컨텍스트는 로짓이 없어 샘플링 계층을 만들지 않는다.1
laguna 모델 YaRN 메타데이터
b11598은 laguna 모델을 로드할 때 YaRN 베타 메타데이터를 읽도록 했다. laguna 모델이 무엇인지, 이 수정으로 동작이 어떻게 달라지는지는 릴리스 설명에 나와 있지 않다.2
출처
- ggml-org/llama.cpp b11597 github.com
- ggml-org/llama.cpp b11598 github.com