Package for the Featureform 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
Built Distribution
File details
Details for the file featureform-1.12.6.tar.gz
.
File metadata
- Download URL: featureform-1.12.6.tar.gz
- Upload date:
- Size: 7.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5c6490cb03c002f755da8659be7479f684421e0d10488b6c231a6ed9bce67e42 |
|
MD5 | 80de5965c1cefc86d95847b0093d04bf |
|
BLAKE2b-256 | 2a2c0cb19e4837583cf40bbd0c4eb1f17c114bf10c8b3dae9e45009a923045ad |
File details
Details for the file featureform-1.12.6-py3-none-any.whl
.
File metadata
- Download URL: featureform-1.12.6-py3-none-any.whl
- Upload date:
- Size: 7.9 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 06d036dd26ba688820e28adb509ecc21e22f36cc689a1264eff21ae1fd5c98c4 |
|
MD5 | a7fbc544f20f2d73593482e88558e3ff |
|
BLAKE2b-256 | f1885a92b1c12b0e6c012112418a8795e4c339bc8036cbd3490afbdaf99fb943 |