feat: Making transformer optional for ODFV#6011
Open
nquinn408 wants to merge 11 commits intofeast-dev:masterfrom
Open
feat: Making transformer optional for ODFV#6011nquinn408 wants to merge 11 commits intofeast-dev:masterfrom
nquinn408 wants to merge 11 commits intofeast-dev:masterfrom
Conversation
07dc0da to
f769fac
Compare
Signed-off-by: Nick Quinn <nicholas_quinn@apple.com>
Signed-off-by: Nick Quinn <nicholas_quinn@apple.com>
This commit fixes three critical issues to properly support OnDemandFeatureViews without transformations: 1. on_demand_feature_view.py: - Allow feature_transformation to be None (passthrough mode) - Fix __init__ to not raise ValueError when both feature_transformation and udf are None - Only create FeatureTransformationProto when transformation exists - Add null checks before accessing feature_transformation 2. utils.py: - Fix passthrough ODFVs being skipped (continue at line 679-680) - Extract features from initial response for passthrough ODFVs - Unify transformed_features variable across all code paths - Fix aggregation results assignment 3. Java interop: - Ensures hasFeatureTransformation() in Java correctly returns false for passthrough ODFVs - Prevents unnecessary transformation service calls Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Nick Quinn <nicholas_quinn@apple.com>
The infer_features() method at line 979 was calling self.feature_transformation.infer_features() without checking if feature_transformation is None. This caused failures during 'feast apply' for passthrough ODFVs (those without transformations). Changes: - Add early return for passthrough ODFVs if features are already defined - Require explicit schema for passthrough ODFVs (cannot be inferred) - Raise clear error message if passthrough ODFV has no schema - Maintain existing behavior for ODFVs with transformations Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Nick Quinn <nicholas_quinn@apple.com>
Signed-off-by: Nick Quinn <nicholas_quinn@apple.com>
f769fac to
94bc001
Compare
Signed-off-by: Nick Quinn <nicholas_quinn@apple.com>
94bc001 to
43980fe
Compare
Signed-off-by: Nick Quinn <nicholas_quinn@apple.com>
- Change feature_transformation type annotation to Optional[Transformation] - Add type annotation and assertion for transformed_features in utils.py - Convert aggregations to proto using to_proto() method - Refactor OnDemandFeatureViewSpec construction to use direct arguments instead of **kwargs for better type inference Fixes mypy errors: - utils.py:747: transformed_features indexing - on_demand_feature_view.py:259: None assignment to Transformation - on_demand_feature_view.py:530+: OnDemandFeatureViewSpec type mismatches Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Nick Quinn <nicholas_quinn@apple.com>
Signed-off-by: Nick Quinn <nicholas_quinn@apple.com>
a63020d to
b9b38a1
Compare
… mapping Signed-off-by: Nick Quinn <nicholas_quinn@apple.com>
0b53956 to
befdd97
Compare
Signed-off-by: Nick Quinn <nicholas_quinn@apple.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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.
Uh oh!
There was an error while loading. Please reload this page.