upgini 1.2.167a4220.dev6__tar.gz → 1.2.167a4220.dev7__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.
Files changed (94) hide show
  1. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/PKG-INFO +1 -1
  2. upgini-1.2.167a4220.dev7/src/upgini/__about__.py +1 -0
  3. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/features_enricher.py +32 -19
  4. upgini-1.2.167a4220.dev6/src/upgini/__about__.py +0 -1
  5. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/.gitignore +0 -0
  6. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/LICENSE +0 -0
  7. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/README.md +0 -0
  8. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/pyproject.toml +0 -0
  9. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/__init__.py +0 -0
  10. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/ads.py +0 -0
  11. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/ads_management/__init__.py +0 -0
  12. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/ads_management/ads_manager.py +0 -0
  13. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/__init__.py +0 -0
  14. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/all_operators.py +0 -0
  15. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/binary.py +0 -0
  16. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/date.py +0 -0
  17. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/feature.py +0 -0
  18. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/groupby.py +0 -0
  19. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/operand.py +0 -0
  20. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/operator.py +0 -0
  21. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/timeseries/__init__.py +0 -0
  22. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/timeseries/base.py +0 -0
  23. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/timeseries/cross.py +0 -0
  24. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/timeseries/delta.py +0 -0
  25. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/timeseries/lag.py +0 -0
  26. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/timeseries/numpy_kernels.py +0 -0
  27. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/timeseries/roll.py +0 -0
  28. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/timeseries/trend.py +0 -0
  29. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/timeseries/volatility.py +0 -0
  30. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/unary.py +0 -0
  31. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/utils.py +0 -0
  32. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/autofe/vector.py +0 -0
  33. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/data_source/__init__.py +0 -0
  34. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/data_source/data_source_publisher.py +0 -0
  35. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/dataset.py +0 -0
  36. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/errors.py +0 -0
  37. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/http.py +0 -0
  38. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/mdc/__init__.py +0 -0
  39. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/mdc/context.py +0 -0
  40. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/metadata.py +0 -0
  41. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/metrics.py +0 -0
  42. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/normalizer/__init__.py +0 -0
  43. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/normalizer/normalize_utils.py +0 -0
  44. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/report/__init__.py +0 -0
  45. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/report/assemble.py +0 -0
  46. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/report/data.py +0 -0
  47. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/report/html.py +0 -0
  48. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/report/stats.py +0 -0
  49. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/report/template.html +0 -0
  50. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/resource_bundle/__init__.py +0 -0
  51. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/resource_bundle/exceptions.py +0 -0
  52. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/resource_bundle/strings.properties +0 -0
  53. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/resource_bundle/strings_widget.properties +0 -0
  54. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/sampler/__init__.py +0 -0
  55. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/sampler/base.py +0 -0
  56. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/sampler/random_under_sampler.py +0 -0
  57. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/sampler/utils.py +0 -0
  58. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/search_task.py +0 -0
  59. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/spinner.py +0 -0
  60. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/Roboto-Regular.ttf +0 -0
  61. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/__init__.py +0 -0
  62. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/base_search_key_detector.py +0 -0
  63. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/blocked_time_series.py +0 -0
  64. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/config.py +0 -0
  65. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/country_utils.py +0 -0
  66. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/cpu_utils.py +0 -0
  67. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/custom_loss_utils.py +0 -0
  68. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/cv_utils.py +0 -0
  69. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/datetime_utils.py +0 -0
  70. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/deduplicate_utils.py +0 -0
  71. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/display_utils.py +0 -0
  72. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/email_utils.py +0 -0
  73. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/fallback_progress_bar.py +0 -0
  74. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/feature_info.py +0 -0
  75. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/features_validator.py +0 -0
  76. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/format.py +0 -0
  77. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/hash_utils.py +0 -0
  78. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/ip_utils.py +0 -0
  79. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/mstats.py +0 -0
  80. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/one_hot_encoder.py +0 -0
  81. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/phone_utils.py +0 -0
  82. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/postal_code_utils.py +0 -0
  83. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/progress_bar.py +0 -0
  84. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/psi.py +0 -0
  85. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/pyarrow_utils.py +0 -0
  86. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/sample_utils.py +0 -0
  87. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/search_key_derivations.py +0 -0
  88. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/sklearn_ext.py +0 -0
  89. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/sort.py +0 -0
  90. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/target_utils.py +0 -0
  91. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/track_info.py +0 -0
  92. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/ts_utils.py +0 -0
  93. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/utils/warning_counter.py +0 -0
  94. {upgini-1.2.167a4220.dev6 → upgini-1.2.167a4220.dev7}/src/upgini/version_validator.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: upgini
