On-premise AI, built from blocks

AI assembles.
Your code runs.

deepbriq builds AI pipelines from tested, readable blocks: XGBoost training, YOLO detection, classic data science, local language models. Ask for a result in plain words and an assistant picks a saved pipeline or composes a new one. It writes a short configuration, never code. Everything runs on your own hardware, and every result can be traced back to its inputs.

The deepbriq editor: a pipeline of blocks (Readable, Predictions, AtRisk, CallList) next to the assistant, which answered a plain-language request by running three saved pipelines.

A real session: asked one question, the assistant found three pipelines the team had saved and ran them on a million invoice lines.

150+blocks for video, audio, tables and documents
91lines of JSON in the pipeline that scores every customer
14×fewer tokens than generating the same blocks as code
0lines of new code written by the AI

The idea

Blocks are code. Pipelines are configuration.

Generative AI can write a pipeline from scratch. Then someone has to read, test and secure every generated line, every time it changes. deepbriq splits the work differently.

1

Blocks are written once

Each block is a small, typed component: a video source, a YOLO detector, a feature transform, an XGBoost model, a retriever, an LLM verdict. Your engineers review and test it once, then reuse it everywhere.

2

Pipelines are configuration

A pipeline connects blocks and sets their parameters. The pipeline that scores every customer below is 91 lines of JSON that anyone on the team can read, review and diff.

3

AI writes only the configuration

The assistant composes pipelines from the blocks you already have. No generated code means nothing new to review, debug or secure: zero AI slop.

How it works

From a question to a result you can check

1

Ask for a result in plain words

Which of our customers are likely to stop buying in the next three months? Our invoice lines are in tables/online_retail.

The assistant looks through the pipelines your team saved, checks the data and runs them one after another: customer profiles from the invoice lines, a model trained on who came back, a score for every customer today. If nothing fits, it composes a new pipeline from blocks.

The assistant panel: the request about customers who may stop buying, the steps the assistant took, and three finished jobs with Open in editor and Show run buttons.
2

Read every step

The pipeline opens in the editor. Each step is a block with its parameters in plain sight. The rule that decides who is at risk is one line in a block called AtRisk: a chance to buy again below 35% and at least £1,000 spent. Change a number and run it again.

"AtRisk": {
  "type": "Columns",
  "input": "Readable",
  "params": {
    "where": "buy_again_pct < 35 and spent >= 1000"
  }
}

This is what the AI writes: configuration like this, never the code inside the blocks.

The AtRisk block selected in the editor; its where parameter reads buy_again_pct < 35 and spent >= 1000.
3

Run it where the data lives

Pipelines run on your servers, on a GPU or a CPU. Results are files you can preview and download: here, 515 valuable customers who together spent £1.71 million, and a buy-again chance for each of the 5,878 customers.

A finished run: CallList.csv with 515 rows and Predictions.csv with 5,878 rows, with a preview of the call list.
4

Get an answer you can verify

The summary names the job behind every number, so each claim can be checked. It is honest about the limits too: on 1,054 customers the model had never seen, it was right 75 times out of 100, against 59 for always guessing the same answer. About one prediction in four is wrong, and the assistant says so.

The assistant's summary: how the list was built, with the job behind each step, what the list contains, and its limits.
deepbriq stories

Three real sessions, a few minutes each

Each video follows one person with one problem: what they ask in plain words, which pipelines the assistant runs, and the answer they can check. The assistant and the pipelines are recorded live, not staged.

Customers at risk

An analyst asks which valuable customers will stop buying. Three saved pipelines turn a million invoice lines into a call list.

AI Act in practice

A head of compliance checks three AI proposals with a local model: one can go ahead, one needs changes first, one is prohibited.

Cattle identification

A dairy farmer films his feed alley with a phone. Ear tag 1153 and collar 7 · 9 · 3, each shown with the frames it was read in.

The player loads from youtube-nocookie.com only when you press play. All videos on YouTube.

One engine, every kind of AI

Vision, tables and language in the same pipelines

The same editor, the same assistant and the same kind of blocks, whether you train a model, watch a camera, score customers or read regulations.

Classical machine learning on large tables

Tables are read in chunks, features are learnt in a first pass over the training rows, and XGBoost trains on the GPU. Metrics come with a baseline, so you know what the model adds. On the public Covertype dataset this pipeline reaches 97.2% accuracy on the test split.

LightGBM, CatBoost, scikit-learn and PyTorch models plug into the same blocks. Cross-validation, stacking and tuned decision thresholds are blocks too.

  1. TableSource
  2. FeatureTransform
  3. SklearnModel xgboost.XGBClassifier
  4. MetricsSink

