kumoai 2.11.0.dev202510181831__cp310-cp310-win_amd64.whl → 2.12.0.dev202511051731__cp310-cp310-win_amd64.whl
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.
- kumoai/__init__.py +4 -2
- kumoai/_version.py +1 -1
- kumoai/experimental/rfm/rfm.py +12 -0
- kumoai/kumolib.cp310-win_amd64.pyd +0 -0
- kumoai/trainer/trainer.py +9 -10
- {kumoai-2.11.0.dev202510181831.dist-info → kumoai-2.12.0.dev202511051731.dist-info}/METADATA +2 -2
- {kumoai-2.11.0.dev202510181831.dist-info → kumoai-2.12.0.dev202511051731.dist-info}/RECORD +10 -10
- {kumoai-2.11.0.dev202510181831.dist-info → kumoai-2.12.0.dev202511051731.dist-info}/WHEEL +0 -0
- {kumoai-2.11.0.dev202510181831.dist-info → kumoai-2.12.0.dev202511051731.dist-info}/licenses/LICENSE +0 -0
- {kumoai-2.11.0.dev202510181831.dist-info → kumoai-2.12.0.dev202511051731.dist-info}/top_level.txt +0 -0
kumoai/__init__.py
CHANGED
|
@@ -200,9 +200,11 @@ def init(
|
|
|
200
200
|
|
|
201
201
|
logger = logging.getLogger('kumoai')
|
|
202
202
|
log_level = logging.getLevelName(logger.getEffectiveLevel())
|
|
203
|
+
|
|
203
204
|
logger.info(
|
|
204
|
-
"Successfully initialized the Kumo SDK
|
|
205
|
-
"
|
|
205
|
+
f"Successfully initialized the Kumo SDK (version {__version__}) "
|
|
206
|
+
f"against deployment {url}, with "
|
|
207
|
+
f"log level {log_level}.")
|
|
206
208
|
|
|
207
209
|
|
|
208
210
|
def set_log_level(level: str) -> None:
|
kumoai/_version.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = '2.
|
|
1
|
+
__version__ = '2.12.0.dev202511051731'
|
kumoai/experimental/rfm/rfm.py
CHANGED
|
@@ -199,6 +199,7 @@ class KumoRFM:
|
|
|
199
199
|
max_pq_iterations: int = 20,
|
|
200
200
|
random_seed: Optional[int] = _RANDOM_SEED,
|
|
201
201
|
verbose: Union[bool, ProgressLogger] = True,
|
|
202
|
+
use_prediction_time: bool = False,
|
|
202
203
|
) -> pd.DataFrame:
|
|
203
204
|
pass
|
|
204
205
|
|
|
@@ -217,6 +218,7 @@ class KumoRFM:
|
|
|
217
218
|
max_pq_iterations: int = 20,
|
|
218
219
|
random_seed: Optional[int] = _RANDOM_SEED,
|
|
219
220
|
verbose: Union[bool, ProgressLogger] = True,
|
|
221
|
+
use_prediction_time: bool = False,
|
|
220
222
|
) -> Explanation:
|
|
221
223
|
pass
|
|
222
224
|
|
|
@@ -234,6 +236,7 @@ class KumoRFM:
|
|
|
234
236
|
max_pq_iterations: int = 20,
|
|
235
237
|
random_seed: Optional[int] = _RANDOM_SEED,
|
|
236
238
|
verbose: Union[bool, ProgressLogger] = True,
|
|
239
|
+
use_prediction_time: bool = False,
|
|
237
240
|
) -> Union[pd.DataFrame, Explanation]:
|
|
238
241
|
"""Returns predictions for a predictive query.
|
|
239
242
|
|
|
@@ -264,6 +267,9 @@ class KumoRFM:
|
|
|
264
267
|
entities to find valid labels.
|
|
265
268
|
random_seed: A manual seed for generating pseudo-random numbers.
|
|
266
269
|
verbose: Whether to print verbose output.
|
|
270
|
+
use_prediction_time: Whether to use the anchor timestamp as an
|
|
271
|
+
additional feature during prediction. This is typically
|
|
272
|
+
beneficial for time series forecasting tasks.
|
|
267
273
|
|
|
268
274
|
Returns:
|
|
269
275
|
The predictions as a :class:`pandas.DataFrame`.
|
|
@@ -353,6 +359,7 @@ class KumoRFM:
|
|
|
353
359
|
request = RFMPredictRequest(
|
|
354
360
|
context=context,
|
|
355
361
|
run_mode=RunMode(run_mode),
|
|
362
|
+
use_prediction_time=use_prediction_time,
|
|
356
363
|
)
|
|
357
364
|
with warnings.catch_warnings():
|
|
358
365
|
warnings.filterwarnings('ignore', message='gencode')
|
|
@@ -503,6 +510,7 @@ class KumoRFM:
|
|
|
503
510
|
max_pq_iterations: int = 20,
|
|
504
511
|
random_seed: Optional[int] = _RANDOM_SEED,
|
|
505
512
|
verbose: Union[bool, ProgressLogger] = True,
|
|
513
|
+
use_prediction_time: bool = False,
|
|
506
514
|
) -> pd.DataFrame:
|
|
507
515
|
"""Evaluates a predictive query.
|
|
508
516
|
|
|
@@ -526,6 +534,9 @@ class KumoRFM:
|
|
|
526
534
|
entities to find valid labels.
|
|
527
535
|
random_seed: A manual seed for generating pseudo-random numbers.
|
|
528
536
|
verbose: Whether to print verbose output.
|
|
537
|
+
use_prediction_time: Whether to use the anchor timestamp as an
|
|
538
|
+
additional feature during prediction. This is typically
|
|
539
|
+
beneficial for time series forecasting tasks.
|
|
529
540
|
|
|
530
541
|
Returns:
|
|
531
542
|
The metrics as a :class:`pandas.DataFrame`
|
|
@@ -569,6 +580,7 @@ class KumoRFM:
|
|
|
569
580
|
context=context,
|
|
570
581
|
run_mode=RunMode(run_mode),
|
|
571
582
|
metrics=metrics,
|
|
583
|
+
use_prediction_time=use_prediction_time,
|
|
572
584
|
)
|
|
573
585
|
with warnings.catch_warnings():
|
|
574
586
|
warnings.filterwarnings('ignore', message='Protobuf gencode')
|
|
Binary file
|
kumoai/trainer/trainer.py
CHANGED
|
@@ -20,7 +20,6 @@ from kumoapi.jobs import (
|
|
|
20
20
|
TrainingJobResource,
|
|
21
21
|
)
|
|
22
22
|
from kumoapi.model_plan import ModelPlan
|
|
23
|
-
from kumoapi.task import TaskType
|
|
24
23
|
|
|
25
24
|
from kumoai import global_state
|
|
26
25
|
from kumoai.artifact_export.config import OutputConfig
|
|
@@ -405,15 +404,15 @@ class Trainer:
|
|
|
405
404
|
pred_table_data_path = prediction_table.table_data_uri
|
|
406
405
|
|
|
407
406
|
api = global_state.client.batch_prediction_job_api
|
|
408
|
-
|
|
409
|
-
from kumoai.pquery.predictive_query import PredictiveQuery
|
|
410
|
-
pquery = PredictiveQuery.load_from_training_job(training_job_id)
|
|
411
|
-
if pquery.get_task_type() == TaskType.BINARY_CLASSIFICATION:
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
407
|
+
# Remove to resolve https://github.com/kumo-ai/kumo/issues/24250
|
|
408
|
+
# from kumoai.pquery.predictive_query import PredictiveQuery
|
|
409
|
+
# pquery = PredictiveQuery.load_from_training_job(training_job_id)
|
|
410
|
+
# if pquery.get_task_type() == TaskType.BINARY_CLASSIFICATION:
|
|
411
|
+
# if binary_classification_threshold is None:
|
|
412
|
+
# logger.warning(
|
|
413
|
+
# "No binary classification threshold provided. "
|
|
414
|
+
# "Using default threshold of 0.5.")
|
|
415
|
+
# binary_classification_threshold = 0.5
|
|
417
416
|
job_id, response = api.maybe_create(
|
|
418
417
|
BatchPredictionRequest(
|
|
419
418
|
dict(custom_tags),
|
{kumoai-2.11.0.dev202510181831.dist-info → kumoai-2.12.0.dev202511051731.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: kumoai
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.12.0.dev202511051731
|
|
4
4
|
Summary: AI on the Modern Data Stack
|
|
5
5
|
Author-email: "Kumo.AI" <hello@kumo.ai>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -23,7 +23,7 @@ Requires-Dist: requests>=2.28.2
|
|
|
23
23
|
Requires-Dist: urllib3
|
|
24
24
|
Requires-Dist: plotly
|
|
25
25
|
Requires-Dist: typing_extensions>=4.5.0
|
|
26
|
-
Requires-Dist: kumo-api==0.
|
|
26
|
+
Requires-Dist: kumo-api==0.40.0
|
|
27
27
|
Requires-Dist: tqdm>=4.66.0
|
|
28
28
|
Requires-Dist: aiohttp>=3.10.0
|
|
29
29
|
Requires-Dist: pydantic>=1.10.21
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
kumoai/__init__.py,sha256=
|
|
1
|
+
kumoai/__init__.py,sha256=4efagNAotP3c8mj8yyDGfVFcbgQ9l4wRC4FP-Yt0J3E,11002
|
|
2
2
|
kumoai/_logging.py,sha256=qL4JbMQwKXri2f-SEJoFB8TY5ALG12S-nobGTNWxW-A,915
|
|
3
3
|
kumoai/_singleton.py,sha256=i2BHWKpccNh5SJGDyU0IXsnYzJAYr8Xb0wz4c6LRbpo,861
|
|
4
|
-
kumoai/_version.py,sha256=
|
|
4
|
+
kumoai/_version.py,sha256=KfN7gfSaIMYMUGBQEb3i90sBSoG98jsaVXnJHqM3QOw,39
|
|
5
5
|
kumoai/databricks.py,sha256=ahwJz6DWLXMkndT0XwEDBxF-hoqhidFR8wBUQ4TLZ68,490
|
|
6
6
|
kumoai/exceptions.py,sha256=7TMs0SC8xrU009_Pgd4QXtSF9lxJq8MtRbeX9pcQUy4,859
|
|
7
7
|
kumoai/formatting.py,sha256=o3uCnLwXPhe1KI5WV9sBgRrcU7ed4rgu_pf89GL9Nc0,983
|
|
8
8
|
kumoai/futures.py,sha256=J8rtZMEYFzdn5xF_x-LAiKJz3KGL6PT02f6rq_2bOJk,3836
|
|
9
9
|
kumoai/jobs.py,sha256=dCi7BAdfm2tCnonYlGU4WJokJWbh3RzFfaOX2EYCIHU,2576
|
|
10
|
-
kumoai/kumolib.cp310-win_amd64.pyd,sha256=
|
|
10
|
+
kumoai/kumolib.cp310-win_amd64.pyd,sha256=iqZtjlpH3gbMm0mXfV18cOUOm9gTukSwuMeLun7jpRw,194048
|
|
11
11
|
kumoai/mixin.py,sha256=IaiB8SAI0VqOoMVzzIaUlqMt53-QPUK6OB0HikG-V9E,840
|
|
12
12
|
kumoai/spcs.py,sha256=SWvfkeJvb_7sGkjSqyMBIuPbMTWCP6v0BC9HBXM1uSI,4398
|
|
13
13
|
kumoai/artifact_export/__init__.py,sha256=UXAQI5q92ChBzWAk8o3J6pElzYHudAzFZssQXd4o7i8,247
|
|
@@ -60,7 +60,7 @@ kumoai/experimental/rfm/local_graph_sampler.py,sha256=ZCnILozG95EzpgMqhGTG2AF85J
|
|
|
60
60
|
kumoai/experimental/rfm/local_graph_store.py,sha256=eUuIMFcdIRqN1kRxnqOdJpKEt-S_oyupAyHr7YuQoSU,14206
|
|
61
61
|
kumoai/experimental/rfm/local_pquery_driver.py,sha256=bIDXVm6NrXmzjxRUV8MPn_XmXVBVjqB8Szq3mAofe5k,19094
|
|
62
62
|
kumoai/experimental/rfm/local_table.py,sha256=5H08657TIyH7n_QnpFKr2g4BtVqdXTymmrfhSGaDmkU,20150
|
|
63
|
-
kumoai/experimental/rfm/rfm.py,sha256=
|
|
63
|
+
kumoai/experimental/rfm/rfm.py,sha256=_dQVifo9KdXOAKK9X5aqL8D1zvDnaHCK-hYs2_YzGRw,47301
|
|
64
64
|
kumoai/experimental/rfm/utils.py,sha256=dLx2wdyTWg7vZI_7R-I0z_lA-2aV5M8h9n3bnnLyylI,11467
|
|
65
65
|
kumoai/experimental/rfm/infer/__init__.py,sha256=fPsdDr4D3hgC8snW0j3pAVpCyR-xrauuogMnTOMrfok,304
|
|
66
66
|
kumoai/experimental/rfm/infer/categorical.py,sha256=bqmfrE5ZCBTcb35lA4SyAkCu3MgttAn29VBJYMBNhVg,893
|
|
@@ -87,14 +87,14 @@ kumoai/trainer/baseline_trainer.py,sha256=oXweh8j1sar6KhQfr3A7gmQxcDq7SG0Bx3jIen
|
|
|
87
87
|
kumoai/trainer/config.py,sha256=7_Jv1w1mqaokCQwQdJkqCSgVpmh8GqE3fL1Ky_vvttI,100
|
|
88
88
|
kumoai/trainer/job.py,sha256=IBP2SeIk21XpRK1Um1NIs2dEKid319cHu6UkCjKO6jc,46130
|
|
89
89
|
kumoai/trainer/online_serving.py,sha256=T1jicl-qXiiWGQWUCwlfQsyxWUODybj_975gx9yglH4,9824
|
|
90
|
-
kumoai/trainer/trainer.py,sha256=
|
|
90
|
+
kumoai/trainer/trainer.py,sha256=AKumc3X2Vm3qxZSA85Dv_fSLC4JQ3rM7P0ixOWbEex0,20608
|
|
91
91
|
kumoai/trainer/util.py,sha256=LCXkY5MNl6NbEVd2OZ0aVqF6fvr3KiCFh6pH0igAi_g,4165
|
|
92
92
|
kumoai/utils/__init__.py,sha256=wAKgmwtMIGuiauW9D_GGKH95K-24Kgwmld27mm4nsro,278
|
|
93
93
|
kumoai/utils/datasets.py,sha256=UyAII-oAn7x3ombuvpbSQ41aVF9SYKBjQthTD-vcT2A,3011
|
|
94
94
|
kumoai/utils/forecasting.py,sha256=ZgKeUCbWLOot0giAkoigwU5du8LkrwAicFOi5hVn6wg,7624
|
|
95
95
|
kumoai/utils/progress_logger.py,sha256=tzwFrUO5VuiArxx9_tSETno8JF5rnFOedX26I2yDW10,5046
|
|
96
|
-
kumoai-2.
|
|
97
|
-
kumoai-2.
|
|
98
|
-
kumoai-2.
|
|
99
|
-
kumoai-2.
|
|
100
|
-
kumoai-2.
|
|
96
|
+
kumoai-2.12.0.dev202511051731.dist-info/licenses/LICENSE,sha256=ZUilBDp--4vbhsEr6f_Upw9rnIx09zQ3K9fXQ0rfd6w,1111
|
|
97
|
+
kumoai-2.12.0.dev202511051731.dist-info/METADATA,sha256=ieFt7HnkF1EOWR19ZX6mJ-5e56wvBP-KzhaQHlklROo,2112
|
|
98
|
+
kumoai-2.12.0.dev202511051731.dist-info/WHEEL,sha256=KUuBC6lxAbHCKilKua8R9W_TM71_-9Sg5uEP3uDWcoU,101
|
|
99
|
+
kumoai-2.12.0.dev202511051731.dist-info/top_level.txt,sha256=YjU6UcmomoDx30vEXLsOU784ED7VztQOsFApk1SFwvs,7
|
|
100
|
+
kumoai-2.12.0.dev202511051731.dist-info/RECORD,,
|
|
File without changes
|
{kumoai-2.11.0.dev202510181831.dist-info → kumoai-2.12.0.dev202511051731.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|
{kumoai-2.11.0.dev202510181831.dist-info → kumoai-2.12.0.dev202511051731.dist-info}/top_level.txt
RENAMED
|
File without changes
|