Skip to main content

2.8.0 release notes

This release of AI-Link focuses improving usability and validating stability of the code base. This is the final planned major release of AI-Link for the AtScale Installer product. Versions 3.0 and later will be built to soley work with the AtScale Container product.

In this release, the following was changed:

  • A removal of enums from the public facing code base. Only enums that are explicitly meant for customer use are not in the enums.py file.
  • Bug fixes and additional testing.
  • Additional parameters for our read and write operations.

Please refer to our API documentation for the latest syntax to use with AI-Link. See below for updates associated with this release.

New Package Requirements

  • To avoid issues with subdependecies, AI-Link 2.8.0 will only work with pandas versions less than 2.2.0

User Flow Improvements

  • get_data and its variants can now leverage calculation groups using the group_by parameter
  • writeback and its variants and get_dimensions can now verify the AtScale service account can see write destinations using the check_permissions parameter

Bug Fixes

  • writeback and its variants will now correctly handle 0 row table write operations
  • the linear_regression function will correctly clean up its dependecy tables in the event of an error

Changelog for Syntax Updates

configuration

NEW PACKAGE REQUIREMENTS:

  • pandas
    • version must now be less than 2.2.0

data_model.py::DataModel

UPDATED FUNCTIONS:

  • writeback

    • Bug Fix

      • Adjusted behavior in the case of writing 0 row tables
    • Added parameter check_permissions

      • Determines if the function should error or proceed if the AtScale warehouse connection does not have read access to the created table
  • write_feature_importance

    • Bug Fix

      • Adjusted behavior in the case of writing 0 row tables
    • Added parameter check_permissions

      • Determines if the function should error or proceed if the AtScale warehouse connection does not have read access to the created table
  • get_data

    • Added optional parameter group_by
      • Create group by clause in the query for the given features. Defaults to None to group in the order of the categorical features in the query.
  • get_data_direct

    • Added optional parameter group_by
      • Create group by clause in the query for the given features. Defaults to None to group in the order of the categorical features in the query.
  • get_data_jdbc

    • Added optional parameter group_by
      • Create group by clause in the query for the given features. Defaults to None to group in the order of the categorical features in the query.
  • get_data_spark

    • Added optional parameter group_by
      • Create group by clause in the query for the given features. Defaults to None to group in the order of the categorical features in the query.
  • get_data_spark_jdbc

    • Added optional parameter group_by
      • Create group by clause in the query for the given features. Defaults to None to group in the order of the categorical features in the query.
  • get_database_query

    • Added optional parameter group_by
      • Create group by clause in the query for the given features. Defaults to None to group in the order of the categorical features in the query.
  • writeback_spark_jdbc

    • Added parameter check_permissions
      • Determines if the function should error or proceed if the AtScale warehouse connection does not have read access to the created table
  • writeback_spark

    • Added parameter check_permissions
      • Determines if the function should error or proceed if the AtScale warehouse connection does not have read access to the created table
  • get_features

    • Added support for parsing calculation groups when the use_published parameter is False
  • update_aggregate_feature

    • Added functionality to support updating metrical attributes
    • Added better error handling around roleplaying
  • bulk_operater

    • Added optional parameter return_error_dict

      • If the function should return a dictionary of dictionaries when failures are found. Defaults to False to error on failure.
    • Added optional parameter continue_on_errors

      • If the function should should still attempt changes for all valid inputs when failures are found. Defaults to False to not attempt any changes in the event of an error.

feature_engineering.py

UPDATED FUNCTIONS:

  • create_one_hot_encoded_features
    • Added optional parameter allow_large_cardinality
      • If the ohe algorithm can generate more than 20 columns, defaults to False. Raises an error if the planned number of resulting columns is higher than 20.

enums.py

REMOVED CLASSES:

  • DMVColumnBaseClass

    • Moved to private_enum module as it is not intended for customer use
  • Dimension

    • Moved to private_enum module as it is not intended for customer use
  • Hierarchy

    • Moved to private_enum module as it is not intended for customer use
  • Measure

    • Moved to private_enum module as it is not intended for customer use
  • Level

    • Moved to private_enum module as it is not intended for customer use
  • DBDataType

    • Moved to private_enum module as it is not intended for customer use
  • TimeLevels

    • Moved to private_enum module as it is not intended for customer use
  • PlatformType

    • Moved to private_enum module as it is not intended for customer use
  • RequestType

    • Moved to private_enum module as it is not intended for customer use
  • ScikitLearnModelType

    • Moved to private_enum module as it is not intended for customer use
  • CheckFeaturesErrMsg

    • Moved to private_enum module as it is not intended for customer use

client.py::Client

UPDATED FUNCTIONS:

  • autogen_semantic_model
    • Bug Fix

      • Adjusted behavior in the case of writing 0 row tables
    • Added parameter check_permissions

      • Determines if the function should error or proceed if the AtScale warehouse connection does not have read access to the created table

linear_regression.py

UPDATED FUNCTIONS:

  • linear_regression
    • Fixed bug where a subset of temporary tables could be left in the underlying database in the event of a failure