upgini 1.1.291a3232.post4__tar.gz → 1.1.293__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.

Potentially problematic release.


This version of upgini might be problematic. Click here for more details.

Files changed (66) hide show
  1. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/PKG-INFO +1 -1
  2. upgini-1.1.293/src/upgini/__about__.py +1 -0
  3. upgini-1.1.293/src/upgini/__init__.py +7 -0
  4. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/data_source/data_source_publisher.py +26 -0
  5. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/http.py +5 -0
  6. upgini-1.1.293/src/upgini/lazy_import.py +22 -0
  7. upgini-1.1.291a3232.post4/src/upgini/__about__.py +0 -1
  8. upgini-1.1.291a3232.post4/src/upgini/__init__.py +0 -21
  9. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/.gitignore +0 -0
  10. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/LICENSE +0 -0
  11. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/README.md +0 -0
  12. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/pyproject.toml +0 -0
  13. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/ads.py +0 -0
  14. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/ads_management/__init__.py +0 -0
  15. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/ads_management/ads_manager.py +0 -0
  16. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/autofe/__init__.py +0 -0
  17. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/autofe/all_operands.py +0 -0
  18. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/autofe/binary.py +0 -0
  19. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/autofe/date.py +0 -0
  20. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/autofe/feature.py +0 -0
  21. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/autofe/groupby.py +0 -0
  22. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/autofe/operand.py +0 -0
  23. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/autofe/unary.py +0 -0
  24. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/autofe/vector.py +0 -0
  25. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/data_source/__init__.py +0 -0
  26. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/dataset.py +0 -0
  27. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/errors.py +0 -0
  28. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/features_enricher.py +0 -0
  29. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/mdc/__init__.py +0 -0
  30. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/mdc/context.py +0 -0
  31. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/metadata.py +0 -0
  32. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/metrics.py +0 -0
  33. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/normalizer/__init__.py +0 -0
  34. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/normalizer/phone_normalizer.py +0 -0
  35. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/resource_bundle/__init__.py +0 -0
  36. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/resource_bundle/exceptions.py +0 -0
  37. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/resource_bundle/strings.properties +0 -0
  38. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/resource_bundle/strings_widget.properties +0 -0
  39. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/sampler/__init__.py +0 -0
  40. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/sampler/base.py +0 -0
  41. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/sampler/random_under_sampler.py +0 -0
  42. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/sampler/utils.py +0 -0
  43. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/search_task.py +0 -0
  44. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/spinner.py +0 -0
  45. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/__init__.py +0 -0
  46. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/base_search_key_detector.py +0 -0
  47. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/blocked_time_series.py +0 -0
  48. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/country_utils.py +0 -0
  49. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/custom_loss_utils.py +0 -0
  50. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/cv_utils.py +0 -0
  51. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/datetime_utils.py +0 -0
  52. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/deduplicate_utils.py +0 -0
  53. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/display_utils.py +0 -0
  54. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/email_utils.py +0 -0
  55. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/fallback_progress_bar.py +0 -0
  56. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/features_validator.py +0 -0
  57. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/format.py +0 -0
  58. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/ip_utils.py +0 -0
  59. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/phone_utils.py +0 -0
  60. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/postal_code_utils.py +0 -0
  61. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/progress_bar.py +0 -0
  62. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/sklearn_ext.py +0 -0
  63. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/target_utils.py +0 -0
  64. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/track_info.py +0 -0
  65. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/utils/warning_counter.py +0 -0
  66. {upgini-1.1.291a3232.post4 → upgini-1.1.293}/src/upgini/version_validator.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: upgini
3
- Version: 1.1.291a3232.post4
3
+ Version: 1.1.293
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.1.293"
@@ -0,0 +1,7 @@
1
+ from .lazy_import import LazyImport
2
+
3
+ FeaturesEnricher = LazyImport('upgini.features_enricher', 'FeaturesEnricher')
4
+ SearchKey = LazyImport('upgini.metadata', 'SearchKey')
5
+ RuntimeParameters = LazyImport('upgini.metadata', 'RuntimeParameters')
6
+ CVType = LazyImport('upgini.metadata', 'CVType')
7
+ ModelTaskType = LazyImport('upgini.metadata', 'ModelTaskType')
@@ -347,3 +347,29 @@ class DataSourcePublisher:
347
347
  self.upload_online(search_keys=keys)