Data: Covertype, UCI Machine Learning Repository (CC BY 4.0).

A training pipeline: TableSource, FeatureTransform, SklearnModel and MetricsSink. The XGBoost block's parameters set xgboost.XGBClassifier with 500 trees on the GPU.

Computer vision on files, folders and live streams

Read a video file, a whole folder of recordings or an RTSP camera stream. In this pipeline YOLO11 detects motorcycles and people, a Relate block keeps the motorcycles that carry a rider, a tracker gives each one a stable identity, and the results are a count, a CSV row per track and an annotated video.

Models from Hugging Face are exported to ONNX and wrapped as blocks. Masks, poses and open-vocabulary detection work the same way.

  1. VideoSource
  2. OnnxDetector yolo11m
  3. Relate
  4. ValueFilter
  5. Track
  6. Annotate
  7. VideoSink
A video pipeline: the OnnxDetector block runs yolo11m with thresholds for motorcycles and people, followed by Relate, ValueFilter and Track blocks.

Classic data science, end to end

Three pipelines turn 1,067,371 invoice lines into one profile per customer, learn from history who came back, and score every customer today. On 1,054 customers the model had never seen it is right 75 times out of 100; guessing gets 59. The result is a list of 515 valuable customers to call first, who have spent £1.71 million between them.

  1. TableSource
  2. Columns
  3. FeatureTransform
  4. SklearnModel XGBoost
  5. TableJoin
  6. Columns AtRisk
  7. TableSink

Data: Online Retail II, UCI Machine Learning Repository (CC BY 4.0).

Watch the story (4:18)

A scoring pipeline ending in the Readable, Predictions, AtRisk and CallList blocks, with the AtRisk rule in the parameters panel.

Language models that stay in the building

Every AI initiative in a folder of documents is checked against the AI Act, the Data Act and the GDPR. Retrieval with bge-m3 and a cross-encoder reranker finds the articles that matter. Qwen, running locally on Ollama, returns a verdict (compliant, conditionally compliant with actions, or non-compliant with the reason) and cites the passages it used.

  1. DocumentSource
  2. DocumentIndex
  3. MultiQuery
  4. TextEmbedder bge-m3
  5. ChromaRetriever
  6. RankFusion
  7. CrossEncoderReranker
  8. ContextBuilder
  9. VerdictGenerator Qwen on Ollama
  10. CSVSink

It supports your compliance team; it does not replace legal advice.

Watch the story (2:35)

An NLP pipeline: Rerank, Context, Verdicts and VerdictSink blocks. The Verdicts block uses ollama:qwen3.6:35b and returns compliant, conditionally compliant or non-compliant.

Why deepbriq

Fast like generative AI, accountable like software you wrote

Zero AI slop

Blocks are ordinary, typed code in your repository, reviewed and tested once. The assistant arranges blocks; it never writes code you would have to check again.

Tokens for configuration, not code

In the customer example the assistant wrote 1,680 tokens for the whole session. Writing the same blocks as code takes at least 23,440 tokens, before the first test and before every fix.

Auditable by design

Each result carries its lineage: the rows, frames or documents it came from and every block it passed through. Pipelines are plain JSON you can diff, review and version.

On your premises

Pipelines, models and data run on your own servers, on GPU or CPU. With a local language model for the assistant, nothing leaves your network.

Checked before it runs

Connections between blocks are typed. A pipeline whose parts do not fit together is rejected before it touches your data.

Bring any model

ONNX models from Hugging Face, YOLO, XGBoost, LightGBM, CatBoost, scikit-learn, PyTorch, embeddings, rerankers and local LLMs: each one is wrapped as a block.

Compare

Could generative AI just write the code?

It could. Here is what that means for the customer example above.

AspectGenerative AI writes the codedeepbriq
What the AI writesat least 1,700 lines of new code, about 23,000 tokens, before the first test1,680 tokens for the whole session, and no new code
Reviewevery generated line, after every changeblocks reviewed once; a pipeline you can read in minutes
A changeregenerate, review and test againchange a parameter and run again
Auditthe reason behind a number is buried in generated codeevery result traced back to its inputs, block by block
Datapasted into a chat, in someone else's cloudon your servers; with a local LLM, nothing leaves

Measured on the customer example: three pipelines built from 12 distinct blocks, whose code is 1,720 lines and 23,440 tokens, a lower bound for writing them from scratch. The assistant's whole session, with Claude Sonnet 5.5, wrote 1,680 tokens and cost $0.32.

An open-source core is on its way

We are preparing the engine and the general-purpose blocks for release as open source. Domain-specific blocks ship as separate packages. Want an early look, or a pipeline for your own data? Get in touch.