@vncsleal/prisml
v0.2.0
Published
PrisML umbrella package: core + runtime + CLI
Maintainers
Readme
@vncsleal/prisml
Compiler-first machine learning library for TypeScript + Prisma applications.
Overview
PrisML treats ML model training as a compile-time step, generating immutable ONNX artifacts that provide type-safe, in-process predictions at runtime.
Philosophy:
- Training = compilation (build-time)
- Artifacts = immutable binaries (committed to git)
- Predictions = synchronous function calls (in-process)
Installation
npm install @vncsleal/prismlThis umbrella package includes:
@vncsleal/prisml-core- Model definitions and types@vncsleal/prisml-cli- Training and validation commands@vncsleal/prisml-runtime- ONNX inference engine
Quick Start
1. Define Model
import { defineModel } from '@vncsleal/prisml';
export const salesModel = defineModel<Product>({
name: 'ProductSales',
modelName: 'Product',
output: { field: 'sales', taskType: 'regression' },
features: {
price: (p) => p.price,
stock: (p) => p.stock,
},
algorithm: { name: 'forest', version: '1.0.0' },
});2. Train (Build-Time)
npx prisml train --config ./prisml.config.ts --schema ./prisma/schema.prismaGenerates:
ProductSales.onnx- Model binaryProductSales.metadata.json- Schema contract
3. Predict (Runtime)
import { PredictionSession } from '@vncsleal/prisml';
const session = new PredictionSession();
await session.initializeModel(
'./.prisml/ProductSales.metadata.json',
'./.prisml/ProductSales.onnx',
schemaHash
);
const result = await session.predict('ProductSales', product, {
price: (p) => p.price,
stock: (p) => p.stock,
});Features
✓ Type-safe model definitions
✓ Prisma schema binding with drift detection
✓ Schema-only contract validation (prisml check)
✓ ONNX Runtime integration
✓ Deterministic feature encoding
✓ Quality gates for build-time validation
✓ Typed error handling
Additional Tools
Schema Annotations
Install prisml-generator to add type-safe ML annotations to your Prisma schema:
npm install prisml-generator --save-devSee generator documentation for details.
Documentation
License
MIT © Vinicius Leal
