Skip to main content

local-llm-server

ローカルLLM(mlx / mlx-vlm / llama.cpp)と音声認識(whisper / STT)を束ねる マルチモデルゲートウェイ。1 プロセス起動するだけで、1 つの公開ポートに複数モデルを配信する。 モデルの事前登録は不要——クライアントが指定した model をその場でロードする。 特徴の全体像は docs/features.md

インストール

uv を使う。一度入れればどこからでも gw

git clone https://github.com/ToPo-ToPo-ToPo/local-llm-server
cd local-llm-server
make install    # これだけ。導入・PATH 設定・自動起動の登録まで全部やる

途中で管理者パスワードを 1 回聞かれる(Ollama と同じく、最初から PATH に入っている /usr/local/bingw を置くため。そのままこのシェルで gw が使える)。 入れずにスキップしても壊れない——その場合は新しいターミナルから使える。

導入後は Ollama と同じくサーバーを意識しなくてよい——ログイン時に自動起動し、異常終了時は 自動復活する(gw disable で従来の手動 gw start 運用に戻せる → docs/operation.md)。

make install が「~/.local/bin is not on your PATH」と警告するのは、uv tool install が シェル設定を変更しないため。uv tool update-shell がその追記を行う(zsh なら ~/.zshrc では なく ~/.zshenv)。書き込み先はシェルによって違うので、反映は特定ファイルの source では なく exec $SHELL -l か新しいターミナルで行う。アンインストールは make uninstall (→ docs/operation.md)。

使い方

gw status     # 稼働/停止・PID・URL・起動経過を表示(自動起動済みなら常に稼働)
gw list       # 使えるモデル一覧(カタログ+HF キャッシュ)
gw stop       # 停止(再開は gw start か次回ログイン)
gw start      # 手動起動(初回は設定を自動生成。自動起動を無効にした場合の入口)

設定は ~/.config/local-llm-server/gateway.toml の 1 箇所(初回の gw start が自動生成。 → docs/gateway.md)。

接続は公開ポート(既定 http://127.0.0.1:8799/v1)に繋いで model を選ぶだけ。 接続クライアントは別パッケージ local-llm-client:

from local_llm_client import LLMClient

llm = LLMClient(model="ToPo-ToPo/Qwen3.6-27B-mlx-4bit",
                base_url="http://127.0.0.1:8799/v1")
print(llm.respond("ローカルLLMの利点を3つ。"))

ドキュメント

ライセンス

Apache-2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

local_llm_server-0.37.1.tar.gz (209.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

local_llm_server-0.37.1-py3-none-any.whl (152.0 kB view details)

Uploaded Python 3

File details

Details for the file local_llm_server-0.37.1.tar.gz.

File metadata

  • Download URL: local_llm_server-0.37.1.tar.gz
  • Upload date:
  • Size: 209.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.10

File hashes

Hashes for local_llm_server-0.37.1.tar.gz
Algorithm Hash digest
SHA256 31c8e2f8a7c32fe7e8dabaa909844839021358a786e41515008f6fca03d9c8e2
MD5 e6911bb19e52d77e1f143b5b8140e5d2
BLAKE2b-256 8c4f2649b1e0b3c0fefa0e214ffce1b2bdf0b5c89b91700be98cb5590d63e134

See more details on using hashes here.

File details

Details for the file local_llm_server-0.37.1-py3-none-any.whl.

File metadata

File hashes

Hashes for local_llm_server-0.37.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9c15bb20d5fed04d808879db199daffce310559f7eb1c51d2b4c57104e4e7a0d
MD5 60a65403573c49eadf3ec49fd16a7fe4
BLAKE2b-256 31738c0fb314a15a31a3a11b6c9c78cad1818d50899d7b4a3d26dee9bebf8933

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page