Install the Snowflake Python APIs library

You can install the Snowflake Python APIs library for use with conda or a virtual environment. Before you start, be sure to review the supported Python versions.

To set up the Snowflake Python APIs library, complete the following steps:

  1. Activate a Python environment.

  2. Install the library.

  3. Set options for the Python API client.

Activate a Python environment

To set up an environment in which to run Python code, you need to activate a Python environment. For example, you can use conda or a virtual environment (venv).

Note

These steps are only shown as an example, and following along with the example might require additional rights to third-party data, products, or services that are not owned or provided by Snowflake. Ensure that you have the appropriate rights to third-party data, products, or services before continuing.

You can use conda to create an environment for running Python code. If you don’t have conda, you can install it from the conda website.

For information about conda, see Conda Documentation. To download and install conda, see Installing conda.

  1. Create a conda environment:

    conda create -n <env_name> python==3.10
    
    Copy
  2. Activate the environment:

    conda activate <env_name>
    
    Copy

Install the Snowflake Python APIs library

You can install the Snowflake Python APIs library from the Python Package Index (PyPI).

  • In the conda or virtual environment that you created, run the following pip command to install the library:

    pip install snowflake -U
    
    Copy

Installing the snowflake package automatically installs all of its subpackages as dependencies, including the Snowflake Python Connector, the Snowpark Python library, and snowflake.core.

  • To also install the Snowpark ML library as an extra package dependency, you can run the following pip command:

    pip install "snowflake[ml]" -U
    
    Copy

After you install the library, you must create a connection to Snowflake before you can use the API. For more information about connecting, see Connect to Snowflake with the Snowflake Python APIs.

Set Python API client options

You can set the following environment variables to control client options for the Snowflake Python APIs:

_SNOWFLAKE_PRINT_VERBOSE_STACK_TRACE

Specifies whether full stack tracing is enabled in printed error messages.

Possible values:

  • Enabled: true, t, yes, y, on

  • Disabled: Any other value or undefined

Default: Disabled

When this option is disabled, the API client prints reduced stack traces instead of full stack traces in error messages.

To disable this option for Python notebook environments, you must also run the following line in your notebook. After you run this line once, the environment variable controls the stack tracing behavior by itself:

%xmode minimal
Copy
_SNOWFLAKE_ENABLE_RETRY_REQUEST_QUERY

Specifies whether automatic retries are enabled on query requests with specific status codes.

Possible values:

  • Enabled: true, t, yes, y, on

  • Disabled: Any other value or undefined

Default: Enabled

When this option is enabled, the API client automatically retries query requests when they have the following status codes:

  • 202

  • 429

  • 503

  • 504