Gello icon

Gello

Gelloは、Hugging Faceの言語モデルをAndroid端末上でローカル実行し、Discordボットとして動かすアプリです。常時稼働のAI参加者として使えます。

Gello

Gelloとは?

Gelloは、Hugging Faceの言語モデルを端末上で完全にローカル実行し、Discordにボットとして接続するAndroidアプリです。Discordチャンネルの参加者がボットに直接話しかけられるように設計されており、返信はクラウドAPIではなくスマートフォン上でローカル生成されます。

このプロジェクトは、単一のAPKと永続的なDiscord接続を中心に構成されており、スマートフォン上でフォアグラウンドサービスを動かしつつ、受信メッセージ、プロンプトの組み立て、返信処理を端末内で行います。リポジトリでは、litert-community の Hugging Face 組織が配布する .litertlm モデルとしてパッケージ化された Gemma 4 E2B のサポートが記載されており、.task モデルはサポート対象外とされています。

主な機能

  • Android上でのオンデバイス推論: Gelloは言語モデルをスマートフォン上でローカル実行するため、外部のLLMサービスにプロンプトを送信せずに応答を生成します。
  • Discordボット連携: Discordにネイティブ接続し、ボットが導入されたチャンネルで返信できるため、グループチャットでのやり取りに適しています。
  • フォアグラウンドサービス構成: アプリはDiscord GatewayのWebSocketへの永続接続を維持し、スマートフォンから常時稼働するボットに必要な状態を保ちます。
  • ローリング式チャンネルコンテキストバッファ: 受信メッセージはチャンネルごとのバッファに更新され、既定で20件まで保持されるため、直近の会話履歴を使って返信できます。
  • 自動スペキュレーティブデコーディング対応: 読み込まれた .litertlm モデルにMTP drafterのサポートが含まれている場合、Gelloはスペキュレーティブデコーディングを有効にして返信速度を改善します。
  • 1台のスマートフォンで完結するデプロイ: リポジトリでは、TermuxやノートPC、別のモデルサーバーを使わずに、全体が1つのAndroidアプリに収まる点を強調しています。

Gelloの使い方

対応するスマートフォンにAndroid APKをインストールし、Discordボットとして設定して、テスト済みの Gemma 4 E2B ビルドのような対応 .litertlm モデルを読み込みます。起動後は、アプリがフォアグラウンドサービスを有効に保ち、Discordメッセージを監視し、直近のチャンネルコンテキストからプロンプトを組み立て、生成した返信をチャンネルに投稿します。

使用例

  • グループチャットのアシスタント: Gelloを使ってDiscordチャンネル内にローカルAI参加者を置き、複数人が同じスレッドで質問し、返信を受け取れるようにします。
  • 使わなくなったAndroidスマートフォンの再活用: 3〜5年前の予備端末を、引き出しに眠らせず、専用の常時稼働ローカルAI बॉックスとして使います。
  • オフラインまたは自己完結型の推論環境: ホスト型LLMエンドポイントや別サーバー機を避けたいユーザー向けに、モデル実行を端末内に維持します。
  • 軽量なエッジデプロイの実験: Android、Discord、LiteRT-LMを組み合わせたときに、小型オンデバイスモデルがチャットボットとしてどう動作するかを試します。
  • ローカルモデルのベンチマークと検証: スペキュレーティブデコーディングと .litertlm モデル対応が、モバイルハードウェア上のリアルタイム応答挙動にどう影響するかを調べます。

FAQ

Gelloはモデルをクラウドで実行しますか?
いいえ。リポジトリではGelloをオンデバイスボットとして説明しており、プロンプトと応答はAndroidスマートフォン内に留まり、モデルはLiteRT-LMを通じてローカル実行されます。

どのモデル形式に対応していますか?
ソースでは、litert-community/gemma-4-E2B-it-litert-lm のテスト済みサポートがあり、litert-community の Hugging Face 組織にある任意の .litertlm モデルが動作するはずだとしています。.task モデルはサポートされないと明記されています。

ノートPCや別サーバーは必要ですか?
いいえ。このプロジェクトは、Termux、ノートPC、別のモデルサーバーを使わず、Discordと直接やり取りする単一のAndroid APKとして紹介されています。

会話コンテキストはどう扱いますか?
Gelloはチャンネルごとの最近のメッセージをローリングバッファで保持し、既定サイズは20メッセージで、そのコンテキストを使って応答を生成します。

なぜスペキュレーティブデコーディングに言及しているのですか?
リポジトリでは、Gemma 4のMTPヘッドとLiteRT-LMのスペキュレーティブデコーディング経路により、対応時にはデコード1回あたり複数トークンを生成でき、オンデバイスの返信生成が高速になると説明しています。

代替案

  • OpenClaw: リポジトリで言及されている、より近い関連プロジェクトです。チャットアプリ経由でローカルAIを公開する点は同じですが、Android端末中心のアプリではなく、macOS、Windows、Linux向けのデスクトップ製品として位置づけられています。
  • ホスト型チャットボット連携: クラウドLLM APIで動く従来のDiscordボットです。管理された推論を使いたい場合は導入しやすいですが、生成を端末内に留めたり、外部APIキーを不要にしたりはできません。
  • セルフホスト型ローカルモデルサーバー: 別のマシンでモデルを動かし、そのモデルをチャットアプリに接続する構成です。Gelloより汎用的な基盤を提供しますが、1つのAndroidアプリより多くのコンポーネントが必要です。
  • その他のオンデバイスAndroid AIアプリ: Discord連携なしでモデルをローカル実行するモバイルアプリです。同じ推論モデル系統を使うことはありますが、グループチャットにボットとして参加する用途向けに設計されているとは限りません。