How GenericML works

GenericML turns ML experimentation into a configuration problem rather than a re‑engineering exercise: add domain features, pick a label, generate candidate models, and keep everything traceable.

The flow

  1. Model the domain (DDD)
    Define bounded contexts + aggregates so semantics are stable and leakage is reduced.
  2. Define a decision problem
    Make the decision explicit (what action, what constraints, what outcomes).
  3. Create a VectorSchema
    Versioned features (float / float[]), units, transforms, windowing rules, leakage controls.
  4. Generate vectors
    Produce VectorInstances from domain events/telemetry. Store big arrays externally; keep hashes/refs in the graph.
  5. Train ModelPacks (AutoML)
    CPU‑first training + validation, producing deployable artefacts with evidence and validity envelopes.
  6. Ensemble the signals
    Weighted, stacked, rule+model, confidence‑aware, or regime‑gated (mixture‑of‑experts).
  7. Ship into apps/agents
    Expose via REST/gRPC/serverless; decisions happen at point‑of‑use, not in a separate notebook pipeline.
  8. Log evidence + outcomes in Neo4j
    Trace everything: data → vector → model → ensemble → evidence → decision → outcome.
  9. HITL continuous improvement
    Experts review errors, adjust thresholds, approve updates, and keep models aligned with reality.

One practical rule

If you can’t explain a prediction in terms of the domain model, you probably don’t have the right bounded context or vector schema yet.