Skip to content

Releases: feathr-ai/feathr

v1.0.0

28 Feb 10:04
9975c9a
Compare
Choose a tag to compare

We are excited to announce Feathr 1.0.0 is released, please refer to https://feathr-ai.github.io/feathr/release-announcements/v1.0.0.html for details

What's Changed

Read more

v1.0.0-rc4

28 Feb 03:55
31836be
Compare
Choose a tag to compare
v1.0.0-rc4 Pre-release
Pre-release

What's Changed

Read more

v0.10.4-rc3

17 Jan 08:52
3267655
Compare
Choose a tag to compare
v0.10.4-rc3 Pre-release
Pre-release

What's Changed

Full Changelog: v0.9.0...v0.10.4-rc3

0.10.4-rc2

17 Jan 08:08
23a7cb1
Compare
Choose a tag to compare
0.10.4-rc2 Pre-release
Pre-release

What's Changed

Full Changelog: v0.9.0...v0.10.4-rc2

0.10.4-rc1

17 Jan 07:18
290ceb3
Compare
Choose a tag to compare
0.10.4-rc1 Pre-release
Pre-release

What's Changed

Full Changelog: v0.9.0...v0.10.4-rc1

Feathr Online Transform (alpha)

15 Dec 15:16
e25012a
Compare
Choose a tag to compare
Pre-release

Overview

As of v0.10.0, Feathr team is happy to introduce Online Transform (alpha). You might want to try Online Transform in the following scenarios:

  • Featurization source for transformation is only available at inference time.
  • Pre-compute features with offline transform might be a waste of storage and compute resources.
  • Decouple featurization work off the upstream online system.
  • Write Python programs to use the online transformation functions.

Note: Only use alpha build for evaluation. Alpha build is intented for early access and feedback, it might not as stable as GA build and might be changed at any time before GA without notice. Please use alpha build at your risk.

Running Feathr Online Transform locally

Feathr Online Transform can be run locally with docker. Please check out details on README.

Running Feathr Online Transform on Azure

To deploy Feathr Online Transform to Azure, you need to have a AKS cluseter setup on Azure first. Then follow README to deploy helm chart to AKS cluster.

Using Python library

Feathr Online Transform also has a Python library for further development, check out details from the project site

Roadmap

  • Define transformation once for both online and offline consumption.
  • Registry integration
  • Java Library

Additional Note

Source code for Online Transform (alpha) are hosted under personal accounts, Feathr team is working on moving these source codes to the official repo but it might take some time.

v0.9.0

01 Nov 12:42
3c426ff
Compare
Choose a tag to compare

Breaking Changes

We have changed the execution engine for derived features to Spark SQL so this might introduce a little bit breaking changes for users who is not running the up-to-date sample notebooks. Specifically, they might face this failure:

Preprocessed DataFrames are: 
{'feature_user_age,feature_user_gift_card_balance,feature_user_has_valid_credit_card,feature_user_tax_rate': JavaObject id=o243}
Traceback (most recent call last):
  File "feathr_pyspark_driver.py", line 107, in <module>
    submit_spark_job(feature_names_funcs)
  File "feathr_pyspark_driver.py", line 85, in submit_spark_job
    py4j_feature_job.mainWithPreprocessedDataFrame(job_param_java_array, new_preprocessed_df_map)
  File "/home/trusted-service-user/cluster-env/env/lib/python3.8/site-packages/py4j/java_gateway.py", line 1304, in __call__
    return_value = get_return_value(
  File "/opt/spark/python/lib/pyspark.zip/pyspark/sql/utils.py", line 117, in deco
pyspark.sql.utils.AnalysisException: Undefined function: 'toBoolean'. This function is neither a registered temporary function nor a permanent function registered in the database 'default'.; line 1 pos 84
)

Users should change:

feature_user_purchasing_power = DerivedFeature(name="feature_user_purchasing_power",
                                      key=user_id,
                                      feature_type=FLOAT,
                                      input_features=[
                                          feature_user_gift_card_balance, feature_user_has_valid_credit_card],
                                      transform="feature_user_gift_card_balance + if_else(toBoolean(feature_user_has_valid_credit_card), 100, 0)")

to

feature_user_purchasing_power = DerivedFeature(name="feature_user_purchasing_power",
                                      key=user_id,
                                      feature_type=FLOAT,
                                      input_features=[
                                          feature_user_gift_card_balance, feature_user_has_valid_credit_card],
                                      transform="feature_user_gift_card_balance + if(boolean(feature_user_has_valid_credit_card), 100, 0)")

What's Changed

Read more

v0.8.0

23 Sep 02:05
ef3e130
Compare
Choose a tag to compare

Highlighted Features

Improvements

Full Changelog: v0.7.2...v0.8.0

v0.7.2 Enhancement on supported stores and Web UI

29 Aug 13:58
8752544
Compare
Choose a tag to compare

Highlighted Features

Improvements

New Contributors

Full Changelog: v0.6.0...v0.7.0

v0.6.0 Improved Deployment experience, containerized UI and backend in one simple container, support for Azure SQL as registry backend and RBAC

29 Jul 19:05
10be7e4
Compare
Choose a tag to compare

Highlighted Features:

  • Containerized deployment with docker image of UI and registry backend by @blrchen in #379
  • SQL backend Feature Registry Service by @windoze in #311
  • Purview backend Feature Registry Service by @YihuiGuo #404
  • Feathr UI with Registry API backend by @blrchen #303
  • Fixed bugs and improved documentation to make deployment easier by @jainr in #398 #443
  • Project level access control for registry APIs by @Yuqing-cat in #409
  • Added a new fraud detection sample by @t-curiekim in #515

Improvements:

New Contributors

Full Changelog: v0.5.1...v0.6.0