Implementation:Truera Trulens SnowflakeConnector Server Side
| Knowledge Sources | |
|---|---|
| Domains | Infrastructure, Snowflake |
| Last Updated | 2026-02-14 08:00 GMT |
Overview
Concrete tool for enabling server-side feedback evaluation within Snowflake compute infrastructure, provided by the trulens-connectors-snowflake package.
Description
Server-side evaluation is configured via the init_server_side parameter on SnowflakeConnector. When enabled, TruLens packages feedback functions as Snowpark stored procedures and schedules them as Snowflake tasks, moving evaluation compute from the client to the server.
Usage
Set init_server_side=True when creating a SnowflakeConnector. Optionally use init_server_side_with_staged_packages=True to use pre-staged Python packages.
Code Reference
Source Location
- Repository: trulens
- File: src/connectors/snowflake/trulens/connectors/snowflake/connector.py
- Lines: L72-73 (parameters), L121-131 (initialization logic)
Signature
class SnowflakeConnector(DBConnector):
def __init__(
self,
...,
init_server_side: bool = False,
init_server_side_with_staged_packages: bool = False,
...
):
"""
Args:
init_server_side: Enable server-side feedback evaluation in Snowflake.
Creates stored procedures and tasks for running feedback functions.
init_server_side_with_staged_packages: Use pre-staged Python packages
for server-side evaluation instead of downloading at runtime.
"""
Import
from trulens.connectors.snowflake import SnowflakeConnector
I/O Contract
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| init_server_side | bool | No | Enable server-side evaluation (default: False) |
| init_server_side_with_staged_packages | bool | No | Use staged packages (default: False) |
Outputs
| Name | Type | Description |
|---|---|---|
| (side effect) | Snowflake Tasks | Stored procedures and scheduled tasks for server-side evaluation |
Usage Examples
Enable Server-Side Evaluation
from trulens.connectors.snowflake import SnowflakeConnector
from trulens.core.session import TruSession
connector = SnowflakeConnector(
account="my_account",
user="my_user",
password="my_password",
database="TRULENS_DB",
schema="TRULENS_SCHEMA",
warehouse="COMPUTE_WH",
init_server_side=True,
)
session = TruSession(connector=connector)