Snowflake
This guide describes how to connect Aporia to a Snowflake data source in order to monitor a new ML Model in production.
We will assume that your model inputs, outputs and optionally delayed actuals can be queried with Snowflake SQL. This data source may also be used to connect to your model's training/test set to be used as a baseline for model monitoring.
Create a Service Account for Snowflake access
In order to provide access to Snowflake, read-only service account for Aporia in Snowflake.
Please use the SQL snippet below to create a service account for Aporia. Before using the snippet, you will need to populate the following:
<aporia_password>
: Strong password to be used by the service account user.<your_database>
: Snowflake database with your ML training / inference data.
Creating an Snowflake data source in Aporia
To create a new model to be monitored in Aporia, you can call the aporia.create_model(...)
API:
Each model in Aporia contains different Model Versions. When you (re)train your model, you should create a new model version in Aporia.
Each raw input, feature or prediction is mapped by default to the column of the same name in the Snowflake query.
By creating a feature named amount
or a prediction named proba
, for example, the Snowflake data source will expect a column in the Snowflake query named amount
or proba
, respectively.
Next, create an instance of SnowflakeDataSource
and pass it to apr_model.connect_serving(...)
or apr_model.connect_training(...)
:
Note that as part of the connect_serving
API, you are required to specify additional 2 columns:
id_column
- A unique ID to represent this prediction.timestamp_column
- A column representing when did this prediction occur.
What's Next
For more information on:
Advanced feature / prediction <-> column mapping
How to integrate delayed actuals
How to integrate training / test sets
Please see the Data Sources Overview page.
Last updated