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

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.

Buttress サーバーは --config で渡された 1 つの TOML ファイルを読み込みます。各セクションは任意で、省略するとデフォルトが使われます。

最小サンプル

[server]
port = 2080

[[generators]]
type = "ggml-llm"
[generators.model]
repo_id = "ggml-org/gpt-oss-20b-GGUF"
quantization = "mxfp4"
n_ctx = 12800

[server]

キーデフォルト説明
portnumber2080HTTP/WebSocket ポート
log_levelstring"info"debuginfowarnerror のいずれか
idstringbuttress-<machineId>バインドと検出に使う安定したサーバー ID
namestring自動生成BRICKS Controller に表示される表示名
max_body_sizenumber または string52428800(50 MB)最大アップロードサイズ。"50MB""1GB" などの記法も可
session_timeoutnumber または string60000(1 分)WebSocket のアイドルタイムアウト。"1m""30s" も可
temp_file_dirstring<os-tmpdir>/.buttressSTT 音声アップロードなど一時ファイル用ディレクトリ

[runtime]

サーバーがダウンロードしたモデルを保存する場所。
[runtime]
cache_dir = "~/.buttress/models"
huggingface_token = ""
キーデフォルト説明
cache_dir~/.buttress/modelsダウンロードされたモデルファイルの場所
huggingface_token""Hugging Face 認証トークン。空の場合は HF_TOKEN 環境変数にフォールバック

[runtime.session_cache]

ggml-llm generator では、リクエスト間で KV cache の状態をディスクに保持し、同じ prompt 接頭辞を持つ後続の completion で prompt 処理をスキップできます。
[runtime.session_cache]
enabled = true
max_size_bytes = "10GB"
max_entries = 1000
キーデフォルト説明
enabledtrue永続 KV cache を有効化
max_size_bytes"10GB"ディスク総予算。"500MB""50GB" または数値
max_entries1000キャッシュ最大件数(LRU 削除)
キャッシュファイルは {cache_dir}/.session-state-cache/ に保存されます。

[[generators]]

[[generators]] ブロックでサーバーがホストする 1 つのモデルを宣言します。複数モデルを提供したい場合はブロックを繰り返してください。

LLM(llama.cpp / GGML)

[[generators]]
type = "ggml-llm"

[generators.backend]
variant_preference = ["cuda", "vulkan", "default"]

[generators.model]
repo_id = "ggml-org/gpt-oss-20b-GGUF"
quantization = "mxfp4"
n_ctx = 12800

LLM(MLX、Apple Silicon 専用)

[[generators]]
type = "mlx-llm"

[generators.model]
repo_id = "mlx-community/Llama-3.2-3B-Instruct-4bit"
n_ctx = 8192

音声認識(Whisper / GGML)

[[generators]]
type = "ggml-stt"

[generators.backend]
variant_preference = ["coreml", "default"]

[generators.model]
repo_id = "BricksDisplay/whisper-ggml"
filename = "ggml-small.bin"
キー説明
typeggml-llmmlx-llmggml-stt のいずれか
backend.variant_preferenceバックエンドバリアントの優先順。LLM は cudavulkansnapdragondefault。STT は coremldefault
model.repo_idHugging Face のリポジトリ ID
model.filenameリポジトリ内の特定ファイル(STT のみ)
model.quantizationリポジトリに対応する量子化タグ(LLM のみ)
model.n_ctxコンテキストウィンドウの長さ(トークン数、LLM のみ)

[autodiscover]

サーバーは UDP 8089 で自身を通知し、同じ LAN の Foundation デバイスから検出可能にします。自動検出はデフォルトで有効です。
[autodiscover]
[autodiscover.udp]
port = 8089

[autodiscover.udp.announcements]
enabled = true
interval = 5000

[autodiscover.udp.requests]
enabled = true
responseDelay = 100

[autodiscover.http]
enabled = true
path = "/buttress/info"
cors = true
[autodiscover] = false に設定すると検出が完全に無効になります。プロトコルの詳細は自動検出リファレンスを参照してください。

[env]

起動時に適用する環境変数。ただしシステム環境にまだ設定されていない場合のみ反映されます。システム変数とコマンドラインの export が優先されます。
[env]
HF_TOKEN = "hf_..."
CUDA_VISIBLE_DEVICES = "0"

互換エンドポイント

これらのエンドポイントは実験的機能です。スキーマ、エラー形式、CORS デフォルトは変更される可能性があります。
サーバーはネイティブの WebSocket RPC に加えて、OpenAI および Anthropic 互換の HTTP ルートを公開できます。各機能はオプトインです。
[openai_compat]
enabled = true
# cors_allowed_origins = "*"

[anthropic_messages]
enabled = true
# cors_allowed_origins = ["http://localhost:3000"]
エンドポイント設定フラグ
POST /oai-compat/v1/chat/completions[openai_compat] enabled = true
GET /oai-compat/v1/models[openai_compat] enabled = true
POST /anthropic-messages/v1/messages[anthropic_messages] enabled = true
POST /anthropic-messages/v1/messages/count_tokens[anthropic_messages] enabled = true
各エンドポイントは環境変数経由でも有効化できます:ENABLE_OPENAI_COMPAT_ENDPOINT=1 または ENABLE_ANTHROPIC_MESSAGES_ENDPOINT=1

次のステップ

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

サーバーを BRICKS ワークスペースとペアリングして認証を有効化します。

LAN 自動検出

Foundation デバイスが LAN 上でサーバーを見つける仕組み。