Feast (Feature Store) is a tool for managing and serving machine learning features. Feast is the bridge between models and data.
Feast aims to:
- Provide a unified means of managing feature data from a single person to large enterprises.
- Provide scalable and performant access to feature data when training and serving models.
- Provide consistent and point-in-time correct access to feature data.
- Enable discovery, documentation, and insights into your features.
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
At this point the .env
can be configured, and a GCP service account can be added if BigQuery will be used for historical serving.
Bring up Feast:
docker-compose up -d
The command above will bring up a complete Feast deployment with a Jupyter Notebook. This notebook contains Feast example tutorials.
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.