server: 새로운 토큰이 존재할 때 불필요한 체크포인트 복구 방지 ([#24110](https://github.com/ggml-org/lla
요약
llama.cpp의 server 모듈에서 새로운 토큰이 존재할 경우 불필요한 체크포인트 복구가 발생하는 문제를 해결했습니다. 새로운 토큰이 없을 때만 조건부로 계산을 적용하여 중복되는 KV 상태 복구를 방지합니다.
핵심 포인트
- 새로운 토큰 존재 시 불필요한 체크포인트 복구 방지
- KV 상태 복구 최적화를 통한 효율성 개선
- n_past와 task.n_tokens() 비교를 통한 조건부 로직 적용
- macOS, Linux 등 다양한 플랫폼용 바이너리 업데이트
server: 새로운 토큰이 존재할 때 불필요한 체크포인트 복구 방지 (#24110)
- server: 새로운 토큰이 존재할 때 불필요한 체크포인트 복구 방지
pos_min_thold 계산 시, 새로운 토큰이 존재하지 않을 때 최소 하나의 토큰이 로짓 (logits)을 위해 평가되도록 무조건적으로 1을 뺍니다. 하지만 요청에 캐시된 접두사 (cached prefix)를 넘어서는 새로운 토큰이 포함되어 있는 경우, 이 -1 처리는 지나치게 보수적이며 불필요한 체크포인트 복구를 유발할 수 있습니다.
실제로 수행할 작업이 있을 때 중복되는 KV 상태 복구를 피하기 위해, n_past >= task.n_tokens() (새로운 토큰 없음)인 경우에만 조건부로 -1을 적용합니다.
- cont : ref 추가
Co-authored-By: Georgi Gerganov ggerganov@gmail.com
macOS/iOS:
- macOS Apple Silicon (arm64)
- macOS Apple Silicon (arm64, KleidiAI 활성화) 비활성화됨
- macOS Intel (x64)
- iOS XCFramework
Linux:
<strong>Linux:</strong>
- Ubuntu x64 (CPU)
- Ubuntu arm64 (CPU)
- Ubuntu s390x (CPU)
- Ubuntu x64 (Vulkan)
- Ubuntu arm64 (Vulkan)
- Ubuntu x64 (ROCm 7.2)
- Ubuntu x64 (OpenVINO)
- Ubuntu x64 (SYCL FP32) DISABLED
<strong>Android:</strong>
<strong>Windows:</strong>
<strong>Windows:</strong>
- Windows x64 (CPU)
- Windows arm64 (CPU)
- Windows x64 (CUDA 12) - CUDA 12.4 DLLs
- Windows x64 (CUDA 13) - CUDA 13.3 DLLs
- Windows x64 (Vulkan)
- Windows x64 (SYCL) DISABLED
- Windows x64 (HIP)
openEuler:
- DISABLED
- openEuler x86 (310p)
- openEuler x86 (910b, ACL Graph)
- openEuler aarch64 (310p)
- openEuler aarch64 (910b, ACL Graph)
UI:
AI 자동 생성 콘텐츠
본 콘텐츠는 llama.cpp Releases의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기