sassoftware / sassoftware/python-sasctl

Scoring code function structure generates an error for LGBoost and XGBoost packages

Open
#186 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Python
Stars
52
Forks
45
Avg merge
23h 38m
Merged PRs (30d)
2

Description

Issue description
Scoring function
In the attached screen there is an extract from scoring code generated by sasctl for Python models when imported into SAS Model Manager.
The key part is an option: dtype=object which is probably fine for sci-kit learn based models but it causes the errors for LGBoost and XGBoost models.
When any of these package is used to build and import the model into SAS Model Manager the scoring test will fail due to PyMas execute function error: DS2 "pymas" package encountered a failure in the 'execute' method
ScoringTest.log
In CAS log You can find the root cause for that error:
Extract sas-cas-server.log
The object data type is not supported by such popular Python models. I had to manually remove dtype=object , which means the data type will be inferred. And then the Test Score works fine.
I hope the intention of sasctl package is support Python developed models, not only sci-kit learn based ones?

Version
1.10.1

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source file or test is named. Start by locating the scoring-code generation entry point that emits dtype=object, then reproduce the scoring test with LightGBM or XGBoost using the attached logs for comparison; done means the generated code runs successfully without the unsupported dtype option.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.