SOPHIA XT
Service · Custom Model Design & Training

Custom models
that earn their keep.

We design, fine-tune, and train custom AI models — but only when a frontier API can't do the job, the unit economics work, and the dataset earns the build. This is how Cassandra T1.5 was trained for DiagBuddy.AI, end to end.

The Cassandra family

Three versions.
One philosophy.

Our in-house masked-diffusion language model lineage. T1 is open + Apache 2.0. T1.5 powers DiagBuddy.AI in production today. T2 was designed in full and never trained, because evaluation moved the line from block to fusion to compositional. That route shipped as Mnema V1, which is live.

Open · Apache 2.0

Cassandra T1

v1.0

Original masked-diffusion edge model. 1.3B params. Trained from scratch with anchor-token masking. Validated 1.67× OOD generalization advantage over baseline.

1.3B
params
1.67×
OOD lift
504+
validated gens
Live
Live · In production

Cassandra T1.5

v1.5 · Fully trained

Fully-trained successor with extended pretraining + LTMi-XT-grounded retrieval baked into the loss function. 59× corpus-overlap lift over T1 baseline. Powers the DiagBuddy.AI diagnostic engine in production.

59×
corpus lift
1.3B
params
Live
production
Superseded by Mnema V1

Cassandra T2

v2.0 · designed, not trained

Architecture and training plan built out in full, with success criteria pre-registered before any run. The run was never made, because by then the evaluation work had moved the line on: block, then fusion, then a compositional architecture that was returning better numbers on the same benchmarks. That route shipped as Mnema V1. The design document is published rather than withdrawn, because the branch not taken is part of the record.

0
training runs
Pre-reg
success criteria
Mnema
what shipped
The DiagBuddy.AI training story

Four phases.
No magic.

How we trained Cassandra T1.5 on the DiagBuddy corpus — from raw diagnoses through LTMi-XT crystallization, anchor-token masking, LENS XT constraint embedding, and into production. Every step is reproducible.

PIPELINE.svg · Animated
01

Corpus assembly

  • DiagBuddy.AI captured 3,000+ field diagnoses
  • Each diagnosis paired with: model number, fault chain, repair sequence, outcome
  • Indexed into LTMi-XT 64³ lattice for structured retrieval
phase-01.ts
02

Anchor-token masking

  • Critical tokens (part numbers, codes, torque values) marked as anchors
  • Masking strategy preserves anchors during training noise
  • Forces model to generate around them deterministically
phase-02.ts
03

LENS XT constraint training

  • Constraint grammar compiled from DiagBuddy repair specs
  • Model trained to generate within verified envelope
  • Hallucinated motor torques become structurally impossible
phase-03.ts
04

Validation + deploy

  • Hold-out test set of unseen appliance models
  • Bench-tested against ground-truth field outcomes
  • Shipped into DiagBuddy.AI when 95th-percentile passed
phase-04.ts
Why the corpus matters

LTMi crystallizes.
LENS XT constrains.

Two systems work in tandem. LTMi-XT turns a messy corpus into a structured 64³ lattice with topologically-grounded retrieval. LENS XT applies declarative constraints so the model can't generate outside the verified envelope.

LTMi-XT · Lattice

Topological retrieval

BLAKE2b hash places every chunk at a 3D coordinate. Semantically similar content clusters in lattice space — fast retrieval, structurally grounded.

64³ loci BLAKE2b hash Apache 2.0
LENS XT · Constraint

Declarative constraints

Token-level filtering on the diffusion path. The model proposes; LENS XT ratifies. Invalid candidates never see daylight.

.lensx specs 256 of 259 tests passing deterministic
The honest part

When to train.
When not to.

01

Custom IS the answer

  • Domain has structured vocabulary your model must respect (part codes, error codes, regulations)
  • Latency or cost makes API-only approaches infeasible at scale
  • Privacy/compliance requires on-prem inference with proprietary weights
  • You have ≥1,000 high-quality labeled examples for the target task
02

Custom is NOT the answer

  • A frontier model already does the task well with prompting + retrieval
  • Your data volume is under 100 examples (fine-tune a smaller adapter instead)
  • You need to ship in under 6 weeks (custom training takes longer to validate)
  • The unit economics don't survive a fully-loaded training + serving cost

Got a dataset?
Let's see if it's worth training.

Send us a dataset summary. We'll tell you honestly whether a custom model makes sense — or whether retrieval, fine-tuning, or just better prompting would get you there for a tenth of the budget.