guoqingbao/xinfer
Blazing-fast LLM inference in pure Rust. No PyTorch and Python runtime.
해결하는 문제
xInfer는 Python과 PyTorch의 오버헤드를 제거하기 위해 설계된 고성능 LLM 추론 엔진입니다. 최소한의 메모리 사용량과 높은 처리량으로 대규모 모델을 실행할 수 있는 포터블하고 프로덕션 준비된 환경을 제공하며, 특히 소비자용 GPU에서 대규모 MoE(Mixture-of-Experts) 모델을 실행할 수 있도록 합니다.
작동 방식
전체적으로 Rust로 구현된 xInfer는 Python 런타임을 우회하는 네이티브 백엔드를 구현합니다. 네이티브 Flash Attention, FlashInfer, CUDA Graphs, 연속 배치와 같은 고급 최적화 기법을 활용합니다. 메모리 제약을 해결하기 위해 "TurboQuant"(2–4비트 KV 캐시 압축)을 사용하며, NVFP4, FP8, GGUF 등의 다양한 양자화 형식을 지원합니다. 또한 Prefill-Decode Disaggregation을 지원하여 프롬프트 처리(prefill)와 토큰 생성(decode)을 서로 다른 GPU나 머신에 분리해 스탠스를 방지할 수 있습니다.
대상 사용자
OpenAI 및 Anthropic API와 호환되며, 제한된 하드웨어에서 대규모 모델을 배포하고자 하는 개발자 및 운영자에게 적합합니다. 빠르고 가벼우며 크로스플랫폼(Linux, Windows, macOS) 지원하는 추론 서버가 필요한 사용자에게 적합합니다.
주요 특징
- Python 의존성 없음: 성능과 포터블성을 향상시키는 순수 Rust 백엔드.
- 강력한 KV 압축: TurboQuant으로 컨텍스트 길이를 최대 4.3배까지 확장하여 30B 이상의 모델을 단일 24/32GB GPU에서 실행 가능하게 합니다.
- 광범위한 모델 지원: Llama, Qwen, Mistral, GLM, DeepSeek, Phi, Gemma를 포함한 멀티모달 버전도 지원합니다.
- 프로덕션 기능: 내장된 ChatGPT 스타일 웹 UI, MCP 도구 호출, 가이드드 디코딩을 통한 구조화된 출력을 제공합니다.
- 멀티노드 스케일링: MPI를 필요로 하지 않고, TCP 기반 NCCL 부트스트랩을 사용해 여러 머신 간 텐서 병렬을 지원합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트