howso-engine 68.0.1__tar.gz → 68.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {howso_engine-68.0.1 → howso_engine-68.2.0}/LICENSE-3RD-PARTY.txt +2 -2
- {howso_engine-68.0.1 → howso_engine-68.2.0}/PKG-INFO +2 -2
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/base.py +25 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/direct/client.py +266 -241
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/engine/trainee.py +19 -0
- howso_engine-68.2.0/howso/howso-engine/howso.caml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/howso-engine/migrations/migrations.caml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/howso-engine/version.json +4 -4
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/feature_attributes/base.py +96 -61
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/feature_attributes/infer_feature_attributes.py +73 -11
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/feature_attributes/time_series.py +26 -14
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso_engine.egg-info/PKG-INFO +2 -2
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso_engine.egg-info/requires.txt +1 -1
- {howso_engine-68.0.1 → howso_engine-68.2.0}/pyproject.toml +1 -1
- {howso_engine-68.0.1 → howso_engine-68.2.0}/requirements-3.11-dev.txt +12 -12
- {howso_engine-68.0.1 → howso_engine-68.2.0}/requirements-3.11.txt +2 -2
- {howso_engine-68.0.1 → howso_engine-68.2.0}/requirements-3.12-dev.txt +12 -12
- {howso_engine-68.0.1 → howso_engine-68.2.0}/requirements-3.12.txt +2 -2
- {howso_engine-68.0.1 → howso_engine-68.2.0}/requirements-3.13-dev.txt +12 -12
- {howso_engine-68.0.1 → howso_engine-68.2.0}/requirements-3.13.txt +2 -2
- {howso_engine-68.0.1 → howso_engine-68.2.0}/requirements-3.14-dev.txt +12 -12
- {howso_engine-68.0.1 → howso_engine-68.2.0}/requirements-3.14.txt +2 -2
- howso_engine-68.2.0/version.json +5 -0
- howso_engine-68.0.1/howso/howso-engine/howso.caml +0 -0
- howso_engine-68.0.1/version.json +0 -5
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.coveragerc +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.flake8 +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.github/CODEOWNERS +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.github/templates/version_summary.md +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.github/workflows/build-pr.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.github/workflows/build-release.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.github/workflows/build.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.github/workflows/rebuild-requirements.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.github/workflows/version-update.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.gitignore +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.gitmodules +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/.pylintrc +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/CONTRIBUTING.md +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/LICENSE.txt +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/MANIFEST.in +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/Makefile +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/README.md +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/bin/build.sh +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/config/latest-mt-debug-howso.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/config/latest-mt-howso.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/config/latest-mt-noavx-traces-howso.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/config/latest-mt-traces-howso.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/config/latest-st-debug-howso.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/config/latest-st-howso.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/config/latest-st-traces-howso.yml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/config/powershell/Download-Tzdata.ps1 +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/config/powershell/Helper-Functions.ps1 +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/hatch.toml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/__main__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/__init__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/api.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/cache.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/client.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/configuration.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/exceptions.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/feature_flags.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/pandas/__init__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/pandas/client.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/protocols.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/schemas/__init__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/schemas/aggregate_reaction.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/schemas/base.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/schemas/group_reaction.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/schemas/project.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/schemas/reaction.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/schemas/session.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/schemas/trainee.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/schemas/version.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/client/typing.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/direct/__init__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/direct/_utilities.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/direct/schemas/__init__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/direct/schemas/trainee.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/engine/__init__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/engine/client.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/engine/project.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/engine/session.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/scikit/__init__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/scikit/scikit.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/__init__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/decorators.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/fanout_features.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/feature_attributes/__init__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/feature_attributes/abstract_data.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/feature_attributes/pandas.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/feature_attributes/protocols.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/feature_attributes/relational.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/feature_attributes/serializers.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/feature_attributes/suggestions.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/feature_attributes/warnings.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/features.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/__init__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/__main__.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/_constants.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/_helpers.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/_output.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/_probes.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/_types.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/checks_cpu.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/checks_engine.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/checks_environment.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/checks_optional.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/main.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/installation_verification/registry.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/internals.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/json_wrapper.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/locale.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/monitors.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/posix.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/progress.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/random.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/reaction.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/testing.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/tokenizing.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso/utilities/utilities.py +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso_engine.egg-info/SOURCES.txt +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso_engine.egg-info/dependency_links.txt +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso_engine.egg-info/entry_points.txt +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso_engine.egg-info/scm_file_list.json +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/howso_engine.egg-info/top_level.txt +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/pyrightconfig.json +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/ruff.toml +0 -0
- {howso_engine-68.0.1 → howso_engine-68.2.0}/setup.cfg +0 -0
|
@@ -119,12 +119,12 @@ DEALINGS IN THE SOFTWARE.
|
|
|
119
119
|
|
|
120
120
|
|
|
121
121
|
certifi
|
|
122
|
-
2026.
|
|
122
|
+
2026.10.18
|
|
123
123
|
Mozilla Public License 2.0 (MPL 2.0)
|
|
124
124
|
Kenneth Reitz
|
|
125
125
|
https://github.com/certifi/python-certifi
|
|
126
126
|
Python package for providing Mozilla's CA Bundle.
|
|
127
|
-
/home/runner/.pyenv/versions/3.14.8/lib/python3.14/site-packages/certifi-2026.
|
|
127
|
+
/home/runner/.pyenv/versions/3.14.8/lib/python3.14/site-packages/certifi-2026.10.18.dist-info/licenses/LICENSE
|
|
128
128
|
This package contains a modified version of ca-bundle.crt:
|
|
129
129
|
|
|
130
130
|
ca-bundle.crt -- Bundle of CA Root Certificates
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: howso-engine
|
|
3
|
-
Version: 68.0
|
|
3
|
+
Version: 68.2.0
|
|
4
4
|
Summary: The Howso Engine™ is a natively and fully explainable ML engine, serving as an alternative to black box AI neural networks.
|
|
5
5
|
Author: Howso Incorporated
|
|
6
6
|
Author-email: support@howso.com
|
|
@@ -705,7 +705,7 @@ Requires-Dist: sacremoses
|
|
|
705
705
|
Requires-Dist: semantic-version~=2.0
|
|
706
706
|
Requires-Dist: typing-extensions~=4.9
|
|
707
707
|
Requires-Dist: urllib3>=2.6.3
|
|
708
|
-
Requires-Dist: amalgam-lang==36.0.
|
|
708
|
+
Requires-Dist: amalgam-lang==36.0.1
|
|
709
709
|
Provides-Extra: dev
|
|
710
710
|
Requires-Dist: dill~=0.0; extra == "dev"
|
|
711
711
|
Requires-Dist: flake8-docstrings; extra == "dev"
|
|
@@ -5159,6 +5159,7 @@ class AbstractHowsoClient(ABC):
|
|
|
5159
5159
|
min_case_weight: float = 0.05,
|
|
5160
5160
|
min_num_cases: int = 10_000,
|
|
5161
5161
|
reduce_max_cases: int = 50_000,
|
|
5162
|
+
reservoir_size: int = 10_000,
|
|
5162
5163
|
rel_threshold_map: AblationThresholdMap | None = None,
|
|
5163
5164
|
relative_prediction_threshold_map: Mapping[str, float] | None = None,
|
|
5164
5165
|
residual_prediction_features: Collection[str] | None = None,
|
|
@@ -5222,6 +5223,8 @@ class AbstractHowsoClient(ABC):
|
|
|
5222
5223
|
the minimum number of cases that may remain after data reduction.
|
|
5223
5224
|
reduce_max_cases: int, default 50,000
|
|
5224
5225
|
The maximum number of cases that may remain after a call to reduce_data.
|
|
5226
|
+
reservoir_size: int, default 10,000
|
|
5227
|
+
The number of cases stored in the reservoir. 0 means no reservoir.
|
|
5225
5228
|
rel_threshold_map : AblationThresholdMap, optional
|
|
5226
5229
|
A map of measure names (any of the prediction stats, except for ``confusion_matrix``)
|
|
5227
5230
|
to a map of feature names to threshold value. Absolute thresholds will cause ablation
|
|
@@ -5255,6 +5258,7 @@ class AbstractHowsoClient(ABC):
|
|
|
5255
5258
|
min_case_weight=min_case_weight,
|
|
5256
5259
|
min_num_cases=min_num_cases,
|
|
5257
5260
|
reduce_max_cases=reduce_max_cases,
|
|
5261
|
+
reservoir_size=reservoir_size,
|
|
5258
5262
|
rel_threshold_map=rel_threshold_map,
|
|
5259
5263
|
relative_prediction_threshold_map=relative_prediction_threshold_map,
|
|
5260
5264
|
residual_prediction_features=residual_prediction_features,
|
|
@@ -5555,6 +5559,27 @@ class AbstractHowsoClient(ABC):
|
|
|
5555
5559
|
return ret.get("count", 0)
|
|
5556
5560
|
return 0
|
|
5557
5561
|
|
|
5562
|
+
def get_trainee_mass(self, trainee_id: str) -> float:
|
|
5563
|
+
"""
|
|
5564
|
+
Return the mass as the total of all the summed up case weights of
|
|
5565
|
+
all the cases in the Trainee.
|
|
5566
|
+
|
|
5567
|
+
Parameters
|
|
5568
|
+
----------
|
|
5569
|
+
trainee_id : str
|
|
5570
|
+
The Id of the Trainee to retrieve the mass from.
|
|
5571
|
+
|
|
5572
|
+
Returns
|
|
5573
|
+
-------
|
|
5574
|
+
float
|
|
5575
|
+
The mass of cases in the trainee
|
|
5576
|
+
"""
|
|
5577
|
+
trainee_id = self._resolve_trainee(trainee_id).id
|
|
5578
|
+
ret = self.execute(trainee_id, "get_num_training_cases", {})
|
|
5579
|
+
if isinstance(ret, dict):
|
|
5580
|
+
return ret.get("mass", 0)
|
|
5581
|
+
return 0
|
|
5582
|
+
|
|
5558
5583
|
def get_num_lags_needed(
|
|
5559
5584
|
self,
|
|
5560
5585
|
trainee_id: str,
|