JavaScript
  • NatML for JavaScript
  • Preliminaries
    • Getting Started
  • Using Predictors
    • Core Concepts
    • Fetching Predictors
  • API Reference
    • IMLPredictor
    • IMLAsyncPredictor
    • MLModelData
    • MLModel
      • MLHubModel
      • MLEdgeModel
    • MLFeature
      • MLArrayFeature
      • MLAudioFeature
      • MLImageFeature
      • MLTextFeature
    • MLFeatureType
      • MLArrayType
      • MLAudioType
      • MLImageType
      • MLTextType
  • Insiders
    • Distributing Predictors
    • Changelog
    • GitHub
    • Discord
    • Blog
Powered by GitBook
On this page
  • Inspecting Feature Types
  • Input Features
  • Output Features
  • Inspecting Metadata
  • Disposing the Model

Was this helpful?

  1. API Reference

MLModel

abstract class MLModel

PreviousMLModelDataNextMLHubModel

Last updated 3 years ago

Was this helpful?

The MLModel class abstracts a self-contained machine learning model, containing a computation graph for making predictions along with feature type information and metadata.

Models are created from instances.

NatML offers two types of models depending on where predictions are made:

  • which performs predictions in the Hub cloud.

  • which performs predictions locally.

Currently, the Node SDK only supports Hub models.

Inspecting Feature Types

Models provide information about their expected input and output feature types. This type information is crucial for writing some model predictors.

Input Features

/**
 * Model input feature types.
 */
inputs: MLFeatureType[];

The model provides its expected input feature types. Typically, a predictor will handle any necessary conversions of your input feature so that it matches the type that the model expects.

The inputs are reported in the same order that they are expected by the model when making predictions.

instances do not report any inputs.

Output Features

/**
 * Model output feature types.
 */
outputs: MLFeatureType[];

The model provides its output feature types. This information is crucial in order to convert the model's raw outputs into more usable forms by predictors.

The outputs are reported in the same order that they are produced by the model when making predictions.

Inspecting Metadata

/**
 * Model metadata dictionary.
 */
metadata: { [key: string]: string };

Models expose metadata that was defined when they were created.

Disposing the Model

/**
 * Dispose the model and release resources.
 */
dispose (): void;

Models create native and/or server resources. As a result, you must dispose of the model once you are done using it.

Do not use a model once it has been disposed. Doing so will lead to undefined behaviour.

instances to not report any outputs.

instances to not report any metadata.

MLModelData
MLHubModel
MLEdgeModel
MLHubModel
MLHubModel
MLHubModel