fiddler-client 2.4.0.dev2__py3-none-any.whl → 2.5.0.dev2__py3-none-any.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.
Files changed (61) hide show
  1. fiddler/__init__.py +2 -0
  2. fiddler/_version.py +1 -1
  3. fiddler/api/alert_mixin.py +51 -1
  4. fiddler/api/webhooks_mixin.py +6 -8
  5. fiddler/core_objects.py +76 -26
  6. fiddler/schema/alert.py +9 -2
  7. fiddler/schemas/custom_features.py +44 -1
  8. fiddler3/__init__.py +121 -38
  9. fiddler3/configs.py +3 -0
  10. fiddler3/connection.py +68 -1
  11. fiddler3/constants/alert_rule.py +30 -0
  12. fiddler3/constants/events.py +7 -0
  13. fiddler3/constants/model.py +9 -0
  14. fiddler3/entities/__init__.py +0 -7
  15. fiddler3/entities/alert_record.py +106 -0
  16. fiddler3/entities/alert_rule.py +323 -0
  17. fiddler3/entities/base.py +2 -16
  18. fiddler3/entities/baseline.py +21 -15
  19. fiddler3/entities/dataset.py +1 -1
  20. fiddler3/entities/events.py +136 -0
  21. fiddler3/entities/file.py +162 -0
  22. fiddler3/entities/model.py +141 -24
  23. fiddler3/entities/model_artifact.py +52 -224
  24. fiddler3/entities/model_deployment.py +12 -1
  25. fiddler3/entities/project.py +2 -2
  26. fiddler3/entities/{model_surrogate.py → surrogate.py} +27 -29
  27. fiddler3/entities/webhook.py +128 -0
  28. fiddler3/entities/xai.py +271 -5
  29. fiddler3/libs/http_client.py +1 -1
  30. fiddler3/libs/json_encoder.py +1 -1
  31. fiddler3/schemas/__init__.py +0 -9
  32. fiddler3/schemas/alert_record.py +27 -0
  33. fiddler3/schemas/alert_rule.py +39 -0
  34. fiddler3/schemas/custom_features.py +68 -12
  35. fiddler3/schemas/events.py +15 -0
  36. fiddler3/schemas/file.py +23 -0
  37. fiddler3/schemas/model.py +1 -6
  38. fiddler3/schemas/model_deployment.py +5 -4
  39. fiddler3/schemas/webhook.py +23 -0
  40. fiddler3/tests/apis/test_alert_record.py +99 -0
  41. fiddler3/tests/apis/test_alert_rule.py +393 -0
  42. fiddler3/tests/apis/test_events.py +169 -0
  43. fiddler3/tests/apis/test_files.py +164 -0
  44. fiddler3/tests/apis/test_model.py +60 -9
  45. fiddler3/tests/apis/test_model_artifact.py +21 -0
  46. fiddler3/tests/apis/test_project.py +3 -3
  47. fiddler3/tests/apis/test_webhook.py +257 -0
  48. fiddler3/tests/apis/test_xai.py +233 -1
  49. fiddler3/tests/conftest.py +2 -2
  50. fiddler3/tests/constants.py +5 -0
  51. fiddler3/tests/test_connection.py +24 -1
  52. fiddler3/tests/test_json_encoder.py +2 -2
  53. fiddler3/utils/helpers.py +20 -0
  54. {fiddler_client-2.4.0.dev2.dist-info → fiddler_client-2.5.0.dev2.dist-info}/METADATA +15 -5
  55. {fiddler_client-2.4.0.dev2.dist-info → fiddler_client-2.5.0.dev2.dist-info}/RECORD +59 -44
  56. tests/fiddler/test_alert.py +95 -5
  57. fiddler3/entities/helpers.py +0 -21
  58. fiddler3/schemas/model_artifact.py +0 -6
  59. {fiddler_client-2.4.0.dev2.dist-info → fiddler_client-2.5.0.dev2.dist-info}/LICENSE.txt +0 -0
  60. {fiddler_client-2.4.0.dev2.dist-info → fiddler_client-2.5.0.dev2.dist-info}/WHEEL +0 -0
  61. {fiddler_client-2.4.0.dev2.dist-info → fiddler_client-2.5.0.dev2.dist-info}/top_level.txt +0 -0
@@ -6,11 +6,14 @@ from collections import namedtuple
6
6
  import pandas as pd
7
7
  import responses
8
8
 
9
+ from fiddler3.entities.job import Job
9
10
  from fiddler3.entities.model import Model
10
11
  from fiddler3.schemas.xai import DatasetDataSource, RowDataSource
