Feast (Feature Store) is a tool for managing and serving machine learning features. Feast is the bridge between models and data.
Feast aims to:
Feast decouples feature engineering from feature usage, allowing independent development of features and consumption of features. Features that are added to Feast become available immediately for training and serving. Models can retrieve the same features used in training from a low latency online store in production. This means that new ML projects start with a process of feature selection from a catalog instead of having to do feature engineering from scratch.
# Setting things up fs = feast.Client('feast.example.com') customer_features = ['CreditScore', 'Balance', 'Age', 'NumOfProducts', 'IsActive'] # Training your model (typically from a notebook or pipeline) data = fs.get_historical_features(customer_features, customer_entities) my_model = ml.fit(data) # Serving predictions (when serving the model in production) prediction = my_model.predict(fs.get_online_features(customer_features, customer_entities))
The following commands will start Feast in online-only mode.
git clone https://github.com/feast-dev/feast.git cd feast/infra/docker-compose cp .env.sample .env docker-compose -f docker-compose.yml -f docker-compose.online.yml up -d
This will start a local Feast deployment with online serving. Additionally, a Jupyter Notebook with Feast examples.
Please see the links below to set up Feast for batch/historical serving with BigQuery.
Please refer to the official documentation at https://docs.feast.dev
Feast is a community project and is still under active development. Your feedback and contributions are important to us. Please have a look at our contributing guide for details.