DocumentationNeurondB Documentation

Govern the full model lifecycle inside PostgreSQL

Model registry & metadata

Every model version is tracked in the NeurondB registry table with immutable metadata. Store provenance, signatures, and deployment configuration in JSONB to integrate with your compliance controls.

Register a version

Register model

SELECT neurondb_register_model(
  name        => 'reranker-cross-encoder',
  version     => '2.1.0',
  storage_url => 's3://models/neurondb/reranker-cross-encoder-2.1.0.onnx',
  runtime     => 'onnx',
  device      => 'auto',
  metadata    => jsonb_build_object(
    'owner', 'ml-platform',
    'git_commit', 'b4c5d9f',
    'trained_at', CURRENT_TIMESTAMP
  )
);

Inspect registry

List models

SELECT name,
       version,
       metadata ->> 'owner'     AS owner,
       metadata ->> 'git_commit' AS git_commit,
       created_at,
       status
FROM   neurondb_model_registry
ORDER  BY created_at DESC;

Rollout controls & staged environments

Promote models between dev, staging, and production directly in SQL. NeurondB stores active deployment slots and supports canary percentages for gradual rollouts.

Promote model

Promote to production

SELECT neurondb_promote_model(
  name          => 'reranker-cross-encoder',
  source_stage  => 'staging',
  target_stage  => 'production',
  canary_weight => 0.25
);

Active deployments

View active deployments

SELECT stage,
       name,
       version,
       canary_weight,
       created_at
FROM   neurondb_deployments
WHERE  status = 'active'
ORDER  BY stage, created_at DESC;

Performance monitoring

Track model performance metrics and set up alerts for degradation.

Model metrics

SELECT 
  model_name,
  version,
  AVG(latency_ms) as avg_latency,
  PERCENTILE_CONT(0.95) WITHIN GROUP (ORDER BY latency_ms) as p95_latency,
  COUNT(*) as request_count
FROM neurondb_model_metrics
WHERE created_at > NOW() - INTERVAL '1 hour'
GROUP BY model_name, version;

Next Steps