11
12
  from fiddler3.tests.constants import (
12
13
  BASE_TEST_DIR,
14
+ DATASET_ID,
13
15
  DATASET_NAME,
16
+ JOB_ID,
14
17
  MODEL_ID,
15
18
  MODEL_NAME,
16
19
  ORG_ID,
@@ -493,6 +496,61 @@ FEATURE_IMPACT_RESPONSE_200 = {
493
496
  'kind': 'NORMAL',
494
497
  }
495
498
 
499
+ PRECOMPUTE_FEATURE_IMPACT_202_RESPONSE = {
500
+ 'data': {'job': {'id': JOB_ID, 'name': 'Pre-compute feature impact'}},
501
+ 'api_version': '3.0',
502
+ 'kind': 'NORMAL',
503
+ }
504
+ PRECOMPUTE_FEATURE_IMPACT_JOB_API_RESPONSE_200 = {
505
+ 'api_version': '3.0',
506
+ 'kind': 'NORMAL',
507
+ 'data': {
508
+ 'name': 'Pre-compute feature impact',
509
+ 'id': JOB_ID,
510
+ 'status': 'SUCCESS',
511
+ 'progress': 100.0,
512
+ 'error_message': None,
513
+ 'error_reason': None,
514
+ },
515
+ }
516
+
517
+ PRECOMPUTE_FEATURE_IMPORTANCE_202_RESPONSE = {
518
+ 'data': {'job': {'id': JOB_ID, 'name': 'Pre-compute feature importance'}},
519
+ 'api_version': '3.0',
520
+ 'kind': 'NORMAL',
521
+ }
522
+ PRECOMPUTE_FEATURE_IMPORTANCE_JOB_API_RESPONSE_200 = {
523
+ 'api_version': '3.0',
524
+ 'kind': 'NORMAL',
525
+ 'data': {
526
+ 'name': 'Pre-compute feature importance',
527
+ 'id': JOB_ID,
528
+ 'status': 'SUCCESS',
529
+ 'progress': 100.0,
530
+ 'error_message': None,
531
+ 'error_reason': None,
532
+ },
533
+ }
534
+
535
+ PRECOMPUTE_PREDICTIONS_202_RESPONSE = {
536
+ 'data': {'job': {'id': JOB_ID, 'name': 'Pre-compute predictions'}},
537
+ 'api_version': '3.0',
538
+ 'kind': 'NORMAL',
539
+ }
540
+
541
+ PRECOMPUTE_PREDICTIONS_JOB_API_RESPONSE_200 = {
542
+ 'api_version': '3.0',
543
+ 'kind': 'NORMAL',
544
+ 'data': {
545
+ 'name': 'Pre-compute predictions',
546
+ 'id': JOB_ID,
547
+ 'status': 'SUCCESS',
548
+ 'progress': 100.0,
549
+ 'error_message': None,
550
+ 'error_reason': None,
551
+ },
552
+ }
553
+
496
554
 
497
555
  @responses.activate
498
556
  def test_explain() -> None:
@@ -656,6 +714,30 @@ def test_predict() -> None:
656
714
  pd.testing.assert_frame_equal(predictions, expected_result)
657
715
 
658
716
 
717
+ @responses.activate
718
+ def test_get_feature_impact() -> None:
719
+ responses.get(
720
+ url=f'{URL}/v3/models/{MODEL_ID}',
721
+ json=MODEL_API_RESPONSE_200,
722
+ )
723
+ model = Model.get(id_=MODEL_ID)
724
+
725
+ responses.post(
726
+ url=f'{URL}/v3/analytics/feature-impact',
727
+ json=FEATURE_IMPACT_RESPONSE_200,
728
+ )
729
+ feature_impact = model.get_feature_impact(
730
+ data_source=DatasetDataSource(
731
+ env_type='PRE-PRODUCTION',
732
+ env_id=DATASET_ID,
733
+ ),
734
+ )
735
+
736
+ assert feature_impact == namedtuple(
737
+ 'FeatureImpact', FEATURE_IMPACT_RESPONSE_200['data']
738
+ )(**FEATURE_IMPACT_RESPONSE_200['data'])
739
+
740
+
659
741
  @responses.activate
660
742
  def test_get_feature_importance() -> None:
661
743
  responses.get(
@@ -664,6 +746,114 @@ def test_get_feature_importance() -> None:
664
746
  )
665
747
  model = Model.get(id_=MODEL_ID)
666
748
 
749
+ responses.post(
750
+ url=f'{URL}/v3/analytics/feature-importance',
751
+ json=FEATURE_IMPORTANCE_RESPONSE_200,
752
+ )
753
+ feature_importance = model.get_feature_importance(
754
+ data_source=DatasetDataSource(
755
+ env_type='PRE-PRODUCTION',
756
+ env_id=DATASET_ID,
757
+ ),
758
+ )
759
+
760
+ assert feature_importance == namedtuple(
761
+ 'FeatureImportance', FEATURE_IMPORTANCE_RESPONSE_200['data']
762
+ )(**FEATURE_IMPORTANCE_RESPONSE_200['data'])
763
+
764
+
765
+ @responses.activate
766
+ def test_precompute_feature_impact() -> None:
767
+ responses.get(
768
+ url=f'{URL}/v3/models/{MODEL_ID}',
769
+ json=MODEL_API_RESPONSE_200,
770
+ )
771
+ model = Model.get(id_=MODEL_ID)
772
+
773
+ responses.post(
774
+ url=f'{URL}/v3/analytics/precompute-feature-impact',
775
+ json=PRECOMPUTE_FEATURE_IMPACT_202_RESPONSE,
776
+ )
777
+ responses.get(
778
+ url=f'{URL}/v3/jobs/{JOB_ID}',
779
+ json=PRECOMPUTE_FEATURE_IMPACT_JOB_API_RESPONSE_200,
780
+ )
781
+
782
+ job_obj = model.precompute_feature_impact(dataset_id=DATASET_ID, update=False)
783
+ assert isinstance(job_obj, Job)
784
+
785
+
786
+ @responses.activate
787
+ def test_update_precompute_feature_impact() -> None:
788
+ responses.get(
789
+ url=f'{URL}/v3/models/{MODEL_ID}',
790
+ json=MODEL_API_RESPONSE_200,
791
+ )
792
+ model = Model.get(id_=MODEL_ID)
793
+
794
+ responses.put(
795
+ url=f'{URL}/v3/analytics/precompute-feature-impact',
796
+ json=PRECOMPUTE_FEATURE_IMPACT_202_RESPONSE,
797
+ )
798
+ responses.get(
799
+ url=f'{URL}/v3/jobs/{JOB_ID}',
800
+ json=PRECOMPUTE_FEATURE_IMPACT_JOB_API_RESPONSE_200,
801
+ )
802
+
803
+ job_obj = model.precompute_feature_impact(dataset_id=DATASET_ID, update=True)
804
+ assert isinstance(job_obj, Job)
805
+
806
+
807
+ @responses.activate
808
+ def test_precompute_feature_importance() -> None:
809
+ responses.get(
810
+ url=f'{URL}/v3/models/{MODEL_ID}',
811
+ json=MODEL_API_RESPONSE_200,
812
+ )
813
+ model = Model.get(id_=MODEL_ID)
814
+
815
+ responses.post(
816
+ url=f'{URL}/v3/analytics/precompute-feature-importance',
817
+ json=PRECOMPUTE_FEATURE_IMPORTANCE_202_RESPONSE,
818
+ )
819
+ responses.get(
820
+ url=f'{URL}/v3/jobs/{JOB_ID}',
821
+ json=PRECOMPUTE_FEATURE_IMPORTANCE_JOB_API_RESPONSE_200,
822
+ )
823
+
824
+ job_obj = model.precompute_feature_importance(dataset_id=DATASET_ID, update=False)
825
+ assert isinstance(job_obj, Job)
826
+
827
+
828
+ @responses.activate
829
+ def test_update_precompute_feature_importance() -> None:
830
+ responses.get(
831
+ url=f'{URL}/v3/models/{MODEL_ID}',
832
+ json=MODEL_API_RESPONSE_200,
833
+ )
834
+ model = Model.get(id_=MODEL_ID)
835
+
836
+ responses.put(
837
+ url=f'{URL}/v3/analytics/precompute-feature-importance',
838
+ json=PRECOMPUTE_FEATURE_IMPORTANCE_202_RESPONSE,
839
+ )
840
+ responses.get(
841
+ url=f'{URL}/v3/jobs/{JOB_ID}',
842
+ json=PRECOMPUTE_FEATURE_IMPORTANCE_JOB_API_RESPONSE_200,
843
+ )
844
+
845
+ job_obj = model.precompute_feature_importance(dataset_id=DATASET_ID, update=True)
846
+ assert isinstance(job_obj, Job)
847
+
848
+
849
+ @responses.activate
850
+ def test_get_precomputed_feature_importance() -> None:
851
+ responses.get(
852
+ url=f'{URL}/v3/models/{MODEL_ID}',
853
+ json=MODEL_API_RESPONSE_200,
854
+ )
855
+ model = Model.get(id_=MODEL_ID)
856
+
667
857
  responses.post(
668
858
  url=f'{URL}/v3/analytics/feature-importance/precomputed',
669
859
  json=FEATURE_IMPORTANCE_RESPONSE_200,
@@ -674,7 +864,7 @@ def test_get_feature_importance() -> None:
674
864
 
675
865
 
676
866
  @responses.activate
677
- def test_get_feature_impact() -> None:
867
+ def test_get_precomputed_feature_impact() -> None:
678
868
  responses.get(
679
869
  url=f'{URL}/v3/models/{MODEL_ID}',
680
870
  json=MODEL_API_RESPONSE_200,
@@ -688,3 +878,45 @@ def test_get_feature_impact() -> None:
688
878
  assert model.get_precomputed_feature_impact() == namedtuple(
689
879
  'FeatureImpact', FEATURE_IMPACT_RESPONSE_200['data']
690
880
  )(**FEATURE_IMPACT_RESPONSE_200['data'])
881
+
882
+
883
+ @responses.activate
884
+ def test_precompute_predictions() -> None:
885
+ responses.get(
886
+ url=f'{URL}/v3/models/{MODEL_ID}',
887
+ json=MODEL_API_RESPONSE_200,
888
+ )
889
+ model = Model.get(id_=MODEL_ID)
890
+
891
+ responses.post(
892
+ url=f'{URL}/v3/analytics/precompute-predictions',
893
+ json=PRECOMPUTE_PREDICTIONS_202_RESPONSE,
894
+ )
895
+ responses.get(
896
+ url=f'{URL}/v3/jobs/{JOB_ID}',
897
+ json=PRECOMPUTE_PREDICTIONS_JOB_API_RESPONSE_200,
898
+ )
899
+
900
+ job_obj = model.precompute_predictions(dataset_id=DATASET_ID, update=False)
901
+ assert isinstance(job_obj, Job)
902
+
903
+
904
+ @responses.activate
905
+ def test_update_precompute_predictions() -> None:
906
+ responses.get(
907
+ url=f'{URL}/v3/models/{MODEL_ID}',
908
+ json=MODEL_API_RESPONSE_200,
909
+ )
910
+ model = Model.get(id_=MODEL_ID)
911
+
912
+ responses.put(
913
+ url=f'{URL}/v3/analytics/precompute-predictions',
914
+ json=PRECOMPUTE_PREDICTIONS_202_RESPONSE,
915
+ )
916
+ responses.get(
917
+ url=f'{URL}/v3/jobs/{JOB_ID}',
918
+ json=PRECOMPUTE_PREDICTIONS_JOB_API_RESPONSE_200,
919
+ )
920
+
921
+ job_obj = model.precompute_predictions(dataset_id=DATASET_ID, update=True)
922
+ assert isinstance(job_obj, Job)
@@ -25,6 +25,6 @@ def connection(session_mocker: MockerFixture) -> Connection:
25
25
  },
26
26
  }
27
27
  )
