インストール・起動・動作確認
インスタンス上にサービス専用のPython環境を作成します。以下のモデルパスは、そのインスタンスに同期済みのローカルディレクトリを指定しています。起動後、まずインスタンス内からOpenAI互換APIを確認してください。
python3 -m venv ~/mlx-service/.venv
~/mlx-service/.venv/bin/python -m pip install mlx-lm
~/mlx-service/.venv/bin/python -m mlx_lm.server \
--model ~/models/quantized-model \
--host 127.0.0.1 --port 8080
curl http://127.0.0.1:8080/v1/models
モデルファイルが揃っていること、Python環境が使えること、ポートを他のプロセスが使用していないことを確認してください。 mlx-lm の引数はバージョンによって異なる場合があります。本番環境にデプロイする前に、インスタンスにインストールされたバージョンのコマンドヘルプを確認してください。
ACCESS / 01
チームからのアクセス
既定では 127.0.0.1のみをリッスンします。少人数での内部利用なら、各メンバーがSSHトンネルを作成できます。共通の入口が必要な場合は、認証、アクセス制御、TLSを備えたリバースプロキシを使い、保護されていない推論エンドポイントをインターネットに直接公開しないでください。
ssh -N -L 8080:127.0.0.1:8080 xops-node
STARTUP / 02
再起動後も稼働させる
フォアグラウンドで安定して動作することを確認したら、サービス用のユーザー単位の launchd 設定を作成し、仮想環境内のPython、モデルパス、作業ディレクトリ、ログファイルを指定します。設定を確認してから現在のユーザーセッションに読み込み、インスタンスの再起動後にプロセスとエンドポイントを再確認してください。
plutil -lint ~/Library/LaunchAgents/com.xcodeops.mlx.plist
launchctl bootstrap gui/$(id -u) \
~/Library/LaunchAgents/com.xcodeops.mlx.plist