vllm-project/tpu-inference

TPU inference for vLLM, with unified JAX and PyTorch support.

개요

vLLM TPU (tpu-inference 플러그인 기반)는 Google TPU에서 대규모 언어 모델을 실행할 수 있는 오픈소스 백엔드입니다. 단일 하강 경로로 JAX와 PyTorch 생태계를 통합하여 GPU에서 사용하는 동일한 vLLM 코드를 변경 없이 TPU에서 실행할 수 있습니다.

주요 기능

  • JAX + PyTorch 통합 지원 – 모델을 (두 프레임워크 중 하나로) 한 번 작성하면 TPU에서 실행할 수 있습니다.
  • vLLM 호환 사용자 경험 – 일반 vLLM 서버와 동일한 CLI, 텔레메트리, API를 제공합니다.
  • 성능 기능 – 비동기 스케줄러, 청크 프리필, KV 캐시 오프로드, LoRA 지원, 멀티모달 입력, 투기적 디코딩(Eagle3, N-gram, DFlash), 접두사 캐싱, 단일 프로그램 다중 데이터 등(모두 지원 매트릭스에서 Passing으로 표시).
  • 병렬 처리 – 파이프라인(PP), 데이터(DP), 전문가(EP), 텐서(TP) 병렬 처리는 단일 호스트에서 작동. 멀티 호스트 변형은 아직 실험적입니다.
  • 양자화 – v7 TPU에서 FP4/FP8 압축 텐서에 대한 초기 지원(현재 테스트되지 않음).

대상 사용자

  • TPU 하드웨어에서 최첨단 LLM을 서빙하거나 미세 조정하려는 연구자 및 엔지니어.
  • GPU에서 vLLM을 이미 사용 중이며 최소한의 코드 변경으로 TPU로 확장하려는 팀.
  • 오픈소스에서 TPU 추론의 성능 한계를 넓히는 데 관심이 있는 모든 사람.

시작하기

  1. 문서의 빠른 시작 가이드를 따르세요: https://docs.vllm.ai/projects/tpu/en/latest/getting_started/quickstart/.
  2. tpu-inference 플러그인을 설치합니다(지침은 문서에 있음).
  3. 지원되는 TPU 세대를 선택 – 권장 v7x, v5e, v6e; 이전 v3/v4/v5p는 실험적입니다.
  4. 권장 모델(링크된 페이지 참조) 중 하나를 사용하여 설정을 확인합니다.

지원 하드웨어 및 모델

  • TPU 세대: v7x(Ironwood) 및 v6e(Trillium)가 주요 대상; v5e도 권장.
  • 테스트된 모델(모든 단위, 정확성, 성능 테스트 통과):
    • Google Gemma-4(다양한 크기)
    • Google Gemma-3-27B-it
    • Meta Llama-3.1-8B-Instruct, Llama-3.3-70B-Instruct
    • Qwen 3-30B-A3B, Qwen 3-32B, Qwen 3-4B, Qwen 3-Coder-480B-A35B-Instruct, Qwen 3.5-397B-A17B 등.
  • 실험적 또는 테스트되지 않은 모델은 지원 매트릭스에 ❓ 또는 ❌ 표시로 나열됩니다.

커뮤니티 및 기여

  • 이슈 트래커에는 12개의 오픈 버그, 8개의 good-first-issues 및 기타 라벨이 있어 초보자를 돕습니다.
  • vLLM Slack(#sig-tpu) 또는 사용자 포럼에 참여하여 도움을 받으세요.
  • GitHub 저장소를 통해 기여 – 많은 개선 및 자동 생성 이슈가 쉽게 참여할 수 있도록 라벨링되어 있습니다.

추가 리소스

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트