여러 특화 모델이 같은 문서를 읽으면 GPU 연산이 반복될 수 있습니다. 코드를 만드는 모델과 이를 검사하는 모델이 같은 지시와 대화 기록을 받아도, 가중치가 다르면 앞선 모델이 계산한 내부 상태를 그대로 쓰기 어렵습니다. 입력 텍스트가 같다는 사실만으로 계산 결과의 호환성이 보장되지는 않기 때문입니다.
시카고대와 Microsoft가 함께 발표한 DroidSpeak는 이 중복을 어디까지 줄일 수 있는지 다룹니다[1]. 같은 기반 모델에서 미세조정한 모델 쌍을 분석해 일부 레이어의 KV 상태를 재사용하고, 필요한 구간은 수신 모델에서 다시 계산합니다. 목표는 모든 계산을 생략하는 것이 아니라 측정한 품질을 유지하면서 프리필 비용을 줄이는 것입니다.
일반적인 동일 모델의 캐시 적중과는 구분해야 합니다. 논문의 적용 범위는 같은 기반 모델에서 파생된 경우이며, 그 안에서도 모든 쌍이 잘 작동한다고 보장하지 않습니다. 구조만 같으면 아무 모델의 캐시나 사용할 수 있는 기술이 아니라, 특정 송신 모델과 수신 모델 및 작업 분포를 검증한 뒤 사용하는 근사 방식입니다.
같은 텍스트와 다른 내부 상태
트랜스포머는 프리필에서 입력을 처리하고 이후 디코딩에 사용할 키와 값 텐서를 만듭니다. 이 값은 입력뿐 아니라 모델 가중치와 중간 표현에 영향을 받습니다. 미세조정으로 특정 작업의 성능이 좋아졌다면 그 능력을 유지하는 데 필요한 표현도 달라졌을 수 있습니다.
수신 모델이 송신 모델의 모든 KV 레이어를 받아 쓰면 많은 연산을 건너뛸 수 있습니다. 그러나 자신의 가중치로 계산했을 때와 다른 상태를 바탕으로 답을 생성합니다. 논문은 이런 직접 대체에서 품질이 크게 떨어지는 경우를 확인합니다. 캐시가 오류 없이 빠르게 도착했다는 사실과 의도한 추론을 대신할 수 있다는 사실은 다릅니다.
이는 고정된 모델의 반복 프롬프트를 찾거나 동일한 복제본 사이에서 정확한 상태를 이동하는 문제와 다릅니다. DroidSpeak는 가중치가 다른 모델 사이에 근사를 허용하고, 그 결과를 작업 지표로 평가합니다. 캐시를 잘 저장하고 전달하는 것에 더해 근사의 영향을 확인해야 합니다.
운영 시험에서도 데이터 무결성, 순서와 전송 완료를 확인하는 것에 더해, 바뀐 상태에서 나온 답이 서비스의 품질 요구를 만족하는지 검증해야 합니다. 캐시를 손상 없이 전달했는지 확인하는 전송 체크섬만으로는 답의 품질을 판단할 수 없습니다.
레이어마다 다른 재사용 민감도
연구진은 질의응답, 요약과 코드 완성 데이터셋에서 여덟 모델 쌍을 시험합니다. 특정 레이어만 송신 모델의 KV를 사용하고 나머지를 재계산했을 때 품질이 어떻게 바뀌는지 봅니다. 결과는 레이어마다 균일하지 않고 일부 레이어에서 변화가 크게 나타납니다.
시험한 쌍에서는 평균적으로 약 11%의 레이어가 민감한 것으로 분류됩니다. 이는 해당 민감도 시험의 관측값이지 트랜스포머 전체에 적용되는 정리는 아닙니다. 최종 실행에서 모든 모델의 정확히 11%만 다시 계산한다는 의미도 아닙니다. 실제 재계산에는 레이어 사이의 의존 관계가 추가로 작용합니다.
같은 모델 쌍에서는 시험 입력이 달라져도 민감한 레이어의 위치가 비교적 안정적으로 나타납니다. 따라서 요청마다 비싼 탐색을 반복하기보다 배포 전에 적절한 구성을 찾아둘 수 있습니다. 실행 시에는 측정해 둔 선택지 중 연산량과 품질 조건에 맞는 구성을 고릅니다.
다만 재사용 방향도 구성의 일부입니다. 한 특화 모델에서 다른 모델로 옮기는 결과가 반대 방향의 결과와 같다고 볼 수 없습니다. 기반 모델 이름만 같은 것으로 캐시 관계를 정하지 말고, 실제 가중치 버전과 송수신 방향에 맞는 검증 정보를 함께 관리해야 합니다.
중간 레이어부터 다시 계산하기 위한 활성값
중간 레이어를 재계산하려면 전체 문맥에 대한 그 레이어의 입력 활성값이 필요합니다. 이미 만들어진 KV 상태만으로는 그 입력이 모두 제공되지 않습니다. 첫 레이어부터 다시 계산해 입력을 만들면 생략하려던 프리필의 상당 부분이 되살아납니다.
DroidSpeak는 재사용에서 재계산으로 바뀌는 지점의 활성 텐서를 송신 모델에서 받습니다. 논문에서는 이를 E 캐시라고 부릅니다. 이 값으로 선택한 구간의 계산을 시작할 수 있지만, 활성값 자체도 수신 모델이 직접 계산한 결과와는 차이가 있을 수 있습니다.
민감한 레이어만 여러 곳에서 따로 고르면 두 가지 비용이 생깁니다. 여러 시작점의 활성값을 저장하고 전송해야 하며, 송신 상태의 차이가 재계산에 들어오는 지점도 늘어납니다. 개별 시험에서 중요했던 레이어만 최소한으로 모으는 것이 전체 구성의 최선은 아닐 수 있습니다.
이에 연속된 레이어 묶음을 프로파일링합니다. 민감한 레이어 사이에 있는 덜 민감한 레이어도 함께 계산하면 새로운 시작점과 그에 따른 오차 유입을 피할 수 있습니다. 줄여야 할 대상은 단순한 레이어 개수보다 선택한 구간 전체의 지연과 품질 손실입니다.

