~/products/fuuga

The sovereign LLM stack for .NET.

Fuuga is the complete toolchain for making a language model — preparing data, training, fine-tuning, shrinking, testing and running it — delivered on .NET, the platform your business systems already run on, for the engineers you already employ. No separate research stack. GPU or CPU. Your data never leaves your hardware.

dotnet add package FuugaFuuga.cpuFuuga.Imagepublic domain
A developer workstation running a local large language model alongside code

> the-problem

Enterprises rent their AI, and cannot maintain the AI they build. The regulated back-offices of the world run on .NET, and none of the model-building tools do.

Rented models, rented terms

A hosted AI subscription sends customer records, contracts and code to a third party, bills every request, and can change or retire the model at any time. Compliance teams say no to the most valuable uses.

Built by specialists, not by the engineering team

In-house model work is done by a data scientist in research tools the company's own engineers do not use. It ships as a one-off; when that person leaves, nobody can maintain it.

Regulation is arriving

The EU AI Act, DORA and data-residency rules ask for provenance, auditability and control over the model. A model you trained on data you can trace is the simplest answer.

> the-pipeline

Start from an open model. Make it yours. Keep it in-house. One recipe file drives each workflow: scaffold it, edit a few paths, run.

[01]

Ingest

Documents, Parquet and text become a hashed, traceable corpus. Every checkpoint records which sources trained it.

[02]

Transfer

Donor weights from Llama 3, Phi, Qwen, Mistral, Gemma, DeepSeek, GLM and Kimi, mapped architecture-aware — or pre-train a small model from scratch.

[03]

Fine-tune

LoRA and QLoRA on consumer GPUs, DPO for preferences, GRPO reinforcement learning with verifiable rewards.

[04]

Compress

Distil, merge, prune and quantise to a bit budget; export GGUF for llama.cpp and Ollama, ONNX, or HuggingFace safetensors.

[05]

Serve

OpenAI-compatible API with continuous batching, guardrails, tool calling, MCP and A2A — on your own hardware.

the common path — donor model to served model

> fuuga scaffold finetune> fuuga transfer --recipe my.json> fuuga sft --recipe my.json> fuuga eval --recipe my.json> fuuga export gguf --tokenizer tok/> fuuga-serve --checkpoint best/

> what-runs-today

Not a roadmap. Everything below is in the repository, with tests, and can be walked through live.

Training

BPE tokenizer, transformer with RoPE, GQA, MLA and MoE, AdamW and Muon, gradient checkpointing, CPU and NVMe offload for models larger than VRAM.

Fine-tuning

SFT, prompt tuning, DPO, GRPO, rejection sampling, LoRA and QLoRA, adapter merging.

Model operations

Weight transfer from nine donor families, distillation, N-ary merging, pruning, NF4 and INT8 quantisation, bit-exact export round-trips.

Evaluation

MMLU, HellaSwag, ARC, GSM8K, MATH-500 and HumanEval built in, plus drift detection and a quality gate that reports regressions plainly.

Serving and agents

Streaming, function calling, structured outputs, bearer auth, guardrails, local minion delegation with sandboxed tools and skills.

Image and video

Stable Diffusion 1.5 implemented from scratch in F#, text-to-video and captioning, exposed as MCP tools.

> how-we-work-with-you

The library is public domain, so adoption is free and every line can be audited. What organisations pay for is the outcome: reliability, hardware, models and people.

Fuuga Enterprise

Signed builds, long-term support branches, SLA and security advisories for organisations that run Fuuga in production.

Managed training and serving

We run the GPUs in a UK or EU region you choose, billed per GPU-hour for training and per million tokens for serving.

Models as a service

Fuuga meters and bills an OpenRouter provider endpoint out of the box. List your model, or use ours.

Train-your-model projects

Fixed-scope engagements that end with a model, a recipe and a team that knows how to keep it current.

> already-on-openai

An existing AI strategy is not replaced. It gains an in-house option for the parts compliance blocks, the bills that keep growing, and the models a vendor may retire. Nothing is rewritten: coexistence first, then migration by evidence.

[01]

Connect, do not rewrite

Fuuga serves the same interface as OpenAI. An existing application is pointed at a new address; the code that calls the model stays as it is.

[02]

Run both, route by rule

Fuuga's cost-aware router sends sensitive or routine requests to the in-house model and the rest to the existing subscription, within a budget.

[03]

Learn from the incumbent

Endpoint distillation collects the hosted model's answers to your own prompts and trains your model on them; a quality gate measures both on held-out data.

[04]

Switch when the numbers say so

When the gate passes, the workload moves and the subscription shrinks. The next workload repeats the loop, faster.

for-investors-and-partners

We are raising a seed round to make Fuuga the model stack of the .NET enterprise.

Built by the team behind SQLProvider and LINQKit, with twenty-five years of regulated fintech delivery. Ask for the investor deck, a code walkthrough, or a pilot on your own documents.