28
- session_mocker.patch.object(conn, '_get_server_info', server_info)
29
- session_mocker.patch('fiddler3.connection', conn)
28
+ session_mocker.patch.object(conn, '_get_server_info', return_value=server_info)
29
+ session_mocker.patch('fiddler3.connection.connection', conn)
30
30
  yield conn
@@ -18,7 +18,12 @@ JOB_NAME = f'Deleting model {MODEL_NAME}'
18
18
  DATASET_ID = 'ba6ec4e4-7188-44c5-ba84-c2cb22b4bb00'
19
19
  DATASET_NAME = 'dataset3'
20
20
  BASELINE_ID = 'af05646f-0cef-4638-84c9-0d195df2575d'
21
+ ALERT_RULE_ID = 'ed8f18e6-c319-4374-8884-71126a6bab85'
21
22
  BASELINE_NAME = 'test_baseline'
22
23
  MODEL_DEPLOYMENT_ID = 'fc07562a-1a27-4f66-9154-732d3b14b98a'
24
+ WEBHOOK_ID = 'a5b654eb-15c8-43c8-9d50-9ba6eea9a0ff'
25
+ WEBHOOK_NAME = 'test_webhook_config_name'
26
+ WEBHOOK_URL = 'https://www.slack.com'
27
+ WEBHOOK_PROVIDER = 'SLACK'
23
28
  BASE_TEST_DIR = f'{Path(__file__).resolve().parent}'
24
29
  OUTPUT_DIR = os.path.join(BASE_TEST_DIR, 'artifact_test_dir')
@@ -1,4 +1,5 @@
1
1
  from http import HTTPStatus
2
+ from uuid import UUID
2
3
 
3
4
  import pytest
4
5
  import responses
@@ -7,9 +8,20 @@ from responses import matchers
7
8
  from fiddler3.connection import Connection
8
9
  from fiddler3.constants.common import CLIENT_NAME
9
10
  from fiddler3.exceptions import ApiError
10
- from fiddler3.tests.constants import URL
11
+ from fiddler3.schemas.server_info import ServerInfo
12
+ from fiddler3.tests.constants import ORG_ID, ORG_NAME, URL
11
13
  from fiddler3.version import __version__
12
14
 
15
+ SERVER_INFO_API_RESPONSE = {
16
+ 'data': {
17
+ 'server_version': '24.1.0-pre-3e889ef',
18
+ 'feature_flags': {},
19
+ 'organization': {'id': ORG_ID, 'name': ORG_NAME},
20
+ },
21
+ 'api_version': '3.0',
22
+ 'kind': 'NORMAL',
23
+ }
24
+
13
25
 
14
26
  @responses.activate
15
27
  def test_version_compatibility_success(connection: Connection) -> None:
@@ -39,3 +51,14 @@ def test_version_compatibility_failed(connection: Connection) -> None:
39
51
 
40
52
  with pytest.raises(ApiError):
41
53
  connection._check_version_compatibility()
54
+
55
+
56
+ @responses.activate
57
+ def test_get_server_info(connection: Connection) -> None:
58
+ responses.get(
59
+ url=f'{URL}/v3/server-info',
60
+ json=SERVER_INFO_API_RESPONSE,
61
+ )
62
+ assert isinstance(connection.server_info, ServerInfo)
63
+ assert connection.organization_name == ORG_NAME
64
+ assert connection.organization_id == UUID(ORG_ID)
@@ -7,10 +7,10 @@ from fiddler3.libs.json_encoder import RequestClientJSONEncoder
7
7
 
8
8
 
9
9
  def test_json_encoder_uuid():
10
- data = {'uuid_field': UUID('ef3e24550e1846e0ae0e6672c3a0d5d9')}
10
+ data = {'uuid_field': UUID('6ea7243e-0bf7-4323-ba1b-9f788b4a9257')}
11
11
  with pytest.raises(TypeError):