품질을 실행 구성의 조건으로 만드는 프로파일링
오프라인 프로파일링은 대표 입력에서 여러 재계산 구성을 시험하고, 연산량별로 얻을 수 있는 품질을 기록합니다. 실행기는 품질 기준을 만족하는 선택지 중 비용이 적은 구성을 사용할 수 있습니다. 여기서 허용할 품질 손실은 서비스가 정해야 하며, 손실이 작다는 표현만으로 대신할 수 없습니다.
주요 평가 절차는 HotpotQA 문맥 50개로 프로파일링하고 시험 데이터셋에 구성을 적용합니다. 설명에는 5% 손실 기준이 등장하지만 온라인 서빙 비교에 제시한 쌍은 1% 이내 감소 구성을 사용합니다. 이 수치는 실험 설정이며 출력이 완전히 같거나 모든 개별 요청의 손실이 해당 범위에 갇힌다는 보장이 아닙니다.
평가 지표의 의미도 구분해야 합니다. 질의응답의 F1은 정답과의 겹침을, Rouge-L은 요약 텍스트의 중첩 특성을, 코드 유사도는 참조 코드와의 가까움을 평가합니다. 이들 중 하나만으로 모든 답의 사실성이나 모든 프로그램의 실행 정확성, 특정 고객의 요구가 그대로 유지됐다고 판단할 수는 없습니다.
프로파일링에는 시간이 듭니다. 32레이어 glue_sst2/conllpp 쌍의 상세 시험에서는 한 레이어 단위 탐색이 3.6시간, 두 레이어 묶음은 1시간, 세 레이어 묶음은 0.375시간입니다. 탐색 단위를 키우면 비용을 줄일 수 있지만, 시험한 쌍에서 품질과 비용의 관계가 비슷했다는 결과가 새 모델의 검증을 대신하지는 않습니다.

