← 최신 논문
🤖 AI

Qrita: High-performance Top-k and Top-p using Pivot-based Truncation and Selection

이 논문은 기존 GPU 커널 대비 최대 1.4 배의 처리량 향상과 50% 의 메모리 감소를 달성하기 위해 피벗 기반의 잘라내기 및 선택을 활용하는 대규모 어휘를 위한 고성능 결정론적 Top-k 및 Top-p 샘플링 알고리즘인 Qrita 를 소개하며, 이는 vLLM 의 기본 샘플러로 채택되게 했습니다.

원저자: Jongseok Park, Sunga Kim, Alvin Cheung, Ion Stoica

게시일 2026-05-27
📖 3 분 읽기☕ 가벼운 읽기

원저자: Jongseok Park, Sunga Kim, Alvin Cheung, Ion Stoica

원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

당신이 100,000 가지 다른 재료 (어휘) 를 보유한 식료품창고를 갖춘 거대한 주방 (대규모 언어 모델) 을 운영하는 셰프라고 상상해 보세요. 매번 요리를 할 때마다 (단어를 생성할 때마다), 맛있는 요리를 만들되 지루하지 않도록 그 거대한 식료품창고에서 최고의 재료 몇 가지를 골라야 합니다.

AI 세계에서는 이 선택 과정을 Top-k(최고의 k 개 재료를 선택)와 Top-p(특정 '맛 점수'를 합산하는 가장 작은 재료 그룹을 선택)라고 부릅니다.

문제: 느리고 지저분한 주방

현재 대부분의 주방은 이 작업을 처리하기 위해 100,000 가지 재료를 모두 거대한 조리대 위에 쏟아부은 뒤, '맛 점수'를 기준으로 최상위에서 최하위까지 정렬한 다음 최상위 재료들을 가져옵니다.

  • 문제점: 100,000 개의 항목을 정렬하는 것은 느리고 지저분합니다. 이는 엄청난 조리대 공간 (메모리) 을 차지하며 셰프의 손이 피로해집니다 (연산 오버헤드).
  • 대안: 일부 셰프는 그저 좋을지도 모를 재료를 무작위로 한 줌 집어보려 합니다. 하지만 이는 위험합니다. 때로는 최고의 재료를 놓치고, 때로는 요리를 할 때마다 다른 결과가 나오기 때문입니다 (비결정적). 이는 레시피를 정확히 재현해야 할 때 나쁜 일입니다.

해결책: Qrita (스마트 부주방장)

이 논문은 재료를 고르는 새로운 고속 방법인 Qrita를 소개합니다. Qrita 는 지저분한 정렬을 완전히 건너뛰기 위해 두 가지 영리한 트릭을 사용하는 초지능 부주방장이라고 생각하세요.

트릭 1: "가우시안 시그마-트런케이션" (노이즈 필터)

100,000 가지 재료로 이루어진 식료품창고 중 99,000 개는 그저 '노이즈'(대략적으로 같은 밍밍한 맛을 가진 소금, 설탕, 밀가루 등) 라고 상상해 보세요. 오직 수백 개만이 '스타 재료'(트러플이나 심프란 등) 일 뿐입니다.

Qrita 는 모든 병을 하나씩 살펴보는 대신 빠른 냄새 테스트를 수행합니다. 식료품창고의 평균 맛과 '매운맛'(표준 편차) 을 계산한 후 선을 그립니다. "이 선 아래에 있는 것은 노이즈일 뿐이니 보지 않아도 됩니다."

  • 결과: 식료품창고의 99% 를 즉시 버리고 약 200 개의 흥미로운 병만 남깁니다. 이는 단일하고 번개처럼 빠른 통과로 이루어집니다.

트릭 2: "쿼테너리 피벗 검색" (4 분할)

이제 셰프는 200 개의 흥미로운 재료로 이루어진 작은 더미를 가지고 있습니다. 여전히 정확한 상위 50 개를 찾아야 합니다.

  • 구식 방법: 하나씩 확인하거나 (너무 느림) 더미를 반으로 나눕니다 (이진 검색).
  • Qrita 의 방법: 더미를 반으로 나누는 대신, Qrita 는 한 번에 개의 섹션으로 나눕니다. *"최고의 재료가 첫 번째 4 분할, 두 번째, 세 번째, 네 번째 중 어디에 있나요?"*라고 묻습니다.
  • 보너스: 중복 재료에 대한 특별한 규칙도 있습니다. '심프란' 병 세 개가 정확히 같은 점수를 가지면, Qrita 는 레시피가 매번 동일하도록 (결정적) 몇 개를 보관해야 하는지 정확히 알고 있습니다. 이는 셰프가 동일한 병 사이에서 결정하기 위해 끝없는 루프에 빠지는 것을 방지합니다.

왜 중요한가 (결과)

저자들은 Triton(그래픽 카드/GPU 프로그래밍을 위한 언어)이라는 특수 도구를 사용하여 Qrita 를 구축하고, vLLM 및 SGLang 과 같은 주요 AI 엔진에서 사용하는 현재 최선 방법들과 테스트했습니다.

  • 속도: Qrita 는 실제 서비스 시나리오에서 최대 1.4 배 빠르고, 순수 속도 테스트에서는 최대 2 배 빠릅니다.
  • 메모리: 100,000 개의 항목으로 구성된 전체 정렬 목록을 저장할 필요가 없기 때문에 메모리를 절반만 사용합니다.
  • 정확도: 추측하는 일부 빠른 방법과 달리, Qrita 는 느리고 완벽한 정렬 방법과 정확히 동일한 결과를 제공합니다. 출력을 변경하지 않고 훨씬 빠르게 찾을 뿐입니다.

결론

Qrita 는 세상의 모든 향신료를 수동으로 정렬하는 셰프에서, 지루한 것을 즉시 무시하고 흥미로운 것을 한 번에 네 더미로 나누며 중복을 완벽하게 처리하는 스마트 어시스턴트로 업그레이드하는 것과 같습니다. 이는 답변의 품질을 변경하지 않고 AI 생성을 더 빠르고 효율적으로 만듭니다.

*참고: 논문은 Qrita 가 AI 모델을 실행하는 인기 도구인 vLLM의 GPU 경로에 대한 기본 방법이 되었으며, 코드는 다른 사람들이 사용할 수 있도록 공개되었다고 언급합니다.*

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →