メインコンテンツへスキップ

Documentation Index

Fetch the complete documentation index at: https://docs.bricks.tools/llms.txt

Use this file to discover all available pages before exploring further.

BRICKS Buttress はクライアント、サーバー、バックエンドコア、共有ハードウェアガードレールの 4 層に明確に分かれており、JSON-RPC WebSocket プロトコルと UDP 自動検出トランスポートで接続されます。下図は目標アーキテクチャです。実装済みと計画中セクションで、現在出荷されているものとロードマップ上のものを示します。

完全なアーキテクチャ

オレンジの実線矢印は実行時のデータパスを表します。緑の点線矢印は Hardware Guardrails パッケージがクライアントとサーバー両側で共有されている場所を示し、双方で同じコードが動作します。グレーの破線ノード(Thermal Printer、Future Backends)はロードマップ上の未リリース項目です。

各層の役割

役割
Buttress Server全機能を統合した完全版サーバー — WebSocket RPC、自動検出、ファイル転送
Buttress Backend自動検出を含まないバックエンド(組み込み用途)
AutodiscoveryUDP ブロードキャストおよび HTTP エンドポイント検出
Buttress ClientFoundation デバイスがサーバーに接続するために使うクライアントライブラリ
Backend Coregenerator 実装(LLM、STT、MLX、将来のサーマルプリンター)
Hardware Guardrails共有の能力検出・スコアリングロジック — クライアントとサーバーが同じコードを実行するため、同一基準で自己採点できる

能力比較の仕組み

Foundation デバイスが generator を起動すると、クライアントとサーバーがハードウェア情報を交換し、どちら側で実行するかを決めます:
  1. クライアントがローカルの能力を収集。 GPU/CPU 情報、利用可能メモリ、モデルメタデータ(層数、embedding サイズ、KV cache 要件)。
  2. クライアントが能力情報をサーバーに送信。 モデル識別子と要求コンテキストサイズも一緒に送ります。
  3. サーバーが両側を評価。 クライアントが報告した能力とサーバー自身に対して同じ guardrails コードを実行し、双方に 0〜100 のパフォーマンススコアとメモリ収まり判定を返します。
  4. サーバーが推奨を返却localbuttresseither のいずれか。
  5. クライアントが決定。 自身のストラテジー(prefer-localprefer-buttressprefer-best)と推奨結果から最終的に選びます。詳細は Foundation から Buttress を使用を参照してください。
クライアントとサーバーが同じ guardrails パッケージを共有しているため、スコアは直接比較可能です — 双方間に較正のずれは生じません。

実装済みと計画中

実装済み

  • ワークスペース JWT 認証 — ワークスペースごとに Ed25519 発行者、短命な { k:'ba', w_id, … } access token。ワークスペースバインディングを参照。
  • UDP 自動検出と署名付きアナウンス — UDP 8089 上の ANNOUNCEQUERYRESPONSE、アナウンスにバックエンドごとのハードウェア能力を含めます。バインド済みサーバーは登録済みの Ed25519 アナウンス鍵で全パケットに署名し、launcher は 30 秒のリプレイウィンドウで署名を検証します。プロトコルバージョンは 2.0LAN 自動検出を参照。
  • 参照カウント方式の generator registry — 複数クライアントで読み込み済みモデルを共有でき、refcount が 0 になるとサーバーが自動クリーンアップ。
  • GGML LLM、MLX LLM、GGML STT バックエンド。
  • 能力検出とスコアリング — 双方で同じ guardrails コードを実行。
  • STT のファイル転送 — デバイスが POST /buttress/upload に音声をアップロード。

計画中

  • キュー管理 — 優先度サポート付きのハードウェア対応リクエストキュー。
  • Docker 配布 — CUDA/Vulkan サポート付きのプリビルドイメージ。
  • 複数サーバープール選択 — 同一ワークスペースに複数のバインド済みサーバーがある場合の能力ベースのランキング(現在は最終視認者が勝ち)。
  • サーマルプリンターバックエンド — LLM/STT 以外のオフロードターゲット。

関連項目

ワークスペースバインディング

JWT 認証がアーキテクチャにどう収まるか。

LAN 自動検出

UDP トランスポート、アナウンスペイロード、能力スコアリング。