EricLBuehler/candle-vllm

Efficent platform for inference and serving local LLMs including an OpenAI compatible API server.

解決する課題

Candle-vLLMは、ローカルで大型言語モデル(LLM)を動作させ、提供するための高性能プラットフォームを提供します。本プロジェクトは、OpenAI互換API、組み込みWebインターフェース、および利用可能なハードウェア上で大規模モデルを処理するための高度なメモリ最適化技術を提供することで、本番環境向けの推論サーバーのデプロイにおける複雑さを解決します。

動作原理

Candleフレームワークを基盤として、本プロジェクトはスループットを最大化し、メモリ使用量を削減するために、いくつかの業界標準の最適化技術を実装しています:

  • メモリ管理: 効率的なKVキャッシュ管理のためにPagedAttentionを使用し、2〜4ビットのKVキャッシュ圧縮を強力に行う「TurboQuant」をサポートし、コンテキストウィンドウを最大4.7倍まで拡張します。
  • 実行の最適化: トークン生成を高速化するために、連続バッチ処理、CUDA Graphs、およびネイティブのFlash Attention/FlashInferを採用しています。
  • ハードウェアの柔軟性: CUDA (Linux) と Metal (macOS) をサポートしており、同じコードベースを異なるプラットフォームで実行できます。
  • スケーラビリティ: 複数GPU(マルチプロセスまたはマルチスレッド)でのテンソル並列処理を可能にし、TCPベースの調整により複数マシン間で推論を分散します。
  • 量子化: GGUF、GPTQ、AWQ、Marlin、およびFP8/FP4などの様々なフォーマットをサポートし、オンザフライでのインシチュ量子化を実行する機能を持っています。

対象ユーザー

本ツールは、NVIDIA GPUまたはApple Siliconをターゲットとし、本番環境グレードの性能でローカルにLLMを提供する必要がある開発者や研究者のために設計されています。

ハイライト

  • OpenAI互換: すぐに使用できるAPIサーバーとChatGPTスタイルのWeb UIを備えています。
  • クロスプラットフォーム: CUDAとMetalの両方をネイティブサポートしています。
  • 高度な圧縮: TurboQuant KVキャッシュ圧縮により、メモリオーバーヘッドを大幅に削減します。
  • 投機的デコーディング: 組み込みのMulti-Token Prediction (MTP) と外部のDFlash2ドラフトモデルの両方をサポートし、生成を高速化します。
  • エンタープライズスケーリング: MPIを必要とせずに、マルチノード推論機能を実現します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト