theroyallab/tabbyAPI

The official API server for Exllama. OAI compatible, lightweight, and fast.

解決する課題

TabbyAPIは、大規模言語モデル (LLM) をWebサービスとして提供する方法を提供します。これにより、ユーザーはコマンドラインインターフェースや重いGUIを直接操作するのではなく、APIを通じてテキストを生成できるようになります。これは特に、ExllamaV3バックエンドの公式APIサーバーとして機能します。

仕組み

FastAPI上に構築されたTabbyAPIは、ExllamaV3バックエンドをラップしてモデルの読み込みと推論を処理します。OpenAI互換のAPIを実装しているため、多くのアプリケーションでOpenAIサービスのドロップインリプレースメントとして使用できます。連続バッチ処理 (continuous batching) やページド・アテンション (paged attention、Nvidia Ampere GPU以降向け)、および速度向上のためのドラフトモデルを使用した推測デコード (speculative decoding) といった高度な推論技術をサポートしています。

対象ユーザー

ローカル環境や自身のハードウェアでLLMを実行し、標準化されたAPIを通じて他のアプリケーションから利用できるようにしたい愛好家や開発者向けに設計されています。

ハイライト

  • OpenAI互換性: OpenAI互換APIを使用しているため、統合が容易です。
  • 高度な推論: 連続バッチ処理、ページド・アテンション、推測デコードをサポート。
  • 柔軟なフォーマット: JSON schema、Regex、EBNFのサポートに加え、チャット補完用のJinja2テンプレートエンジンを搭載。
  • モデル管理: HuggingFaceからのモデルの読み込み、アンロード、ダウンロードを直接処理。
  • 拡張機能: 埋め込みモデル (embedding models) およびOAIスタイルのツール/関数呼び出し (tool/function calling) をサポート。

関連

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