Skip to content

Releases: sassoftware/python-sasctl

v1.10.2

10 Apr 21:14
Compare
Choose a tag to compare

Improvements

  • Introduced generate_model_card into write_json_files.py to allow for python models to work with planned model card tab in SAS Model Manager.

Bugfixes

  • Allow for score code to impute NaN values in tables that have been loaded into SAS Model Manager.
  • Fix issue where target_value was not being properly set during score code generation
  • Updated pzmm_generate_requrirements_json.ipynb so the requirements file is generated properly.
  • Added missing statistics to dmcas_fitstat.json file.

v1.10.1

25 Oct 21:05
Compare
Choose a tag to compare

Improvements

  • Introduced ability to specify the target index of a binary model when creating score code.
    • index can be specified in pzmm.import_model.ImportModel.import_model()
    • Relevant examples updated to include target_index.

Bugfixes

  • Reworked write_score_code.py to allow for proper execution of single line scoring.
  • Added template files for assess_model_bias.py to allow for proper execution

v1.10.0

31 Aug 22:03
Compare
Choose a tag to compare
Prep for release

v1.9.4

15 Jun 17:37
Compare
Choose a tag to compare

Improvements

  • Created pytest fixture to begin running Jupyter notebooks within the GitHub automated test actions.
  • Updated examples:
    • Custom KPI and model parameters example now checks for the performance job's status.
    • Update H2O example to show model being published and scored using the "maslocal" destination.
    • Updated models to be more realistic for pzmm_binary_classification_model_import.ipynb.

Bugfixes

  • Adjust pzmm.ScoreCode.write_score_code() function to be compatible with future versions of pandas.
  • Reworked H2O section of pzmm.ScoreCode.write_score_code() to properly call H2OFrame values.
  • Fixed call to pzmm.JSONFiles.calculate_model_statistics() in pzmm_binary_classification_model_import.ipynb.

v1.9.3

08 Jun 18:36
Compare
Choose a tag to compare

Improvements

  • Refactored gitIntegration.py to git_integration.py and added unit tests for better test coverage.

Bugfixes

  • Fixed issue with ROC and Lift charts not properly being written to disk.
  • Fixed JSON conversion for Lift charts that caused TRAIN and TEST charts to be incorrect.
  • Fixed issue with H2O score code and number of curly brackets.
  • Updated score code logic for H2O to account for incompatibility with Path objects.
  • Fixed issue where inputVar.json could supply invalid values to SAS Model Manager upon model import.
  • Fixed issue with services.model_publish.list_models, which was using an older API format that is not valid in SAS Viya 3.5 or SAS Viya 4.

v1.9.2

17 May 22:25
Compare
Choose a tag to compare

Improvements

  • Add recursive folder creation and an example.
  • Add example for migrating models from SAS Viya 3.5 to SAS Viya 4.

Bugfixes

  • Fixed improper json encoding for pzmm_h2o_model_import.ipynb example.
  • Set urllib3 < 2.0.0 to allow requests to update their dependencies.
  • Set pandas >= 0.24.0 to include df.to_list alias for df.tolist.
  • Fix minor errors in h2o score code generation

v1.9.1

04 May 13:14
Compare
Choose a tag to compare

Improvements

  • Updated handling of H2O models in sasctl.pzmm.
    • Models are now saved with the appropriate h2o functions within the sasctl.pzmm.PickleModel.pickle_trained_model function.
    • Example notebooks have been updated to reflect this change.

Bugfixes

  • Added check for sasctl.pzmm.JSONFiles.calculate_model_statsistics function to replace float NaN values invalid for JSON files.
  • Fixed issue where the sasctl.pzmm.JSONFiles.write_model_properties function was replacing the user-defined model_function argument.
  • Added NpEncoder class to check for numpy values in JSON files. Numpy-types cannot be used in SAS Viya.

v1.9.0

05 Apr 12:56
Compare
Choose a tag to compare

Improvements

  • sasctl.pzmm refactored to follow PEP8 standards, include type hinting, and major expansion of code coverage.
    • sasctl.pzmm functions that can generate files can now run in-memory instead of writing to disk.
  • Added custom KPI handling via pzmm.model_parameters, allowing users to interact with the KPI table generated by model performance via API.
    • Added a method for scikit-learn models to generate hyperparameters as custom KPIs.
  • Reworked the pzmm.write_score_code() logic to appropriately write score code for binary classification, multi-class classification, and regression models.
  • Updated all examples based on sasctl.pzmm usage and model assets.
    • Examples from older versions moved to examples/ARCHIVE/vX.X.
  • DataStep or ASTORE models can include additional files when running tasks.register_model().

Bugfixes

  • Fixed an issue where invalid HTTP responses could cause an error when using Session.version_info().

v1.8.2

30 Jan 20:45
Compare
Choose a tag to compare

Improvements

  • folders.get_folder() can now handle folder paths and delegates (e.g. @public).

Bugfixes

  • Fixed an issue with model_management.execute_model_workflow_definition() where input values for
    workflow prompts were not correctly submitted. Note that the input= parameter was renamed to
    prompts= to avoid conflicting with the built-in input().

v1.8.1

20 Jan 12:09
Compare
Choose a tag to compare

Changes

  • Adjusted workflow for code coverage reporting. Prepped to add components in next release.
  • Added generate_requirements_json.ipynb example.

Bugfixes

  • Fixed improper math.fabs use in sasctl.pzmm.writeJSONFiles.calculateFitStat().
  • Fixed incorrect ast node walk for module collection in sasctl.pzmm.writeJSONFiles.create_requirements_json().