このプロジェクトについて

TextGenは、大規模言語モデルをローカルで実行するためのオープンソースのデスクトップアプリケーションです。外部サービスにデータを送信せずにChatGPTのようなインターフェースを求めるプライバシー重視のユーザー向けに設計されています。プロジェクトは、テレメトリ、外部リソース、リモート更新リクエストが一切ない完全オフラインであると述べています。 セットアップは簡単です。Linux、Windows、macOS向けのポータブルビルドがリリースとして公開されており、CUDA、Vulkan、ROCm、CPUのみのバリアントとすべての依存関係が含まれています。解凍して起動するとウィンドウが開きます。Hugging FaceのGGUFモデルはuser_data/modelsフォルダにドロップすると自動的に検出されます。追加のバックエンド、トレーニング、画像生成、拡張機能が必要なユーザー向けに、フルインストールの手順も文書化されています。Miniforge/Condaまたはワンクリック起動スクリプトを使用し、約10GBのディスク容量が必要です。 主な機能は次のとおりです。 - チャットと生成: 指示追従用のインストラクトモードに加え、カスタムキャラクター向けのチャットモードとチャットインストラクトモードを備え、プロンプトはJinja2テンプレートでフォーマットされます。ノートブックタブは自由形式の生成をサポートします。 - マルチモーダル入力: 画像をメッセージに添付して視覚的理解が可能で、テキストファイル、PDF、.docx文書をアップロードして議論できます。 - 会話管理: メッセージの編集、メッセージバージョン間の移動、会話の分岐が可能です。 - 複数のバックエンド: llama.cpp、ik_llama.cpp、Transformers、ExLlamaV3、TensorRT-LLMに対応し、再起動せずにバックエンドとモデルを切り替えられます。 - API互換性: OpenAI/Anthropic互換のChat、Completions、Messagesエンドポイントを備え、ツール呼び出しをサポート。これらのAPIのローカルなドロップイン代替として位置づけられています。 - ツール呼び出し: モデルはWeb検索、ページ取得、計算などのカスタム関数を呼び出せます。各ツールは単一のPythonファイルで、MCPサーバーもサポートされています。 - トレーニング: マルチターンチャットまたは生テキストデータセットでLoRAをファインチューニングでき、実行の再開も可能です。 - 画像生成: diffusersモデル専用タブを備え、4ビット/8ビット量子化に対応。画像メタデータを保存する永続ギャラリーがあります。 - インターフェース: ダーク/ライトテーマ、コード構文ハイライト、LaTeXレンダリング、TTS、音声入力、翻訳などの組み込みまたはコミュニティ拡張機能をサポート。 このプロジェクトは、モデルローダー、コンテキストとKVキャッシュオプション、投機的デコード、GPUレイヤーオフロード、テンソル分割、量子化、サンプリングパラメータ、サーバー/API設定を網羅する広範なコマンドラインフラグセットを提供します。NVIDIA、AMD、Intel、CPUのみのセットアップ向けにDocker Composeファイルも用意されています。 TextGenは、ホスト型サービスではなく、ローカルモデルランタイムおよびチャットフロントエンドとして理解するのが最適です。その主な価値は、デスクトップUI、OpenAI互換API、モデル管理を1つのオフラインパッケージにまとめていることで、データを自分のハードウェアに保持しながらローカルLLMを試用または展開したいユーザーに適しています。