12
12
  simplejson.dumps(data)
13
13
 
14
14
  assert simplejson.dumps(data, cls=RequestClientJSONEncoder) == simplejson.dumps(
15
- {'uuid_field': 'ef3e24550e1846e0ae0e6672c3a0d5d9'}
15
+ {'uuid_field': '6ea7243e-0bf7-4323-ba1b-9f788b4a9257'}
16
16
  )
fiddler3/utils/helpers.py CHANGED
@@ -1,11 +1,14 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  from datetime import datetime
4
+ from http import HTTPStatus
4
5
 
5
6
  import pandas as pd
6
7
 
7
8
  from fiddler3.constants.common import TIMESTAMP_FORMAT
8
9
  from fiddler3.constants.model import DataType
10
+ from fiddler3.exceptions import NotFound
11
+ from fiddler3.schemas.response import ErrorData, ErrorItem
9
12
  from fiddler3.utils.logger import get_logger
10
13
 
11
14
  logger = get_logger(__name__)
@@ -41,3 +44,20 @@ def try_series_retype(series: pd.Series, new_type: str) -> pd.DataFrame | pd.Ser
41
44
  return series.apply(lambda x: datetime.strptime(x, '%Y-%m-%d %H:%M:%S'))
42
45
  else:
43
46
  raise e
47
+
48
+
49
+ def raise_not_found(message: str) -> None:
50
+ """Raise NotFound if the resource is not found while fetching with names"""
51
+ raise NotFound(
52
+ error=ErrorData(
53
+ code=HTTPStatus.NOT_FOUND,
54
+ message=message,
55
+ errors=[
56
+ ErrorItem(
57
+ reason='ObjectNotFound',
58
+ message=message,
59
+ help='',
60
+ ),
61
+ ],
62
+ ),
63
+ )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fiddler-client
3
- Version: 2.4.0.dev2
3
+ Version: 2.5.0.dev2
4
4
  Summary: Python client for Fiddler Service
5
5
  Home-page: https://fiddler.ai
6
6
  Author: Fiddler Labs
