Skip to content

A model built for your domain.

We start from an open-weight model, test candidates on your own tasks, and adapt the best one to your terminology, documents and decisions. You own the result, subject to the base model’s licence. See how we choose base models.

What you get

Six deliverables, all yours to keep.

Model-selection memo

Three to five candidate models scored on a test set built from your own work, not public leaderboards. Includes licence notes and where the weights came from.

The adapted model

Retrieval, fine-tuning or both, depending on what the tests show. The weights, adapters and configuration belong to you.

Structured outputs

JSON that matches your schema, enforced while the model generates and validated again before it reaches another system.

Tool use

Function calling in the model’s native format, limited to an allow-list of tools you approve.

A replaceable base

A standard API in front of the model, so you can move to a better base model later without rebuilding your applications.

Before-and-after report

Results on your tasks for the base model and the adapted one, written for your risk and validation teams.

Retrieval, fine-tuning or both

The tests decide which approach you need.

retrieval (RAG)

For facts that change.

Policies, product terms, case files. Anything that must be current or cited goes in a search index the model reads from.

fine-tuning

For behaviour.

Format, tone, domain terms, classification and extraction. Also when a small model needs to match a large one on cost and speed.

both

For most real systems.

A fine-tuned model that knows how your organisation writes, reading from an index that knows what is true today.

Base models we evaluate

Open weights, checked licence by licence.

Licence terms differ between model families and sometimes between versions of the same family. We read the licence file of the exact checkpoint. Your counsel approves it.

FamilyLicenceWhat we check
Mistral 3Apache 2.0Each model separately. Some Mistral releases use other terms.
Qwen3Apache 2.0 (open checkpoints)Each checkpoint. Board-level questions about model origin.
Gemma 4Apache 2.0Earlier Gemma versions use Google’s own terms.
DeepSeekMIT (weights)Model origin review, which many boards now require.
gpt-ossApache 2.0Its own chat format and usage policy.

Licence information as of November 2026. Not legal advice. How we choose base models →

Regulation

Fine-tuning and the EU AI Act.

Adapting an open-weight model with ordinary fine-tuning does not usually make you a general-purpose AI model provider under the EU AI Act. The Commission’s guidance points to a threshold of roughly a third of the compute used to train the original model, far above typical fine-tuning.

We record the compute used in every training run, so your counsel can confirm your position. If your use case is high-risk, see Governance.

Questions

What risk teams ask.

Who owns the weights and adapters?

You do, along with the test sets and configuration. You can take them with you at any time. The only limit is the base model’s licence.

How do you stop it inventing facts?

For anything factual, answers come from retrieved documents with citations, and the model says it doesn’t know when retrieval finds nothing. We measure how often it is wrong; we don’t claim it never is.

Does the licence work for an EU entity?

It depends on the model. Some licences add terms for EU-based companies. We flag these in the selection memo for your counsel.

What happens when a better base model comes out?

We run it against the same test set. If it wins, we swap it behind the same API and re-run the full evaluation before release.

What we don’t promise

Some claims we won’t make.

  • A model that never makes mistakes. We measure error rates and design the system around them.
  • That a licence review is legal advice. It’s an engineering input for your counsel.
  • That a custom model is always the answer. Sometimes an existing model with the right controls is enough.

Find out which model fits.

A two-week assessment on your own data, with a written answer on whether you need a custom model.