Use case · Private AI inference

    Run language models on your own dedicated Apple silicon

    For teams that want to run open-weight language models without sending prompts to a third-party AI API. You install the inference software, load the model and put your own authenticated API in front of it.

    Illustrative workflow
    1. Authenticated request

      Your app, with an API key

      01
    2. Model on a dedicated Mac

      Open-weight, self-installed

      02
    3. Response

      Returned to your app

      03

    What this solves

    Prompts and documents leaving your control

    With your own inference server, prompts are processed on a Mac only you control.

    Large models on limited GPU memory

    Apple silicon shares unified memory between CPU and GPU, so the memory you choose is available to the model.

    Predictable cost

    A fixed monthly price instead of paying per token.

    Example workflow

    An internal assistant for support staff

    1. 1

      Ollama runs on the Mac and serves a quantised open model.

    2. 2

      A reverse proxy with an API key or mTLS listens on HTTPS; the Ollama port is not public.

    3. 3

      Your internal tool sends a support question and the relevant documents.

    4. 4

      The model generates an answer on the Mac.

    5. 5

      The answer is returned to your tool; logs stay on the Mac or in your own logging.

    How to set it up and run it

    1. 1

      Choose memory first

      The model weights plus the context cache must fit in unified memory, with room left for macOS.

    2. 2

      Pick a quantised model that fits

      Lower-bit quantisation uses less memory and may reduce quality; test with your own prompts.

    3. 3

      Install Ollama, MLX or llama.cpp and download the model weights.

    4. 4

      Bind the inference server to localhost and expose it through a reverse proxy with authentication, or only over a VPN.

    5. 5

      Measure throughput with your own prompts and context length before deciding how many concurrent users one Mac can serve.

    How much memory a model needs

    The model weights, the context cache and macOS all have to fit in unified memory. Approximate sizes for 4-bit quantised models:

    7–8B parametersWeights at 4-bit (approx.)≈ 5 GBConfigurations to consider16 GB and up
    13–14B parametersWeights at 4-bit (approx.)≈ 8–9 GBConfigurations to consider24 GB and up
    27–32B parametersWeights at 4-bit (approx.)≈ 17–20 GBConfigurations to consider32 GB and up
    70B parametersWeights at 4-bit (approx.)≈ 40 GBConfigurations to consider64 GB (48 GB only with a short context)

    Rules of thumb, not guarantees. Longer contexts, higher-precision quantisation and parallel requests need more memory. By default macOS lets the GPU use only part of total memory. Test with your own model and prompts.

    Which configuration fits

    Pricing

    Good fit for

    Smaller quantised models and experiments.

    Mac mini M6

    • 12-core CPU · 12-core GPU
    • Memory: 32 GB
    • Storage: 512 GB SSD

    Good fit for

    Larger models, longer context and room to store several models.

    Mac mini M5 Pro

    • 15-core CPU · 16-core GPU
    • Memory: 48 GB
    • Storage: 1 TB SSD

    Good fit for

    The most unified memory available, for the largest models that fit.

    Mac mini M5 Pro

    • 15-core CPU · 16-core GPU
    • Memory: 64 GB
    • Storage: 512 GB SSD

    Who does what

    vBoxx provides

    • A dedicated Mac mini with up to 64 GB unified memory (M5 Pro) for the model and its context
    • Hosting in Tier III datacenters in the Netherlands, so prompts are processed on hardware in the EU
    • Network: 10 Gigabit Ethernet port · 1 Gbit/s unmetered · public IPv4 + IPv6
    • Remote APC power control and optional JetKVM console

    You manage

    • Inference software, models and model licences
    • Authentication, TLS and firewall rules for the API
    • Measuring capacity and limiting concurrent requests
    • Logging, retention and data protection for prompts and outputs

    Before you choose this setup

    • This is inference, not training. Training or fine-tuning large models needs far more compute than a Mac mini offers.
    • We do not publish tokens-per-second figures. Speed depends on model, quantisation, context length and concurrency; measure it with your own workload.
    • Running the model on your own Mac does not by itself make the processing GDPR compliant. That depends on how you handle the data.

    Frequently asked questions

    That depends on the model, the quantisation and the context length. As a rule, the model file plus the context cache must fit in unified memory with headroom for macOS. Test before you commit to a size.

    We do not publish benchmark figures, because they change a lot with model and settings. Measure tokens per second with your own prompts after setup.

    Concurrent requests share the same memory and GPU. Start with a small number, measure response times and add a queue or a second Mac if needed.

    Keep the inference server on localhost and put a reverse proxy with TLS and an API key or client certificate in front of it, or reach it only over a VPN.

    Small fine-tuning experiments with MLX are possible, but the service is aimed at inference. For large-scale training, a GPU cluster fits better.

    Not sure which Mac fits your workload?

    Configure a Mac mini M6 or M5 Pro yourself, or describe your workload and an engineer will suggest a configuration.