feast  by feast-dev

Open-source feature store for AI/ML

created 6 years ago
6,237 stars

Top 8.4% on sourcepulse

GitHubView on GitHub
Project Summary

Feast is an open-source feature store designed to streamline the management and serving of ML features for both training and real-time inference. It targets ML platform teams, enabling them to ensure feature consistency, prevent data leakage through point-in-time correctness, and decouple ML models from underlying data infrastructure.

How It Works

Feast manages an offline store for batch processing and model training, and a low-latency online store for real-time predictions. A battle-tested feature server retrieves pre-computed features. Its core advantage lies in its ability to generate point-in-time correct feature sets, preventing future data leakage during training, and providing a unified data access layer that abstracts storage details, enhancing model portability across different data infrastructures and serving paradigms.

Quick Start & Requirements

  • Install Feast: pip install feast
  • Initialize a feature repository: feast init my_feature_repo
  • Apply feature definitions: feast apply
  • Explore data: feast ui
  • Build training dataset: Python SDK (see README for example)
  • Materialize features: feast materialize-incremental <CURRENT_TIME>
  • Retrieve online features: Python SDK (see README for example)
  • Prerequisites: Python, and potentially specific data source connectors (e.g., Snowflake, BigQuery, Redshift) for offline/online stores.

Highlighted Details

  • Supports a wide array of data sources including Snowflake, Redshift, BigQuery, Parquet, and community plugins for Hive, Postgres, Spark, and more.
  • Offers extensive offline and online store integrations, including Snowflake, DynamoDB, Redis, Bigtable, and community plugins for Cassandra, ScyllaDB, and others.
  • Features include on-demand transformations (Beta), streaming transformations (Alpha), and integrations with data governance tools like Amundsen and DataHub.
  • Includes an experimental Feast Web UI for data exploration and management.

Maintenance & Community

Feast is an active community project with contributions from numerous individuals. Resources for contribution and development are available. The project maintains a Slack channel for community interaction.

Licensing & Compatibility

The project is licensed under the Apache License 2.0, which is permissive and generally compatible with commercial and closed-source applications.

Limitations & Caveats

Some features, such as Vector Search, Offline Feature Server, Java/Go feature servers, and the Feast Web UI, are in Alpha or Beta stages, indicating potential instability or ongoing development. The project is under active development, and users should consult the changelog for potential breaking changes.

Health Check
Last commit

1 day ago

Responsiveness

1 day

Pull Requests (30d)
58
Issues (30d)
40
Star History
227 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.