Diffuse Enterprise

Run frontier-class models
on hardware that answers to you

Idle workstations, GPU instances in your own cloud account, or one desktop box with 128 GB of unified memory. The machines are yours, the weights are yours, and nothing is metered by anybody else.

On premises No telemetry Air-gapped by design GDPR conformant
0..11
12..23
24..35

Inference

Serve

An OpenAI-compatible endpoint on your own hardware. One machine when the model fits, several when it does not.

How serving works →

Training

Fine-tune

LoRA adapters trained on your own corpus, in two commands, with provenance attached to every one.

How fine-tuning works →
70Bteacher
8Bstudent

Compression

Distil

A large model teaches a small one on a corpus that needs no answers in it. You supply the questions.

How distillation works →

Where it runs

Your hardware, wherever it is

On-premises is where this started and it was never the limit. What this product requires is that the machines answer to you, not that they sit in your building.

The fleet you own

Idle capacity, put to work

Workstations and lab machines that do nothing after six in the evening become the pool that serves all night. Nothing was bought for this.

Your own cloud

Instances you control

GPU instances in your account, your network, your policy. Still your infrastructure. You pay for a machine, not for tokens, and the bill stops when you stop it.

One desktop box

A 200B model on a desk

An AMD Ryzen AI Halo or an NVIDIA DGX Spark carries 128 GB of unified memory in a compact case. One machine, one model, whole, for the whole company.

Supported technology

It runs on what you already run

Ordinary Linux machines, with or without accelerators. Nothing here is a partnership or an endorsement: it is the list of platforms this software has been installed on and answers requests from.

DebianDebian
UbuntuUbuntu
Red HatRed Hat
SUSESUSE
FedoraFedora
Arch LinuxArch Linux
NVIDIANVIDIA
IntelIntel
AMDAMD
Google CloudGoogle Cloud
ProxmoxProxmox
DockerDocker
KubernetesKubernetes

Why on-premises

Capable hardware, and data that cannot leave

A university department has three hundred workstations that do nothing after six in the evening. A hospital has a rack it is not allowed to connect to the internet. Both are told the answer is a cloud cluster rented by the hour.

This runs the models on their own machines instead. CPU, GPU or a mix, several cooperating on one model when no single machine can hold it, and no prompt, no document and no corpus crossing the boundary.

# two commands on the machine that coordinates
sudo apt install ./diffuse-coordinator_amd64.deb
sudo diffuse-coordinator licence set ./licence

# two on every machine that computes
sudo apt install ./diffuse-node-agent_cpu_amd64.deb
sudo diffuse-node-agent enroll --token DFE1-...

No script to run. No wheel to place. Nothing fetched at install.

How it works

Whole on one machine, or split across several

If a model fits on one machine in the pool it runs there, whatever its architecture. If it does not, the coordinator cuts it into slices, one per machine, connected as a pipeline.

Splitting has conditions, and they are checked before anything is downloaded rather than discovered afterwards. The documentation states them precisely, including what is refused and why.

Model support in detail

Serving qwen2.5-3b-instruct.

  placement   whole, in RAM
  reason      2.1 GB resident against 11.4 GB free
  context     4096

  slice 0   layers 0..36   node-01   2.1 GB   whole model

Placement says what it decided and why it decided it.

Built for audit

Built for the question an auditor will ask

Mutual TLS on every connection, with identity derived from the certificate rather than from anything a machine claims about itself. Roles, sessions and an append-only trail of who did what and what was refused.

Customer content never reaches that trail. Not prompts, not completions, not the rows of a training corpus. That is asserted by tests rather than promised.

# who did what, and what was refused
diffuse-coordinator audit --since 7d

2026-08-23  alice   model.serve       ok
2026-08-23  alice   apikey.create     ok
2026-08-22  bob     node.revoke       ok
2026-08-22  ci      model.pull    refused  no machine has 11.8 GB free

Refusals are recorded as deliberately as successes.

Reasons for Diffuse

No activation. No heartbeat. No telemetry.

There is no call home of any kind. The licence is verified against a key already in the binary, on the machine, offline, for ever. An air-gapped deployment is the design rather than a concession to one.

This website holds itself to the same rule: no third-party font, no analytics, no tag manager, nothing embedded from anywhere else.

# what this deployment is entitled to
diffuse-coordinator licence show

  organisation  Universitätsklinikum Freiburg
  edition       enterprise
  nodes         24
  expires       2027-06-30
  features      training, distillation, fast-backend

Checked when a machine is enrolled, never per request.

What we measured

What the arithmetic actually says

Measured on this product rather than quoted from a paper. Where a figure depends on hardware, it says so instead of pretending otherwise.

0 MB

per training step across four machines with LoRA, against 30.4 GB for a full fine-tune of the same model.

0

models in the catalogue, each from its publisher's own repository, each loaded and made to answer before it was written down.

0

bytes of telemetry. No activation, no licence heartbeat, no usage report, no font from a third party.

0

commands to install on the coordinator, and two on every machine that computes.

Getting started

From a bare machine to an answer

Four steps, and none of them is a support call. Everything is installed by the package manager and nothing is fetched when a node is given a model.

1

Install

One package on the machine that coordinates. It asks your organisation's name, generates the authority and starts.

apt install ./diffuse-coordinator…deb
2

Enrol

A token on every machine that computes. It writes an identity, starts the agent and waits to see it registered.

diffuse-node-agent enroll --token …
3

Serve

A name from the catalogue, or a file you already have. Placement says where it went and why.

diffuse-coordinator model run qwen2.5:3b
4

Call it

An OpenAI-compatible endpoint. Point an existing client at your host and give it your certificate.

POST /v1/chat/completions

Reasons for Diffuse

Against the obvious answer

The usual reply to "we want to run a model" is an hourly GPU instance. It is the right answer for a spike and a poor one for a department whose machines are idle sixteen hours a day.

A rented cluster

  • − Your prompts and your corpora leave the building.
  • − Per-token billing scales with curiosity, so people stop experimenting.
  • − A provider's policy change is your outage.
  • − The hardware you already own stays idle.
  • − "Where did this answer come from" has a long form.

Diffuse Enterprise

  • + Nothing leaves the deployment. There is no code that sends.
  • + You pay for machines, not tokens, whether you own them or rent them.
  • + A licence file, verified offline, with no activation call.
  • + Four ordinary machines hold a model none could, or one card holds it whole.
  • + Every action and every refusal on an append-only trail.

Common questions

Questions we get in the first meeting

Do we need GPUs?

No. A four-gigabyte model runs on an ordinary workstation with enough memory, and the CPU path is supported rather than tolerated. A card makes generation faster and lets one machine hold more.

How many machines do we need?

One, to start. Splitting a model across machines exists for models too large for any single one, and it is not the normal case.

Does anything leave our network?

No. No telemetry, no activation, no licence heartbeat and no usage report. The licence is verified against a key already in the binary, offline, for ever.

What happens when the licence expires?

It is a subscription, with thirty days of notice before the date and thirty days of grace after it, during which everything still works. Past that the deployment stops serving and stops accepting work. Requests in flight finish and a training run that has started goes to its end.

Nothing you made is ever withheld: your trained adapters, your imported datasets and your audit trail stay readable and exportable whatever the licence says. Installing a renewal restores everything immediately, with no restart.

Can we fine-tune any model we serve?

Fine-tuning needs the original safetensors weights, so a quantised file is refused at creation with the two ways to obtain trainable ones.

Next step

Bring it to your own hardware

Trials are thirty days on three machines, running exactly the software a paying customer runs. Tell us what you have and we will tell you whether it works before you install anything.