llama.cpp가 Kimi-K3.1-Pro를 로컬에서 실행할 수 있도록 모델 지원을 추가했다. 해당 모델을 구동하려는 개발자는 기존 모델 변환 기반을 활용할 수 있고, 새로 도입된 입력 선택 기능에 맞춰 캐시 메모리도 함께 살펴야 한다.

1. 기존 구조 위에 입력 선택 기능을 얹었다

b12180 릴리스는 K3의 실행 그래프, 연산 간 연결 순서를 나타내는 구조와 변환기를 재사용하면서 Kimi-K3.1-Pro의 구조를 지원한다. 모든 입력을 참조하던 어텐션, 입력 간 관련도를 계산하는 방식의 층을, 참조할 키를 인덱서가 먼저 고르는 DSA, 일부 키만 선택하는 어텐션 방식으로 바꾸는 방식이다. 인덱서는 어느 입력에 주목할지 추리는 검색 담당에 해당한다.

이번 텍스트 체크포인트, 모델의 학습 상태를 저장한 파일에서는 전체 층 가운데 일부에만 인덱서가 들어가며, 기존의 다른 어텐션 층은 그대로 유지된다. 릴리스가 제시한 구성은 다음과 같다.

표: Kimi-K3.1-Pro 텍스트 체크포인트의 인덱서 구성

조건: Kimi-K3.1-Pro 텍스트 체크포인트

기존 구조 위에 입력 선택 기능을 얹었다
항목값
전체 층 수93
DSA 층 수24
인덱서 계산 갈래(헤드) 수32
인덱서 키 길이128
선택할 키 수2048
DSA 층당 인덱서 텐서 수4

이 구성은 모델 전체를 새 방식으로 교체하기보다 기존 층과 인덱서가 있는 층을 함께 운용한다는 점을 보여 준다. 표의 값은 같은 체크포인트의 구조 설정이며, 뒤에서 다룰 검증 결과와는 용도가 다르다.

2. 계산 경로를 재사용하는 대신 캐시를 더한다

구현은 선택한 키만 따로 모으는 대신 캐시 전체에 참조 대상을 가리는 마스크, 계산 대상에서 제외할 항목을 표시하는 표지를 적용해, 선택된 부분을 중심으로 계산하는 기존 희소 플래시 어텐션, 적은 항목만 대상으로 빠르게 계산하는 방식의 경로를 재사용한다. 메모리에는 DSA 층의 키 전용 캐시와 인덱서 키 캐시를 두고, 기존 층이 앞선 계산에서 이어받는 상태도 함께 유지한다.

개발자가 얻는 것은 인덱서의 선택을 기존 희소 계산 경로에 연결할 수 있다는 점이다. 그 대가로 층별 인덱서 텐서와 키 캐시를 추가로 관리해야 하며, 희소 경로 밖에서는 마스크를 적용하더라도 캐시 전체의 키와 질의, 모델이 입력에 대해 내는 검색 벡터를 대조하는 계산 비용이 남는다.

따라서 이 변경을 도입할 때는 모델 지원 여부와 함께 실제 실행이 희소 경로를 활용하는지 살피는 것이 중요하다. 선택 대상의 수를 줄이는 구조와 실행 시 수행되는 계산의 범위를 함께 봐야 자원 배분을 판단할 수 있다.

3. 변환과 양자화에서도 선택 정확도를 챙겼다

변환기는 체크포인트에 담긴 인덱서 구성을 읽어 내부 설정으로 옮긴다. 인덱서를 배치할 층 목록이 기존 완전 어텐션 층과 정확히 일치하는지도 확인하므로, 모델 구조를 옮기는 과정에 대응 관계를 검사하는 절차가 포함된다.

선택 계산에 쓰는 세 종류의 인덱서 텐서는 양자화, 수를 줄여 표현 정밀도를 낮추는 처리 설정을 덮어쓰는 대상에서 제외했다. 릴리스는 상위 키 선택이 이 텐서들의 정밀도에 민감하다는 점을 이유로 들었다. 이는 선택 정확도를 고려한 처리로, 일반적인 양자화 설정을 인덱서에도 일괄 적용하는 방식과 차이가 있다.

반면 계산을 나눠 맡는 전문가 가중치, 특정 계산 담당 모듈에 속한 학습값은 기존 K3와 마찬가지로 양자화 형식인 MXFP4를 유지한 채 다시 묶으며, 역양자화, 압축된 수 표현을 원래 정밀도로 복원하는 처리를 하지 않는다. 모델 내부에서도 인덱서와 전문가 가중치의 처리 방식을 달리한 것이다.

4. 검증은 변환 일치와 선택 동작에 초점을 뒀다

릴리스 노트에 따르면 허깅페이스 체크포인트에서 떼어 낸 8개 층을 대조한 결과, 텐서 38개가 정확히 일치했다. 인덱서 메타데이터, 설정을 설명하는 부가 정보도 설정과 맞는지 확인했고, 아키텍처, 모델 구성의 설계 방식에 관한 테스트용 사례와 전체 아키텍처 테스트 묶음도 통과했다.

선택 결과는 완전 어텐션, 입력의 모든 위치를 참조하는 방식을 기준으로 비교했다. 선택 수가 컨텍스트 길이보다 클 때는 언어 예측 오차를 나타내는 퍼플렉서티(PPL)가 같았고, 선택 수를 컨텍스트 길이보다 작게 강제하면 결과가 달라졌다. 이 검증은 변환된 가중치뿐 아니라 선택 범위를 바꿨을 때의 동작까지 확인했다는 의미가 있다.

변환기는 비전 타워, 이미지 특징을 처리하는 모델 구성부와 시각 정보 연결 구성요소를 건너뛰므로 이번 지원은 텍스트에 한정된다. 릴리스에는 처리 속도나 메모리 사용량의 측정값, 구체적인 PPL 수치는 제시되지 않았다.

b12180의 핵심은 새 모델의 입력 선택 구조를 기존 실행 기반에 연결한 것으로, 도입 판단에는 모델 호환성과 희소 계산 경로·캐시 비용을 함께 살펴야 한다.