3
- Version: 1.2.167a4220.dev6
3
+ Version: 1.2.167a4220.dev7
4
4
  Summary: Intelligent data search & enrichment for Machine Learning
5
5
  Project-URL: Bug Reports, https://github.com/upgini/upgini/issues
6
6
  Project-URL: Homepage, https://upgini.com/
@@ -0,0 +1 @@
1
+ __version__ = "1.2.167.a4220.dev7"
@@ -2292,17 +2292,25 @@ class FeaturesEnricher(TransformerMixin):
2292
2292
  ensemble = [name for name in selected if self._is_ensemble_feature(name)]
2293
2293
  if len(ensemble) != 1:
2294
2294
  return None
2295
- etalon_columns = set()
2295
+ renaming = self.fit_columns_renaming or {}
2296
+ allowed = self._column_name_aliases([ensemble[0]], renaming) | self._etalon_feature_aliases()
2297
+ if any(name not in allowed for name in selected):
2298
+ return None
2299
+ return ensemble[0]
2300
+
2301
+ def _etalon_feature_aliases(self) -> set[str]:
2302
+ renaming = self.fit_columns_renaming or {}
2303
+ names: set[str] = set()
2296
2304
  if self._search_task is not None:
2297
- etalon_columns = {
2305
+ names.update(
2298
2306
  meta.name
2299
2307
  for meta in (self._search_task.get_all_features_metadata_v2() or [])
2300
2308
  if meta.source == "etalon"
2301
- }
2302
- extras = [name for name in selected if name != ensemble[0] and name not in etalon_columns]
2303
- if extras:
2304
- return None
2305
- return ensemble[0]
2309
+ )
2310
+ if isinstance(self.X, pd.DataFrame):
2311
+ generated = self._column_name_aliases(self.fit_generated_features or [], renaming)
2312
+ names.update(column for column in self.X.columns if column not in generated)
2313
+ return self._column_name_aliases(names, renaming)
2306
2314
 
2307
2315
  def _reference_rows(self) -> int | None:
2308
2316
  if self.X is None:
@@ -6224,19 +6232,24 @@ if response.status_code == 200:
6224
6232
  print(self._internal_features_info)
6225
6233
 
6226
6234
  def __show_report_button(self, display_id: str | None = None, display_handle=None):
6235
+ if self._has_single_ensemble_score():
6236
+ try:
6237
+ report_html = self._score_report_html()
6238
+ if report_html:
6239
+ if not ipython_available():
6240
+ return
6241
+ search_id = (
6242
+ self._search_task.search_task_id if self._search_task is not None else (self.search_id or "")
6243
+ )
6244
+ return show_button_open_report(
6245
+ report_html,
6246
+ download_name=f"upgini-report-{search_id}.html",
6247
+ display_id=display_id,
6248
+ display_handle=display_handle,
6249
+ )
6250
+ except Exception:
6251
+ self.logger.exception("Failed to generate HTML report, falling back to PDF")
6227
6252
  try:
6228
- report_html = self._score_report_html() or self.report_html
6229
- if report_html:
6230
- if not ipython_available():
6231
- return
6232
- search_id = self._search_task.search_task_id if self._search_task is not None else (self.search_id or "")
6233
- return show_button_open_report(
6234
- report_html,
6235
- download_name=f"upgini-report-{search_id}.html",
6236
- display_id=display_id,
6237
- display_handle=display_handle,
6238
- )
6239
-
6240
6253
  eval_sets_drift_df = self._get_eval_sets_drift_summary()
6241
6254
 
6242
6255
  return prepare_and_show_report(
@@ -1 +0,0 @@
1
- __version__ = "1.2.167.a4220.dev6"