본문으로 건너뛰기
Hacker News - LLM조회 11

QORA-LLM-2B: 순수 Rust로 구현된 BitNet b1.58 기반 3진법 추론 엔진

QORA-LLM-2B는 Microsoft의 BitNet b1.58 모델을 기반으로, Python이나 CUDA 없이 순수 Rust만 사용하여 곱셈 없는 3진법 추론을 수행하는 초경량 엔진이다.

섹션별 상세

01
순수 Rust(2024 에디션)로 작성되어 Python 런타임이나 CUDA 프레임워크 없이도 단일 실행 파일로 작동한다. Windows, Linux, macOS를 모두 지원하며 외부 라이브러리 의존성을 최소화하여 높은 이식성과 보안성을 확보했다.
bash
# Chat mode (default)
qor2b --prompt "Explain how ternary neural networks work"

# With token limit
qor2b --prompt "Write a haiku about Rust" --max-tokens 100

# Raw text completion (no chat template)
qor2b --prompt "Once upon a time" --raw

QORA-LLM-2B 실행을 위한 주요 CLI 명령어 예시

02
BitNet b1.58 아키텍처를 채택하여 가중치를 2비트에 패킹된 3진법 값으로 관리한다. 행렬-벡터 곱셈(GEMV) 시 가중치가 +1이면 입력값을 더하고, -1이면 빼며, 0이면 연산을 건너뛰는 방식을 사용하여 부동 소수점 곱셈 연산을 완전히 제거했다.
03
표준 LLaMA 구조를 변형한 SubLN(Sub-Layer Normalization) 패턴을 적용했다. 레이어당 4개의 RMSNorm을 배치하고, 20개의 Query 헤드와 5개의 KV 헤드를 사용하는 GQA(Grouped Query Attention) 구조를 통해 메모리 효율과 추론 속도를 동시에 개선했다.
rust
// residual = x
// x = input_layernorm(x) # RMSNorm [2560]
// q, k, v = q/k/v_proj(x) # Ternary linear (add/sub only)
// q, k = apply_rope(q, k)
// attn = attention(q, k, v) # GQA: 20Q/5KV
// attn = attn_sub_norm(attn) # SubLN RMSNorm [2560]
// attn = o_proj(attn) # Ternary linear
// x = residual + attn

BitNet b1.58의 SubLN 패턴이 적용된 Attention 레이어 추론 로직

04
실행 시 시스템의 가용 RAM과 CPU 스레드를 실시간으로 감지하는 지능형 시스템 인식 기능을 갖췄다. 가용 메모리 용량에 따라 최대 생성 토큰 수를 2048에서 8192까지 동적으로 조정하여 시스템 안정성을 극대화한다.
05
자체적인 .qor2b 이진 포맷을 사용하여 모델 로딩 속도를 높이고 용량을 최적화했다. HuggingFace의 4.8GB bf16 Safetensors 모델을 약 2분 만에 1.13GB 크기의 3진법 바이너리로 변환하는 기능을 내장하고 있다.
06
i5-11500 CPU 환경에서 초당 약 2.5 토큰의 디코딩 속도를 기록했다. 이는 기존 4비트 양자화 모델인 QORA-3B(0.86 tok/s)보다 약 3배 빠른 속도이며, RAM 사용량도 1.5GB 수준으로 매우 낮다.

용어 해설

3진법 양자화(Ternary Quantization)
가중치를 {-1, 0, +1}의 세 가지 값으로만 표현하는 기술이다. 부동 소수점 곱셈 연산을 단순한 가감산으로 대체하여 연산 복잡도를 획기적으로 낮추고 메모리 사용량을 줄이는 핵심 메커니즘이다.
행렬-벡터 곱셈(GEMV)
신경망의 추론 과정에서 행렬과 벡터를 곱하는 핵심 연산이다. BitNet 아키텍처에서는 가중치가 3진법이므로 곱셈 없이 입력값을 더하거나 빼는 것만으로 이 연산을 수행한다.
서브 레이어 정규화(SubLN)
표준 Transformer 구조와 달리 각 하위 레이어의 출력 프로젝션 직전에 추가적인 RMSNorm을 수행하는 방식이다. 3진법 양자화 모델의 학습 안정성과 성능을 유지하는 데 중요한 역할을 한다.
그룹 쿼리 어텐션(GQA)
여러 개의 Query 헤드가 소수의 KV 헤드를 공유하는 방식이다. Multi-Head Attention 대비 메모리 대역폭 요구량을 줄여 추론 속도를 높이면서도 성능 저하를 최소화한다.
제곱 ReLU(Squared ReLU)
ReLU 활성화 함수의 결과값을 제곱하여 사용하는 방식이다. BitNet b1.58 모델에서 비선형성을 강화하기 위해 채택되었으며, 특정 하드웨어 환경에서 연산 효율을 높인다.

기술

  • Rust
  • BitNet b1.58
  • LLaMA 3 Tokenizer
  • Rayon
  • Safetensors

활용 사례

  • 저사양 CPU 기반 챗봇
  • 오프라인 텍스트 생성 도구
  • 경량 임베디드 AI 시스템

언급된 리소스

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 03. 12.수집 2026. 03. 12.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.