@@ -42,9 +42,17 @@ Documentation for the API can be found [here](https://docs.fiddler.ai/reference/
42
42
 
43
43
  Version History
44
44
  -------------
45
+ ### 2.5.0
46
+ - #### **New Features**
47
+ - Add support for enrichments
48
+ - Allow pausing multiple alerts at once
49
+ - Add percentage violation metrics for alert
50
+
45
51
  ### 2.4.0
46
- - #### **New Features**
47
- - Support for enrichments
52
+ - ### **New Features**
53
+ - Add support for segments
54
+ - #### **Modifications**
55
+ - Ensure `TextEmbedding` and `ImageEmbedding` is supported for vectors in metadata
48
56
 
49
57
  ### 2.3.0
50
58
  - #### **New Features**
@@ -57,8 +65,10 @@ Version History
57
65
  - Relax pydantic version to allow any version between 1.9 and 2
58
66
 
59
67
  ### 2.2.0
60
- - #### **New Features**
61
- - Support segments
68
+ - #### **Modifications**
69
+ - `add_custom_metric()` supports an optional `description` parameter
70
+ - `fql` is renamed to `definition` in `add_custom_metric()`
71
+ - A new `get_custom_metric()` function to get details about a single custom metric.
62
72
 
63
73
  ### 2.1.2
64
74
  - #### **Modifications**
@@ -1,10 +1,10 @@
1
- fiddler/__init__.py,sha256=VBrs_sjTcvv58z4jbbnfdXFkiPIS7Pmb6_E374N25UQ,1984
2
- fiddler/_version.py,sha256=m7gAljm8a0PcFd1hbGBQOa-9aUPVMdJR36OtW8arUhs,27
1
+ fiddler/__init__.py,sha256=D3soQu7i4pVdlmtuJDjlSwil0jSfusWl9DbpD33oo3k,2018
2
+ fiddler/_version.py,sha256=aMTAwIPI7QIegUu-YKFN0jQaP6Rf6jO-I6KLDs4p5eI,27
3
3
  fiddler/constants.py,sha256=kXJX771B9UoQKh-umPnPfDXGeCRdC8TmTAi40hSK0Cs,1886
4
- fiddler/core_objects.py,sha256=8kXeqg-8tBAfQDKMh-bSNDpo7Y7C_bo599UVWzu1RL8,114904
4
+ fiddler/core_objects.py,sha256=ERxyRFTaw1Lhf2q2p_8sQMohwy5U9SGppHmSkRGqTBs,117468
5
5
  fiddler/exceptions.py,sha256=uC7EhNRmlndYxPvlyHOKQUNTRpe-J8HNulytU_NLmn0,2585
6
6
  fiddler/api/__init__.py,sha256=Na9WlUxg8FmKHBzzVJ-CzlYNm7-LClVH5f313SqJx4A,108
7
- fiddler/api/alert_mixin.py,sha256=wPEnJuDKcUeoyIX9tfTKVbMk_SISCrVbUZVKpwif1rg,20279
7
+ fiddler/api/alert_mixin.py,sha256=eYAH0jNG29Sn_Iy0mXf-qOKSvzrYmElaRPbsVtI8ZS0,22347
8
8
  fiddler/api/api.py,sha256=cdIjG-VZeax-HOPEo8VV08plAkWD-35zxnu3vO_NWIg,3487
9
9
  fiddler/api/baseline_mixin.py,sha256=juSezFwyXk8KJMoF-HXeE1WkhlUG7FVehaVS-t1zFC4,7452
10
10
  fiddler/api/custom_metrics_mixin.py,sha256=7fpZx_4jSzhELbU1TYyvgDqP8NUMg62NWqlgRwKjkDQ,3459
@@ -18,7 +18,7 @@ fiddler/api/model_deployment_mixin.py,sha256=vzbckdEbEPWVssPA9xsLIS_iUF3a5sEbBCH
18
18
  fiddler/api/model_mixin.py,sha256=VWf785tKaQHtpicpkoaVv8SZm-hD_nAC9Zb-d5uvUx4,17350
19
19
  fiddler/api/project_mixin.py,sha256=14GN7EP53_8qBBnAx27PuHL-ZmCGofU__kjygl6bIMQ,3206
20
20
  fiddler/api/segments_mixin.py,sha256=hwsn0cSlXZ4i9MG0Kg_BNlb4-SchqQZM0rDx0zcismw,3396
21
- fiddler/api/webhooks_mixin.py,sha256=riSbnBCi1A2qQZ-lmDbHBxvAPp1EPslR3oW5r3J-a9Y,3854
21
+ fiddler/api/webhooks_mixin.py,sha256=aZCAbmmMEB_QAdVqqhh7fv5W53CSfn83rUd0NBw6YnA,3794
22
22
  fiddler/assets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
23
  fiddler/assets/pg_reserved_words.py,sha256=Z4iNATcECfA4qB5GRJppCIvW7XKtGCwZ6qvPC1AB7Gs,8201
24
24
  fiddler/libs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -29,7 +29,7 @@ fiddler/packtools/keras_ig_helpers.py,sha256=24BCNPpG11S0ejrrlrKTs06TNofW5rc5gk9
29
29
  fiddler/packtools/project_attributions_helpers.py,sha256=fim-GIO_CpUw5YJgVznKMVIdAWFVMcCJexTodqI67aU,15696
30
30
  fiddler/packtools/template_model.py,sha256=Qp-3cgs2hgFKF6xr9X4O0c_q1LLT0bXH8K8s0eNv7pk,10307
31
31
  fiddler/schema/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
32
- fiddler/schema/alert.py,sha256=GeGGp7KLa2QDS-1Qn5EK11UHXJ8XgNUsj96TbdN19vw,5869
32
+ fiddler/schema/alert.py,sha256=ED39UMC7VbWfhCuk7i_h6pxevrhpx6gGCeOYsQKDRY8,6217
33
33
  fiddler/schema/base.py,sha256=VvuBEGZ_AMVQhT6AlkV7kMlOQcwsMbLIjvX0_cyMcQQ,359
34
34
  fiddler/schema/baseline.py,sha256=h8SyR32L1AMo2DrcwgEOqWN-U538-XFngjAtQQfMklI,487
35
35
  fiddler/schema/custom_metric.py,sha256=BEe-iUGIjsYGuedJ8kHrXDwmhB38ET-yPjKhv3tjZDk,387
@@ -44,7 +44,7 @@ fiddler/schema/server_info.py,sha256=33tY0ohiSJJNpoeyanUCNZy-sexQwoLRdr2XQrUmNEE
44
44
  fiddler/schema/user.py,sha256=8p4r2ZMqPEggggd10l62w_7A5KsRr6Se5QP-xfrEtks,109
45
45
  fiddler/schema/webhook.py,sha256=zDYGEgsAYd8NYMDhVOpK74t7dC6VieAvHmSoeadS_Ks,219
46
46
  fiddler/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
47
- fiddler/schemas/custom_features.py,sha256=cEE7SjYZi265CVh5fNdIkcuSDxN99BLGEWc1DADLt4o,3094
47
+ fiddler/schemas/custom_features.py,sha256=iFhq3D8NR0MGpXzqJVFzm-9HVqR1kuiZhsLBa8jNS_0,4651
48
48
  fiddler/utils/__init__.py,sha256=DEH6Z0Y4sawrzgpCHYuHfeGfYihxxjDC_z5ZhpICHjg,4622
49
49
  fiddler/utils/decorators.py,sha256=jp7oGBgcWpcxfs5O36zHR-urJdtqjLo4hA-5XxR8fIs,3681
50
50
  fiddler/utils/formatting.py,sha256=vXldw_Qtcvk22Yv4c2FkROHrkniWNog55dG1DoaIs4Q,1379
@@ -58,49 +58,58 @@ fiddler/utils/validations.py,sha256=fT8Sl9wPuJHONi2CsY8pgLCISfigVcaUXwhbtm_KuX0,
58
58
  fiddler/utils/validator.py,sha256=Jg8NirddUuVvjvyMruVNlhzEWShUIWh55AwEzHtDQZ4,14543
59
59
  fiddler/validators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
60
  fiddler/validators/dataset_validator.py,sha256=lOg8YfUSpFNf752DpjfbtHtyWiH30Jwpg041ZQlrVC8,1933
61
- fiddler3/__init__.py,sha256=4gMWdnKm2DGTBpcHPkW5CmH2gQq73XXnwriGex1--3k,1213
62
- fiddler3/configs.py,sha256=GctNUam-JM3gZcGeFhyS-0MexZhXypcpkLqR-dUt5Ps,186
63
- fiddler3/connection.py,sha256=MUAJNndJu_eFhdLa51JoJnFt1jhfmjjvpLTqF2aB8gE,3753
61
+ fiddler3/__init__.py,sha256=6hZh6IQTTXyLDodgIT-uEt3by8onfY_vauZfLfAfklk,3256
62
+ fiddler3/configs.py,sha256=s8nKw_2gCEKYk8dnmRxd92J8rCl08V4vPcH0xATT4Lw,258
63
+ fiddler3/connection.py,sha256=dfekZjMgII8wD5TnkD9tTeIv4rXtzQo4Rv5HUz6-VCY,5769
64
64
  fiddler3/decorators.py,sha256=JH4LPeygR4sPUt-xbsM1ZQ3vPF53iYwREZCWQ6Bmjpo,1823
65
65
  fiddler3/exceptions.py,sha256=7o0Xjx6McNMFxvysGMmp7NcXV2iGSM2VCt2h7OXDB0M,2172
66
66
  fiddler3/version.py,sha256=WZxVB-2_454JxgdmIIsxG-DUc65ia-VgtyjcgvV4mro,22
67
67
  fiddler3/constants/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
+ fiddler3/constants/alert_rule.py,sha256=cmFq-VKAlQbRKEkTtMmVNdD5R52uMI2zJai6TESFwfs,512
68
69
  fiddler3/constants/baseline.py,sha256=NhmiGf73gy2IHKKpbm64HCE4eJfbxkAPy3uk_Z-6qSo,321
69
70
  fiddler3/constants/common.py,sha256=Ls5VSDNC0hYFqtsKf0RbzsRQ8bYXiSIUM14vm6g3KVU,611
70
71
  fiddler3/constants/dataset.py,sha256=ZxPmzycSlrKpUYShpfTDqfmz8LAebzyBtIV_dBy-pRI,126
72
+ fiddler3/constants/events.py,sha256=3SgjNo4IS-_Nod8wbj98di4B4GctF9R414MZxfQ4MkU,114
71
73
  fiddler3/constants/job.py,sha256=tMT0vr3x3IiCTQcifP2s1-VWC5gskflKexfU_VfDIzA,233
72
- fiddler3/constants/model.py,sha256=t8zINOAHVHAXQAE-i7Yg3vbpNi4Pu9uKZxnHNH3HGTA,1456
74
+ fiddler3/constants/model.py,sha256=JkmXSdR3n8Or0z0-gMn-eAAMNpDgyLczt5x52_ST8do,1706
73
75
  fiddler3/constants/model_deployment.py,sha256=SfagLKVD7tK1QmYQFJLDrA4-6FaSeNF6tikP8pH2RTk,278
74
76
  fiddler3/constants/xai.py,sha256=GR8VguB6FTfMJZ291FIbfDsY4S9BGOft3VxNW5jMf90,214
75
- fiddler3/entities/__init__.py,sha256=ncuKKvYmb6Er8lIBFmLZsjGZoRrYGTngUvW_XBUuayw,366
76
- fiddler3/entities/base.py,sha256=QG6cxJNkiBlB86rbamoS6CcRiN1iB9QczGeaPsMgmaw,2522
77
- fiddler3/entities/baseline.py,sha256=lVIea8G5Md61KLewKyrTO9oPZSRpywX_VRSwbfPrkJU,7247
78
- fiddler3/entities/dataset.py,sha256=DKn6uo-6GxWhADas9iI3sLeBtDHM5yvyO7drAiQy-d0,4721
79
- fiddler3/entities/helpers.py,sha256=4BlxOsHlCZIeZEqErPxS4NznEOuVgZwxisNdfgE9-zE,581
77
+ fiddler3/entities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
78
+ fiddler3/entities/alert_record.py,sha256=pLPl9sAhTQGe5GoqU93FaG1x4f9CiCTjTNdJ6GKO3dc,3475
79
+ fiddler3/entities/alert_rule.py,sha256=w3U2tO2l3hUn_WymuKGR9h0dt5XkGpwZ_NSwOnSxxCQ,10855
80
+ fiddler3/entities/base.py,sha256=jrs8v361XPE8d1-p4kuvppSycSydBMrvG2X6A1H08bo,2109
81
+ fiddler3/entities/baseline.py,sha256=T7EAEBSB9YxerxZH7rG_DZjDeCWppZYkT9QtI2s-02E,7374
82
+ fiddler3/entities/dataset.py,sha256=nmEGe7onDYQmLh7YWa4m4eNpCeD1T8xPx2A9J9_NGP4,4718
83
+ fiddler3/entities/events.py,sha256=I4YOFvEQ4tjq-7a_oaOBCg9oEL-LsU2KZbK16x3e2MQ,4386
84
+ fiddler3/entities/file.py,sha256=hs7JsSk5Ah7uNiMGAsJtHSdtdMc-B58lkM1o7GYtZrw,4852
80
85
  fiddler3/entities/job.py,sha256=vObT1vdjcc76gOTzFVj6rn-rn6g4e_BRVJNeHTWejg8,4564
81
- fiddler3/entities/model.py,sha256=4SisJSNGopUS43uRDez9x2VcVv47_eLNMvp7yYIoWH8,10927
82
- fiddler3/entities/model_artifact.py,sha256=7nWPm5b86E-h8cSNowr7gqopubvAzqwMc4rA4ijD4ig,11028
83
- fiddler3/entities/model_deployment.py,sha256=g-xXbxdQ99HLpNCHoSuvqk5F4DmDMB7d8HhaW9svbTI,3432
84
- fiddler3/entities/model_surrogate.py,sha256=IC_JVMMFX-_yGkcvupQg_VAgIoIBhvhO0doHcQg7MD4,2708
86
+ fiddler3/entities/model.py,sha256=yaGtTxubD5XI4rcqjhJwoK189l0ySEc5jw0vnz6Hg10,14524
87
+ fiddler3/entities/model_artifact.py,sha256=V3qwdEJcCuhSob8K9-Gi3PVpdivzeYnAOLYMtT1_8Lk,5468
88
+ fiddler3/entities/model_deployment.py,sha256=M_TdwCfue6SN9_4HqoyJMcpTMkLyWt78_o8tQuKkurU,3788
85
89
  fiddler3/entities/organization.py,sha256=96C-L_GNh0RnwAhqVV2CQuxYK3r61j8OCEOPEE6U8dE,1076
86
- fiddler3/entities/project.py,sha256=8JR10ghL0KGNBe50APrD24veqIStWp_PwgIARpPx8SY,4578
90
+ fiddler3/entities/project.py,sha256=a58AgM8ThhyXeOX65A0Yy9Mu0oMtQLNWLTc3hwOdghE,4602
91
+ fiddler3/entities/surrogate.py,sha256=hiskv058Ycs5fW88fvju4c2PkEZhtzX7WPnKyIDrDtQ,2540
87
92
  fiddler3/entities/user.py,sha256=ev_Xx9QHAdEHYzNDafzQihXOcD8ME5XkpKgc8MiqCnw,1243
88
- fiddler3/entities/xai.py,sha256=I2tH8XwoblLZd60Ba-8qEMjZMVctYRVJzIrcbc1iWYM,10885
93
+ fiddler3/entities/webhook.py,sha256=fxJUQl7lK8m5oyTvLPbwR5d2aSL6T9ZnJqbMlnenAlk,3801
94
+ fiddler3/entities/xai.py,sha256=odiYDdeT1cuGJVzylnlQArAOxl2YmQ89BTFZ4HC8XoA,20240
89
95
  fiddler3/libs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
90
- fiddler3/libs/http_client.py,sha256=vIJZqdRnGc4WC4PdAlT-gsiMagJWPbgTrGq5sG64eSA,7088
91
- fiddler3/libs/json_encoder.py,sha256=_D-SKgkyo2DtgM8z8wCd9QSB7VwwFt0KDz-9og9pwSI,330
96
+ fiddler3/libs/http_client.py,sha256=GeTIl_bWuFoA7xQKIT_Qrc_CJOsEkwDKELopVYGYHwM,7100
97
+ fiddler3/libs/json_encoder.py,sha256=QdnNOq_QZAHSQBOI2yW_-tWGCW9ECewUNBHhoH6uVJs,331
92
98
  fiddler3/libs/semver.py,sha256=3HbXG1S-ABIxL3E0FHSm5OR_YrhYtCB2Q3XJ8-tywts,15995
93
- fiddler3/schemas/__init__.py,sha256=3X8Is87FXJb2SEeRM2WmeujoIXbo0iTYxGbU1Gi3gHw,502
99
+ fiddler3/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
100
+ fiddler3/schemas/alert_record.py,sha256=E_Ehh1T6tUu3lqvOHDcqTVxhqZer2dWVsdvPamnzgts,669
101
+ fiddler3/schemas/alert_rule.py,sha256=3cfoXdwRnNiIW37nUdjDDHrzcIYIUY62TFq9olAV4EA,1251
94
102
  fiddler3/schemas/base.py,sha256=upzAmneEz169h_w-UDH_tY0Abo7DeK68YOZ5qVwIMa8,189
95
103
  fiddler3/schemas/baseline.py,sha256=pBnt8J-PBZ4ejEoX5lQDGRLE1a3YQtxGBFwgTPxHkQs,928
96
- fiddler3/schemas/custom_features.py,sha256=3kGOK4em2MG8NxaY1fyI2N3GyV9F3YO8pqhwoB-bx48,3035
104
+ fiddler3/schemas/custom_features.py,sha256=ZeradA4bgIKHuK1TfyUY4tOpd6AWvxtBaMjgqs1jdvs,5384
97
105
  fiddler3/schemas/dataset.py,sha256=AXN416sL2S-LlF6VXiJmlO7UXrGOn_X_XHArdErieGE,662
98
106
  fiddler3/schemas/deployment_params.py,sha256=XrVCvMfj3Uwd0RFG8exBEvu7rvSI2ifAGBlfPIyjUCU,547
107
+ fiddler3/schemas/events.py,sha256=UQpLMbfLtBaBKldUu8zXos5KkhUjo655aiTHmewcRNo,411
108
+ fiddler3/schemas/file.py,sha256=S5YN8QBnMxPDnX-zyB4TvHZ9a84Dpb_VxvbDcsSWSeE,464
99
109
  fiddler3/schemas/filter_query.py,sha256=yInG5FJ88NlPXy8GXQj_Bd7ta_C1n54pdHFdQedpTco,1326
100
110
  fiddler3/schemas/job.py,sha256=plqly2vU8mzwwdDcLdcUd3LPBwldIw9VkgbSTcFNXRM,340
101
- fiddler3/schemas/model.py,sha256=_ec6PDcl8Lonthq6d6e4CaUfxEm9kk-EwARA81ksrHI,1423
102
- fiddler3/schemas/model_artifact.py,sha256=d2axtyOQq6x0rJGWeCgMn8wcAQ-e2tVw9nLQRdN9YD4,138
103
- fiddler3/schemas/model_deployment.py,sha256=PnHSmuISLiIl1cNxTWsjOK3pWnIXexcu0dnsFZqs9w8,725
111
+ fiddler3/schemas/model.py,sha256=bRQ1jmWIS3QwM-s0ool1JXEyesAIi6sGqIHRRdJ2YGQ,1262
112
+ fiddler3/schemas/model_deployment.py,sha256=xMoiwKcNu_xyJXJOlxpOXQm94ag1HbmlvcbTxeYNEKo,793
104
113
  fiddler3/schemas/model_schema.py,sha256=QtZ5XwL4LC9g2Ia2gpJsimyP-Jq5yemvySym8D3-7yk,1128
105
114
  fiddler3/schemas/model_spec.py,sha256=3F1VWVP1NV_i7Kz7Am7so1zLesWFwp9t4vWq_hCZOJw,643
106
115
  fiddler3/schemas/model_task_params.py,sha256=zFkTVa2IOdWMgxePH1sWUYWV6uJFqLkR_JrSnoH8eJI,692
@@ -109,30 +118,36 @@ fiddler3/schemas/project.py,sha256=DJd2YRyolEBCrdKwAKWBJwtdPsQh3MOHppn5CG4wiNU,3
109
118
  fiddler3/schemas/response.py,sha256=jWuUAJXm40UE3i_ZCmfVUXdKY5WLVkrL6G5XLS17KnU,1167
110
119
  fiddler3/schemas/server_info.py,sha256=e_uoHVIPJ4tTBTVKNbm3wKoF3mXOfv2HF1MSF9zpgEw,503
111
120
  fiddler3/schemas/user.py,sha256=XuUkmXYM2PNOnau5RdYXLb3AfQoI1e7fDorzT2dTLtw,137
121
+ fiddler3/schemas/webhook.py,sha256=Mi5-lytEUOPJm964qM_9OQd088e_U2kSKNpB2BfAd4o,465
112
122
  fiddler3/schemas/xai.py,sha256=DnQkICrCJZM6YFTB6z0pa-Rb81VWLbzrYdqWhQ5cp5I,741
113
123
  fiddler3/schemas/xai_params.py,sha256=7WbUCBojzZckjOA2NUxnk5y3M2WKKXclSzkt5HBfyUU,313
114
124
  fiddler3/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
115
- fiddler3/tests/conftest.py,sha256=8NI-g3flCXyEzMBoVthUpYu4aVC4g6UPb-Jm9w0Bdbo,837
116
- fiddler3/tests/constants.py,sha256=t-HFx7u_8uwdtf7mQShRHu1Ns4U1k8LzTZH4CagznP4,867
117
- fiddler3/tests/test_connection.py,sha256=QQJ2SDtKKvdPd6du5XDXLwWSNgE9wZs1IR3IU60s7BY,1198
118
- fiddler3/tests/test_json_encoder.py,sha256=DnuyDTBKTq-dYZhY9KWN1OHywCukpBHq1PDBo6koR8E,437
125
+ fiddler3/tests/conftest.py,sha256=x3rY1gD1nzBnOtBd48Hj8Z4njSDGY00wbUvUIZwp_Co,861
126
+ fiddler3/tests/constants.py,sha256=-_uoidMv6eQ-ldHCN5u_uBXuX3aS4YuylaUSbBfGHYY,1081
127
+ fiddler3/tests/test_connection.py,sha256=Fxj4GdCeBUS5gHijvoKggJwMAOq0WRCB8s7yQ-d1KYw,1871
128
+ fiddler3/tests/test_json_encoder.py,sha256=JXuppkqFdcUrBWDNj4Ih8qnvrqMVFnHVpLNI1kR2s5A,445
119
129
  fiddler3/tests/test_logger.py,sha256=baSk0xtm8JNz0O83A714IR5uO36v_JoKPgDyknr_X4Q,314
120
130
  fiddler3/tests/test_utils.py,sha256=Frzk5wftz_MWWhT9rvwOca1vvI4rllsjBA8E1jQ_gOE,1447
121
131
  fiddler3/tests/utils.py,sha256=FEDbASW4pYZktdEK2FLnIDyZCwBzpb60m6EzkvOkwSc,335
122
132
  fiddler3/tests/apis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
133
+ fiddler3/tests/apis/test_alert_record.py,sha256=DHktQM5Dq_VWntURFDABcrHTaqdMdKReUR30aTlelbY,3120
134
+ fiddler3/tests/apis/test_alert_rule.py,sha256=roSIbG9kxLwCJiLZs1-aVIYbg7yi9zIq3D1YC563DZU,11120
123
135
  fiddler3/tests/apis/test_baseline.py,sha256=dWvcJ1TPvBjtb7RQwe3LXI72Cs1yb6Zx-PTMixl5l0g,7584
124
136
  fiddler3/tests/apis/test_dataset.py,sha256=ub000_6wIOCVcofg7y125p1n4abaiPEO-iP7OvpeLyY,4768
137
+ fiddler3/tests/apis/test_events.py,sha256=f0m__VsaqLpc6zYmVEFp8idek0kDAUyLJyJV-9UmlZs,4518
138
+ fiddler3/tests/apis/test_files.py,sha256=EHxe1eB-EYIiu94tKASsFRHcCZzcPImoyEeBumq35SY,4503
125
139
  fiddler3/tests/apis/test_generate_schema.py,sha256=51Xux_Txb2Ica1AKX9794K5LNJ1y569rggbgfWhZLDI,3720
126
140
  fiddler3/tests/apis/test_job.py,sha256=4WsB6WoVL4bbK_RgP4e9Wc_DhSF4fCXoFK7wx6mOHQ0,1894
127
141
  fiddler3/tests/apis/test_mixin.py,sha256=-uoeP2v0WMmOpsBoupNCw_BIFRWH1nkSzg4POKNB_J4,2465
128
- fiddler3/tests/apis/test_model.py,sha256=4z9P951bmuZo8yuD7Vb0bRbOV-stXFyT43N3GX81Asc,12183
129
- fiddler3/tests/apis/test_model_artifact.py,sha256=piBWhXyVRmN3aYGvUaxkN5jT4dlBwPRm5_LunTq94fc,4997
142
+ fiddler3/tests/apis/test_model.py,sha256=2KLGekock0B7qSflRV1BJhFjSXMyeJ0o1uxhmnP4Qak,13548
143
+ fiddler3/tests/apis/test_model_artifact.py,sha256=3zoHI5JTjWjm_gSgXf2-kAzp7jsygNWdW5H_W4m1gYE,5491
130
144
  fiddler3/tests/apis/test_model_deployment.py,sha256=QLMuNiC9efujd67zQMuDHvF365Jx3NYaYediv4AXftA,2444
131
145
  fiddler3/tests/apis/test_model_surrogate.py,sha256=ErFuILpnpQRytteWla4WcqzzOEwH9qrOANm_4-nrWts,4124
132
- fiddler3/tests/apis/test_project.py,sha256=imhGUyi2hVvMJ4LaRpAoQS8R-fahgD3xboQjjYUvnA0,5987
133
- fiddler3/tests/apis/test_xai.py,sha256=AxeEZ59opoZHy-4vxVqBoUN3rORIFL-zM-196j7nDUg,21647
146
+ fiddler3/tests/apis/test_project.py,sha256=KMtlqANrEdYuiL455oCvjubf6yOvGnh5kriykRzPrBo,6019
147
+ fiddler3/tests/apis/test_webhook.py,sha256=HEQlwOQTZA2NQP4t_l-K1ttJecWC1M_no60AMRy2yIY,6443
148
+ fiddler3/tests/apis/test_xai.py,sha256=jIjW8YLzFzOF2y81Ss5lpUNQP7t7Rzl8e5JJiAVnpgo,28085
134
149
  fiddler3/utils/__init__.py,sha256=dq4jUfZTE-0G8P4uYVi2z8oSYG73utqikAy2hPXjBDk,54
135
- fiddler3/utils/helpers.py,sha256=iFmEQfoebXkSA-mfqh8xlB7-TlBDTOPBPfmP1DhzGgQ,1548
150
+ fiddler3/utils/helpers.py,sha256=s5Yy6XP9i4rhSFDj4b3jyzRkt5QhcN5_BkwFwrYJwqw,2124
136
151
  fiddler3/utils/logger.py,sha256=yyhgUgEKcuyI8bJxyaJSrONxNE9kx6b7n36hya9SbnQ,670
137
152
  fiddler3/utils/model_schema_generator.py,sha256=KMBYu24vxIdrrOeYgfu6Wz6awF2le2iUawE2LyGmxqs,8667
138
153
  fiddler3/utils/validations.py,sha256=i8NtgrpCsitq6BPa5lygpKDh07oaOXu7PAlCIcMvqzY,408
@@ -144,7 +159,7 @@ tests/fiddler/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
144
159
  tests/fiddler/base.py,sha256=1ccUXsULJqfPAUVfhfYDcr86nlYMF9Lx9sgiQAswxGM,1440
145
160
  tests/fiddler/helper.py,sha256=lE0blhcQysB9BuVKScK-rpaxau04ddWD7NrjD5AZkb4,1785
146
161
  tests/fiddler/test_add_model.py,sha256=xfCIaHDl4ZZBJ6Vz-h4OhqSPharFXKGT2kU145IDzzE,3771
147
- tests/fiddler/test_alert.py,sha256=FBiSBrbpKHQol4E1mfPBR7TSCNnv9NlB0xhNjOfMHhY,62644
162
+ tests/fiddler/test_alert.py,sha256=Hxhpi_UiXhyexraAgphOYF1OcrfYm3fEFPzy3CzV2Hg,66071
148
163
  tests/fiddler/test_baseline.py,sha256=X2bYkBPL9f1HdgXsjP-sC6W6Mw3w8r9kr1OaQLyWTQQ,10514
149
164
  tests/fiddler/test_check_version_decorator.py,sha256=MGcrIX7nscVpIYy1thuLrSvsXBC6KDXfdsHCEST5Xnw,906
150
165
  tests/fiddler/test_custom_features.py,sha256=yjz-5Aq_Ey7FoDJiIzugLPcbh_5QdazE6trwpT38rEw,3028
@@ -167,8 +182,8 @@ tests/fiddler/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
167
182
  tests/fiddler/utils/test_general_checks.py,sha256=kxG8n4UdBWXBGchA0SvV7o4t28a7YAc8viorEBpzzcE,1451
168
183
  tests/fiddler/utils/test_pandas.py,sha256=7VBh8yJZMVE1bSaUYH0T_qwXpcwXgJ5rI1nL3vGRwjY,8781
169
184
  tests/fiddler/utils/tests_utils.py,sha256=kPmMoOlaSIWw6Gk7QnAnn8QJvEyqtd2Rz32kS6RGEc8,1800
170
- fiddler_client-2.4.0.dev2.dist-info/LICENSE.txt,sha256=w8-LUAb_VLBWSsCNmih0pAqLIicJfGu8OJXpDjkIg_o,559
171
- fiddler_client-2.4.0.dev2.dist-info/METADATA,sha256=4CL9Vb1fJG06ckKj3FGYR6lykPRho7oevijFFLzIpXI,20071
172
- fiddler_client-2.4.0.dev2.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
173
- fiddler_client-2.4.0.dev2.dist-info/top_level.txt,sha256=d227cAlPARL7zNFhltLEb5Q-04mfc1CJM5-TBDZShlQ,23
174
- fiddler_client-2.4.0.dev2.dist-info/RECORD,,
185
+ fiddler_client-2.5.0.dev2.dist-info/LICENSE.txt,sha256=w8-LUAb_VLBWSsCNmih0pAqLIicJfGu8OJXpDjkIg_o,559
186
+ fiddler_client-2.5.0.dev2.dist-info/METADATA,sha256=r61wxY2YOZT71dCQbXPPa46ZukXfj6WIbt7JzJQxZfE,20558
187
+ fiddler_client-2.5.0.dev2.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
188
+ fiddler_client-2.5.0.dev2.dist-info/top_level.txt,sha256=d227cAlPARL7zNFhltLEb5Q-04mfc1CJM5-TBDZShlQ,23
189
+ fiddler_client-2.5.0.dev2.dist-info/RECORD,,