Skip to main content

Package for the Featureform Enterprise Feature Store

Project description

Featureform Python Client

Overview

Featureform’s Python client is a SDK for defining, managing and serving resources (e.g. infrastructure providers, data sources, transformations, etc.). At a high level, the API is divided into two parts:

  • Registration: register data stores (e.g. PostgreSQL), data sources (e.g. tables or CSV files) as resources or get and/or list previously registered resources
  • Serving: retrieve training sets and features for offline training or online inference

Requirements

  • Python 3.7-3.10 (Untested with version 3.11)

Setting Up Your Local Development Environment

Step 1: Install gRPC and Protocol Buffer Tooling

See grpc.io for instructions on installing the protocol buffer compiler for your OS and language-specific plugins for Golang (NOTE: the Golang dependencies can also be installed via Homebrew.)

Step 2: Create Python Virtual Environment

You may create a Python virtual environment however you prefer, but the directory name .venv is ignored by Git for convenience, so you may choose to create your virtual environment in the root of the project.

> python -m venv .venv && . .venv/bin/activate
(.venv) >

Step 3: Upgrade pip and Install Build Dependencies

The following dependencies are required to build the client:

(.venv) > python -m pip install --upgrade pip
(.venv) > python -m pip install -r requirements.txt

Step 4: Compile API Protocol Buffers and Python Stub

The shell script gen_grpc.sh has been provided for convenience. Change the file access permissions to make it executable and run it:

(.venv) > chmod +x gen_grpc.sh
(.venv) > ./gen_grpc.sh

Step 5: Build Python Client and Dashboard

The shell script pip_update.sh has been provided for convenience. Change the file access permissions to make it executable and run it:

(.venv) > chmod +x pip_update.sh
(.venv) > ./pip_update.sh

Step 6: Optionally Run Client Test Suite

To ensure your changes haven’t broken the client, run the test suite with the following make target:

(.venv) > make pytest

Outcome

With steps 1-5 successfully completed, you should have the featureform CLI command accessible in your terminal session.

(.venv) > featureform -h

To further verify that your setup is complete and correct, you may optionally walk through the Quickstart tutorial. You may put the definitions.py file at the root of the project, which won’t be ignored by Git, or use a URL to a file (e.g. hosted on GitHub).

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

featureform_enterprise-0.13.39rc0.tar.gz (6.2 MB view details)

Uploaded Source

Built Distribution

File details

Details for the file featureform_enterprise-0.13.39rc0.tar.gz.

File metadata

File hashes

Hashes for featureform_enterprise-0.13.39rc0.tar.gz
Algorithm Hash digest
SHA256 486089d1156430cb60e99b2d0ae587cb5a29dd7907c2d20563ebc0b651b75bb7
MD5 d9ad41bb83e1b3cdffccf15456baff8f
BLAKE2b-256 a1a68c4b66211977af4325819908c780e88644956f3f5da0a5a0e140d4006a50

See more details on using hashes here.

File details

Details for the file featureform_enterprise-0.13.39rc0-py3-none-any.whl.

File metadata

File hashes

Hashes for featureform_enterprise-0.13.39rc0-py3-none-any.whl
Algorithm Hash digest
SHA256 c6e39ebdcb2039744a9dad3f88f1fac6fee3d1075794bf60b1a9e1ef870a5119
MD5 b7657f434e562057a6ae0a322a63eb9a
BLAKE2b-256 ef437b1e5eafc7990778702cb8490363d0f1ed67382c4b09f8a1e86da69085c6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page