전송 순서가 결정하는 프리필 절감 효과
원격 상태는 수신 모델이 사용하기 전에 도착해야 합니다. 모든 캐시를 먼저 받은 뒤 계산을 시작하면 전송과 연산이 직렬로 이어져 절감한 계산 시간의 일부를 다시 기다리게 됩니다. 실제로 재사용할 KV만 보내면 낭비는 줄지만, 그것을 모두 받을 때까지 계산을 미루면 중첩할 여지가 남습니다.
필수 의존 관계는 더 좁습니다. 전환 지점의 활성값이 도착하면 수신 모델은 선택한 구간의 재계산을 시작할 수 있고, 그동안 다른 재사용 KV 레이어를 계속 받을 수 있습니다. 구현은 전송과 계산에 별도 CUDA 스트림을 사용해 이 중첩을 가능하게 합니다.
그렇다고 네트워크 비용이 없어지는 것은 아닙니다. 유용한 연산 뒤에 가릴 수 있는 부분을 늘리는 방식입니다. 네트워크가 느리거나 보낼 상태가 크면 전송이 계속 병목일 수 있고, 네트워크가 빠르면 추가 중첩으로 줄일 대기 자체가 작아집니다.
현재 런타임의 재계산 조정은 시스템 부하와 지연 목표를 사용합니다. 변하는 네트워크 대역폭까지 반영해 자동으로 정책을 바꾸는 것은 향후 과제로 남겨 둡니다. 여러 대역폭에서 중첩 효과를 시험한 결과와, 모든 네트워크 조건을 계속 추적하는 제어기가 구현됐다는 주장은 구분해야 합니다.
재사용을 기다리는 상태의 메모리 비용
다른 모델이 필요로 할 때 송신 상태가 남아 있어야 캐시를 재사용할 수 있습니다. KV 외에 선택한 전환 지점의 활성값도 유지해야 합니다. Llama 3.1 8B의 10K토큰 예시에서는 전체 KV에 약 1.2GB, 한 레이어 E에 약 0.08GB가 필요해 추가분이 약 6%입니다.
이 비율은 모든 모델의 고정값이 아닙니다. 텐서 크기, 정밀도, 어텐션 구조, 문맥 길이와 보관할 전환 지점 수에 따라 달라집니다. 여러 문맥과 가중치 버전의 상태를 함께 유지하면 재사용 가능성을 얻기 위해 점유하는 용량도 늘어납니다.
따라서 프리필 한 번의 시간 외에 캐시 수명을 봐야 합니다. 다른 모델이 사용하기 전에 퇴출되면 저장과 준비 비용을 지불하고도 기대한 이점을 얻지 못합니다. 너무 오래 두면 현재 실행 중인 요청에 필요한 상태를 밀어낼 수 있습니다. 실제 모델 간 재사용 간격을 바탕으로 보관 정책을 평가해야 합니다.
버전과 접근 권한도 별도의 운영 조건입니다. 캐시 식별자는 검증한 모델 상태와 재사용 방향을 구분해야 하며, 텍스트 해시나 모델 이름이 같다는 이유로 다른 고객의 비공개 문맥이 공유돼서는 안 됩니다. 이는 구조에서 도출되는 요구이며 논문이 완성된 보안 검증까지 제시했다는 뜻은 아닙니다.
A100 시험에서 확인한 범위
하드웨어는 각각 80GB A100 여덟 장을 가진 가상 머신 두 대이며 200Gbps InfiniBand로 연결합니다. 시험한 70B 모델은 한 GPU에 넣기 위해 4비트 AWQ 양자화를 사용합니다. 다른 정밀도의 배포와 품질이나 메모리 요구를 비교할 때 이 조건을 빼서는 안 됩니다.
보고한 프리필 개선은 모델 쌍과 데이터셋에 따라 1.7~3.1배이며 요약의 평균은 2.1배입니다. 여기에는 필요한 원격 상태 로딩과 계산이 포함됩니다. 수신 모델에서 프리필을 전부 수행하는 경우와의 비교이고, 모든 KV를 직접 받아 쓰는 방식은 품질 손실이 큰 다른 선택지입니다.
온라인 시험은 두 노드의 복제본에 라운드로빈으로 요청을 보내고 포아송 도착을 사용합니다. 전체 프리필 방식의 대기열이 급격히 늘어나는 구간을 피하는 지연 목표에서 2~4배 요청 처리량을 보고합니다. 네트워크 대역폭이 같은 배수로 늘거나 모든 에이전트 프로그램이 네 배 빨리 끝난다는 뜻은 아닙니다.
별도의 코드 에이전트 사례에서는 HumanEval 문제를 코더와 테스터가 처리합니다. 보고한 pass@1 52.5를 유지하는 구성에서 TTFT가 2.7배 개선되고 전체 완료 지연도 줄어듭니다. 애플리케이션 수준의 근거는 되지만 임의의 에이전트 팀과 모든 코딩 작업으로 보장 범위를 넓히지는 못합니다.
새로 검증해야 하는 모델과 입력 변화
가장 직접적인 한계는 가중치와 데이터 분포의 변화입니다. 특화 모델을 갱신하면 이미 프로파일링한 모델 쌍이 달라지고, 새로운 유형의 입력이 들어오면 민감한 레이어와 품질 손실도 달라질 수 있습니다. 논문은 주기적인 재프로파일링을 대응 방향으로 제시하며 자동 해결된 문제로 다루지 않습니다.
평가는 주로 두 모델 사이의 관계를 확인합니다. 한 모델이 근사 상태를 사용한 뒤 다른 모델이 그 결과를 다시 재사용하는 연결에서는 오차 누적을 별도로 확인해야 합니다. 쌍별 시험이 성공했다고 임의의 다단계 경로에서도 같은 품질이 유지되는 것은 아니며, 다수 모델의 공동 재사용 최적화는 향후 과제입니다.
실제 도입은 자주 반복되는 문맥과 버전이 안정된 모델 쌍에서 시작하는 것이 합리적입니다. 전체 프리필을 기준으로 작업별 결과를 비교하고, 문제가 생기면 완전 계산으로 돌아갈 수 있어야 합니다. 절약한 GPU 시간과 함께 프로파일링, 캐시 유지 및 원격 전송에 드는 비용도 측정해야 합니다.
DroidSpeak는 관련된 모델이 문맥 계산 전체를 반복하지 않고도 프리필 비용을 줄일 수 있음을 보여 줍니다. 다만 그 이점은 경험적으로 검증한 근사에 적절한 활성값과 전송 순서를 결합했을 때 생깁니다. 모델 간 캐시가 원래부터 호환된다고 생각하기보다, 품질을 확인하며 사용하는 최적화로 다뤄야 합니다.
출처와 저작권 안내
이 글은 한계와 부록을 포함한 NSDI 2026 최종 논문을 바탕으로 독립적으로 작성했습니다. 수치는 원문의 평가 결과이며 운영 조건은 이를 바탕으로 한 편집 분석입니다. 원문 저작권은 USENIX 출판 조건에 따라 저자에게 있으며 © 2026입니다. 도판은 설명된 원리와 공개 수치로 새로 만들었으며 원문 그림의 배치를 복제하지 않았습니다.