feat: Feast-MLflow Integration - #6235
Merged
Merged
Conversation
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
final_mlflow_demo.mp4
Native MLflow integration for Feast that provides automatic feature lineage tracking alongside ML experiments. When enabled via feature_store.yaml, every feature retrieval is logged to the active MLflow run.
Key Capabilities
Auto-logging:Feature retrieval metadata is tagged on the active MLflow run (feast.feature_refs, feast.feature_views, feast.feature_service, feast.entity_count, etc.)Entity DataFrame archival:Optionally saves the training entity DataFrame as an MLflow artifact (entity_df.parquet) for full reproducibilityModel-to-feature-service resolution:store.mlflow.resolve_features() maps any MLflow model URI back to its Feast feature service, enabling serving pipelines to auto-discover which features a model needsEntity DataFrame reconstruction:store.mlflow.get_training_entity_df() rebuilds the exact entity DataFrame from a past run's artifacts, enabling training reproducibilityModel lifecycle lineage:log_model auto-attaches feast_features.json, register_model propagates feast.feature_service to model versions, load_model links prediction runs to training runsOperations audit trail:feast apply and feast materialize logged to a dedicated {project}-feast-ops experimentDataset tracking:log_training_dataset() logs training DataFrames as MLflow dataset inputsTwo access patterns:store.mlflow (explicit, multi-store safe) and feast.mlflow (drop-in replacement for import mlflow)Configuration:Controlled entirely via feature_store.yaml under a new mlflow: blockDemo
Full end-to-end demo notebook with all capabilities: integration-example
Which issue(s) this PR fixes:
Checks
git commit -s)Testing Strategy
Misc