348
348
 
349
349
  print("All ADS-es successfully uploaded")
350
+
351
+ def union_search_tasks(
352
+ self,
353
+ search_ids: List[str],
354
+ target_user_email: str,
355
+ selected_features: Optional[List[str]] = None,
356
+ exclude_features: Optional[List[str]] = None,
357
+ ) -> str:
358
+ if not search_ids:
359
+ raise Exception("Empty search ids list")
360
+
361
+ if not target_user_email:
362
+ raise Exception("Empty target user email")
363
+
364
+ request = {
365
+ "search_task_ids": search_ids,
366
+ "target_user_email": target_user_email,
367
+ }
368
+ if selected_features:
369
+ request["selected_features"] = selected_features
370
+ if exclude_features:
371
+ request["exclude_features"] = exclude_features
372
+
373
+ response = self._rest_client.union_search_tasks(request, "trace_id")
374
+ print(response)
375
+ return response
@@ -291,6 +291,7 @@ class _RestClient:
291
291
  GET_ACTIVE_ADS_DEFINITIONS_URI = "private/api/v2/ads/definitions"
292
292
  UPLOAD_ONLINE_URI = "private/api/v2/ads/upload-online"
293
293
  STOP_ADS_MANAGEMENT_TASK_URI_FMT = "private/api/v2/ads/management-task/{0}/stop"
294
+ UNION_SEARCH_TASKS_URI_FMT = SERVICE_ROOT_V2 + "search/merge"
294
295
 
295
296
  ACCESS_TOKEN_HEADER_NAME = "Authorization"
296
297
  CONTENT_TYPE_HEADER_NAME = "Content-Type"
@@ -760,6 +761,10 @@ class _RestClient:
760
761
  api_path = self.STOP_ADS_MANAGEMENT_TASK_URI_FMT.format(ads_management_task_id)
761
762
  self._with_unauth_retry(lambda: self._send_post_req(api_path, trace_id))
762
763
 
764
+ def union_search_tasks(self, request: dict, trace_id: str):
765
+ api_path = self.UNION_SEARCH_TASKS_URI_FMT
766
+ return self._with_unauth_retry(lambda: self._send_post_req(api_path, trace_id, request, result_format=None))
767
+
763
768
  # ---
764
769
 
765
770
  def _send_get_req(self, api_path: str, trace_id: Optional[str], additional_headers: Optional[dict] = None):
@@ -0,0 +1,22 @@
1
+ import importlib
2
+
3
+
4
+ class LazyImport:
5
+ def __init__(self, module_name, class_name):
6
+ self.module_name = module_name
7
+ self.class_name = class_name
8
+ self._module = None
9
+ self._class = None
10
+
11
+ def _load(self):
12
+ if self._module is None:
13
+ self._module = importlib.import_module(self.module_name)
14
+ self._class = getattr(self._module, self.class_name)
15
+
16
+ def __call__(self, *args, **kwargs):
17
+ self._load()
18
+ return self._class(*args, **kwargs)
19
+
20
+ def __getattr__(self, name):
21
+ self._load()
22
+ return getattr(self._class, name)
@@ -1 +0,0 @@
1
- __version__ = "1.1.291a3232-4"
@@ -1,21 +0,0 @@
1
- from typing import List
2
-
3
- from .dataset import Dataset
4
- from .features_enricher import FeaturesEnricher # noqa: F401
5
- from .metadata import ( # noqa: F401
6
- FileColumnMeaningType,
7
- FileMetrics,
8
- ModelTaskType,
9
- SearchKey,
10
- )
11
- from .search_task import SearchTask
12
-
13
-
14
- def search_history() -> List[SearchTask]:
15
- # TODO
16
- return []
17
-
18
-
19
- def datasets_history() -> List[Dataset]:
20
- # TODO
21
- return []
File without changes
File without changes
File without changes