rapidata 0.1.13__py3-none-any.whl → 0.1.15__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.
@@ -14,6 +14,7 @@ from rapidata.api_client.models.bounding_box_truth import BoundingBoxTruth
14
14
  from rapidata.api_client.models.classify_payload import ClassifyPayload
15
15
  from rapidata.api_client.models.compare_payload import ComparePayload
16
16
  from rapidata.api_client.models.compare_truth import CompareTruth
17
+ from rapidata.api_client.models.datapoint_metadata_model_metadata_inner import DatapointMetadataModelMetadataInner
17
18
  from rapidata.api_client.models.empty_validation_truth import EmptyValidationTruth
18
19
  from rapidata.api_client.models.free_text_payload import FreeTextPayload
19
20
  from rapidata.api_client.models.line_payload import LinePayload
@@ -27,6 +28,7 @@ from rapidata.api_client.models.polygon_truth import PolygonTruth
27
28
  from rapidata.api_client.models.transcription_payload import TranscriptionPayload
28
29
  from rapidata.api_client.models.transcription_truth import TranscriptionTruth
29
30
  from rapidata.rapidata_client.dataset.validation_rapid_parts import ValidatioRapidParts
31
+ from rapidata.rapidata_client.metadata.base_metadata import Metadata
30
32
  from rapidata.rapidata_client.types import RapidAsset
31
33
  from rapidata.service.openapi_service import OpenAPIService
32
34
 
@@ -61,7 +63,7 @@ class RapidataValidationSet:
61
63
  | PolygonTruth
62
64
  | TranscriptionTruth
63
65
  ),
64
- metadata: Any,
66
+ metadata: list[Metadata],
65
67
  media_paths: RapidAsset,
66
68
  randomCorrectProbability: float,
67
69
  ):
@@ -69,7 +71,7 @@ class RapidataValidationSet:
69
71
  validationSetId=self.id,
70
72
  payload=AddValidationRapidModelPayload(payload),
71
73
  truth=AddValidationRapidModelTruth(truths),
72
- metadata=metadata or [],
74
+ metadata=[DatapointMetadataModelMetadataInner(meta.to_model()) for meta in metadata],
73
75
  randomCorrectProbability=randomCorrectProbability,
74
76
  )
75
77
 
@@ -19,6 +19,7 @@ from rapidata.api_client.models.polygon_payload import PolygonPayload
19
19
  from rapidata.api_client.models.polygon_truth import PolygonTruth
20
20
  from rapidata.api_client.models.transcription_payload import TranscriptionPayload
21
21
  from rapidata.api_client.models.transcription_truth import TranscriptionTruth
22
+ from rapidata.rapidata_client.metadata.base_metadata import Metadata
22
23
  from rapidata.rapidata_client.types import RapidAsset
23
24
 
24
25
 
@@ -48,5 +49,5 @@ class ValidatioRapidParts:
48
49
  | PolygonTruth
49
50
  | TranscriptionTruth
50
51
  )
51
- metadata: Any
52
+ metadata: list[Metadata]
52
53
  randomCorrectProbability: float
@@ -1,13 +1,4 @@
1
- from dataclasses import dataclass
2
1
  import os
3
- from typing import Any, Union
4
- from rapidata.api_client.models.add_validation_rapid_model import AddValidationRapidModel
5
- from rapidata.api_client.models.add_validation_rapid_model_payload import (
6
- AddValidationRapidModelPayload,
7
- )
8
- from rapidata.api_client.models.add_validation_rapid_model_truth import (
9
- AddValidationRapidModelTruth,
10
- )
11
2
  from rapidata.api_client.models.attach_category_truth import AttachCategoryTruth
12
3
  from rapidata.api_client.models.classify_payload import ClassifyPayload
13
4
  from rapidata.api_client.models.compare_payload import ComparePayload
@@ -15,14 +6,14 @@ from rapidata.api_client.models.compare_truth import CompareTruth
15
6
  from rapidata.api_client.models.transcription_payload import TranscriptionPayload
16
7
  from rapidata.api_client.models.transcription_truth import TranscriptionTruth
17
8
  from rapidata.api_client.models.transcription_word import TranscriptionWord
18
- from rapidata.rapidata_client.dataset.rapidata_validation_set import RapidataValidationSet
9
+ from rapidata.rapidata_client.dataset.rapidata_validation_set import (
10
+ RapidataValidationSet,
11
+ )
19
12
  from rapidata.rapidata_client.dataset.validation_rapid_parts import ValidatioRapidParts
13
+ from rapidata.rapidata_client.metadata.base_metadata import Metadata
20
14
  from rapidata.service.openapi_service import OpenAPIService
21
15
 
22
16
 
23
-
24
-
25
-
26
17
  class ValidationSetBuilder:
27
18
 
28
19
  def __init__(self, name: str, openapi_service: OpenAPIService):
@@ -42,7 +33,10 @@ class ValidationSetBuilder:
42
33
  if self.validation_set_id is None:
43
34
  raise ValueError("Failed to create validation set")
44
35
 
45
- validation_set = RapidataValidationSet(validation_set_id=self.validation_set_id, openapi_service=self.openapi_service)
36
+ validation_set = RapidataValidationSet(
37
+ validation_set_id=self.validation_set_id,
38
+ openapi_service=self.openapi_service,
39
+ )
46
40
 
47
41
  for rapid_part in self._rapid_parts:
48
42
  validation_set.add_validation_rapid(
@@ -52,14 +46,19 @@ class ValidationSetBuilder:
52
46
  media_paths=rapid_part.media_paths,
53
47
  randomCorrectProbability=rapid_part.randomCorrectProbability,
54
48
  )
55
-
49
+
56
50
  return validation_set
57
51
 
58
52
  def add_classify_rapid(
59
- self, media_path: str, question: str, categories: list[str], truths: list[str]
53
+ self,
54
+ media_path: str,
55
+ question: str,
56
+ categories: list[str],
57
+ truths: list[str],
58
+ metadata: list[Metadata] = [],
60
59
  ):
61
60
  payload = ClassifyPayload(
62
- _t="ClassifyPaylod", possibleCategories=categories, title=question
61
+ _t="ClassifyPayload", possibleCategories=categories, title=question
63
62
  )
64
63
  model_truth = AttachCategoryTruth(
65
64
  correctCategories=truths, _t="AttachCategoryTruth"
@@ -71,14 +70,20 @@ class ValidationSetBuilder:
71
70
  media_paths=media_path,
72
71
  payload=payload,
73
72
  truths=model_truth,
74
- metadata=None,
73
+ metadata=metadata,
75
74
  randomCorrectProbability=len(truths) / len(categories),
76
75
  )
77
76
  )
78
77
 
79
78
  return self
80
79
 
81
- def add_compare_rapid(self, media_paths: list[str], question: str, truth: str):
80
+ def add_compare_rapid(
81
+ self,
82
+ media_paths: list[str],
83
+ question: str,
84
+ truth: str,
85
+ metadata: list[Metadata] = [],
86
+ ):
82
87
  payload = ComparePayload(_t="ComparePayload", criteria=question)
83
88
  # take only last part of truth path
84
89
  truth = os.path.basename(truth)
@@ -91,7 +96,6 @@ class ValidationSetBuilder:
91
96
  for media_path in media_paths:
92
97
  if not os.path.exists(media_path):
93
98
  raise FileNotFoundError(f"File not found: {media_path}")
94
-
95
99
 
96
100
  self._rapid_parts.append(
97
101
  ValidatioRapidParts(
@@ -99,7 +103,7 @@ class ValidationSetBuilder:
99
103
  media_paths=media_paths,
100
104
  payload=payload,
101
105
  truths=model_truth,
102
- metadata=None,
106
+ metadata=metadata,
103
107
  randomCorrectProbability=1 / len(media_paths),
104
108
  )
105
109
  )
@@ -113,6 +117,7 @@ class ValidationSetBuilder:
113
117
  transcription: list[str],
114
118
  correct_words: list[str],
115
119
  strict_grading: bool | None = None,
120
+ metadata: list[Metadata] = [],
116
121
  ):
117
122
  transcription_words = [
118
123
  TranscriptionWord(word=word, wordIndex=i)
@@ -143,7 +148,7 @@ class ValidationSetBuilder:
143
148
  media_paths=media_path,
144
149
  payload=payload,
145
150
  truths=model_truth,
146
- metadata=None,
151
+ metadata=metadata,
147
152
  randomCorrectProbability=1 / len(transcription),
148
153
  )
149
154
  )
@@ -1,10 +1,5 @@
1
1
  import time
2
- from rapidata.api_client.models.create_order_model_referee import CreateOrderModelReferee
3
- from rapidata.api_client.models.create_order_model_workflow import CreateOrderModelWorkflow
4
2
  from rapidata.rapidata_client.dataset.rapidata_dataset import RapidataDataset
5
- from rapidata.rapidata_client.workflow import Workflow
6
- from rapidata.api_client.models.create_order_model import CreateOrderModel
7
- from rapidata.rapidata_client.referee import Referee
8
3
  from rapidata.service.openapi_service import OpenAPIService
9
4
 
10
5
 
@@ -30,14 +25,6 @@ class RapidataOrder:
30
25
  self.order_id = order_id
31
26
  self._dataset = dataset
32
27
 
33
- def create(self):
34
- """
35
- Creates the order using the provided name and workflow.
36
-
37
- :return: The created RapidataOrder instance.
38
- :rtype: RapidataOrder
39
- """
40
-
41
28
  def submit(self):
42
29
  """
43
30
  Submits the order for processing.
@@ -3,6 +3,9 @@ from rapidata.api_client.models.create_order_model import CreateOrderModel
3
3
  from rapidata.api_client.models.create_order_model_referee import (
4
4
  CreateOrderModelReferee,
5
5
  )
6
+ from rapidata.api_client.models.create_order_model_selections_inner import (
7
+ CreateOrderModelSelectionsInner,
8
+ )
6
9
  from rapidata.api_client.models.create_order_model_user_filters_inner import (
7
10
  CreateOrderModelUserFiltersInner,
8
11
  )
@@ -14,6 +17,8 @@ from rapidata.rapidata_client.feature_flags import FeatureFlags
14
17
  from rapidata.rapidata_client.metadata.base_metadata import Metadata
15
18
  from rapidata.rapidata_client.dataset.rapidata_dataset import RapidataDataset
16
19
  from rapidata.rapidata_client.referee.naive_referee import NaiveReferee
20
+ from rapidata.rapidata_client.selection.base_selection import Selection
21
+ from rapidata.rapidata_client.selection.labeling_selection import LabelingSelection
17
22
  from rapidata.rapidata_client.types import RapidAsset
18
23
  from rapidata.rapidata_client.workflow import Workflow
19
24
  from rapidata.rapidata_client.order.rapidata_order import RapidataOrder
@@ -48,6 +53,7 @@ class RapidataOrderBuilder:
48
53
  self._validation_set_id: str | None = None
49
54
  self._feature_flags: FeatureFlags | None = None
50
55
  self._country_codes: list[str] | None = None
56
+ self._selections: list[Selection] = []
51
57
 
52
58
  def _to_model(self) -> CreateOrderModel:
53
59
  if self._workflow is None:
@@ -78,6 +84,10 @@ class RapidataOrderBuilder:
78
84
  if self._feature_flags is not None
79
85
  else None
80
86
  ),
87
+ selections=[
88
+ CreateOrderModelSelectionsInner(selection.to_model())
89
+ for selection in self._selections
90
+ ],
81
91
  )
82
92
 
83
93
  def create(self, submit=True) -> RapidataOrder:
@@ -186,7 +196,7 @@ class RapidataOrderBuilder:
186
196
  self._aggregator = aggregator
187
197
  return self
188
198
 
189
- def validation_set(self, validation_set_id: str):
199
+ def validation_set_id(self, validation_set_id: str):
190
200
  """
191
201
  Set the validation set for the order.
192
202
 
@@ -197,3 +207,13 @@ class RapidataOrderBuilder:
197
207
  """
198
208
  self._validation_set_id = validation_set_id
199
209
  return self
210
+
211
+ def rapids_per_bag(self, amount: int):
212
+ """
213
+ Defines the number of tasks a user sees in a single session. The default is 3.
214
+
215
+ :param amount: The number of tasks a user sees in a single session.
216
+ :type amount: int
217
+ :return: The updated RapidataOrderBuilder instance.
218
+ """
219
+ self._selections.append(LabelingSelection(amount))
@@ -0,0 +1,9 @@
1
+ from abc import abstractmethod
2
+ from typing import Any
3
+
4
+
5
+ class Selection:
6
+
7
+ @abstractmethod
8
+ def to_model(self) -> Any:
9
+ pass
@@ -0,0 +1,14 @@
1
+ from typing import Any
2
+ from rapidata.rapidata_client.selection.base_selection import Selection
3
+ from rapidata.api_client.models.labeling_selection import (
4
+ LabelingSelection as LabelingSelectionModel,
5
+ )
6
+
7
+
8
+ class LabelingSelection(Selection):
9
+
10
+ def __init__(self, amount: int):
11
+ self.amount = amount
12
+
13
+ def to_model(self) -> Any:
14
+ return LabelingSelectionModel(_t="LabelingSelection", amount=self.amount)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: rapidata
3
- Version: 0.1.13
3
+ Version: 0.1.15
4
4
  Summary: Rapidata package containing the Rapidata Python Client to interact with the Rapidata Web API in an easy way.
5
5
  License: Apache-2.0
6
6
  Author: Rapidata AG
@@ -195,9 +195,9 @@ rapidata/rapidata_client/country_codes/__init__.py,sha256=Y8qeG2IMjvMGvhaPydq0nh
195
195
  rapidata/rapidata_client/country_codes/country_codes.py,sha256=Q0HMX7uHJQDeLCFPP5bq4iYi6pgcDWEcl2ONGhjgoeU,286
196
196
  rapidata/rapidata_client/dataset/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
197
197
  rapidata/rapidata_client/dataset/rapidata_dataset.py,sha256=mVx-YU3N6lvr_0NCg7yGodeBJh8A_Y0tFWRrxcFg9-w,2506
198
- rapidata/rapidata_client/dataset/rapidata_validation_set.py,sha256=nfaENQOJZW5mZBY-4WAt-DFb3o46nN0J-QnHCLvEFPA,3308
199
- rapidata/rapidata_client/dataset/validation_rapid_parts.py,sha256=96kb88XOwXuVI7stwY4Th4K3fo9-lFM-v7QV3qsS3NY,2073
200
- rapidata/rapidata_client/dataset/validation_set_builder.py,sha256=UjKCgtQ23GM4CtiRrl1eQvD-eZFbiYCjdVf1iAVH8EI,5424
198
+ rapidata/rapidata_client/dataset/rapidata_validation_set.py,sha256=WvygSfVAFLd6Ha8uPgqWdS3pys5Kaf454hq0pGSsYao,3564
199
+ rapidata/rapidata_client/dataset/validation_rapid_parts.py,sha256=UmH2yFXrN1uWTUDniMKJ03_mRC-sZBsvR4JhDUbKfJo,2153
200
+ rapidata/rapidata_client/dataset/validation_set_builder.py,sha256=C1mBZUr_ch_8_2mb5EfT44HFM4KaWIRSl1yLsGIsOus,5333
201
201
  rapidata/rapidata_client/feature_flags/__init__.py,sha256=BNG_NQ4CrrC61fAWliImr8r581pIvegrkepVVbxcBw8,55
202
202
  rapidata/rapidata_client/feature_flags/feature_flags.py,sha256=uV4TPXc1oyqBRC9Ch3APprZwxBGnGMAl9DMFBUWmvnA,1048
203
203
  rapidata/rapidata_client/metadata/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -206,13 +206,15 @@ rapidata/rapidata_client/metadata/private_text_metadata.py,sha256=VJ_SJwp8OMFZLu
206
206
  rapidata/rapidata_client/metadata/prompt_metadata.py,sha256=_FypjKWrC3iKUO_G2CVwAGcYbEYClVv4K7upqlnmecw,468
207
207
  rapidata/rapidata_client/metadata/transcription_metadata.py,sha256=THtDEVCON4UlcXHmXrjilaOLHys4TrktUOPGWnXaCcc,631
208
208
  rapidata/rapidata_client/order/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
209
- rapidata/rapidata_client/order/rapidata_order.py,sha256=4a0Sn1y1UmL7HydhaDBOus-g_yILqPQMnTXfLEzQB5g,2997
210
- rapidata/rapidata_client/order/rapidata_order_builder.py,sha256=JqPxaNxpeM4p5i-jghm9t34YLXwuy_a3abtwRh5553Y,6997
209
+ rapidata/rapidata_client/order/rapidata_order.py,sha256=VRDLTPBf2k6UihF0DnWq3nfBLWExfWHzh3T-cJgFF1w,2437
210
+ rapidata/rapidata_client/order/rapidata_order_builder.py,sha256=iFIWwAo_fE887WNgykSHp6-2w8G9MIJZIjH07vGX8kQ,7856
211
211
  rapidata/rapidata_client/rapidata_client.py,sha256=BN3bfLEdNLYt7VZuEwDycNPT61wz66TTssjmNlRYlvU,2019
212
212
  rapidata/rapidata_client/referee/__init__.py,sha256=x0AxGCsR6TlDjfqQ00lB9V7QVS9EZCJzweNEIzx42PI,207
213
213
  rapidata/rapidata_client/referee/base_referee.py,sha256=bMy7cw0a-pGNbFu6u_1_Jplu0A483Ubj4oDQzh8vu8k,493
214
214
  rapidata/rapidata_client/referee/classify_early_stopping_referee.py,sha256=-mPTCck81r2xn1GtMoizaOCftA3cOfj6YDSFbqsI3Ic,1140
215
215
  rapidata/rapidata_client/referee/naive_referee.py,sha256=9CSoZou4YBFc9PiRvA2ELVQqyk-S1nug1SqhTwO9Tvw,719
216
+ rapidata/rapidata_client/selection/base_selection.py,sha256=Y3HkROPm4I4HLNiR0HuHKpvk236KkRlsoDxQATm_chY,138
217
+ rapidata/rapidata_client/selection/labeling_selection.py,sha256=cqDMQEXfQGMmgIvPgGOYgIGaXflV_J7LZsGOsakLXqo,425
216
218
  rapidata/rapidata_client/types/__init__.py,sha256=Q9lzemtloA8e_XVVV1Y7ZZGsNg-xRqgj1GdJPrCzo5A,33
217
219
  rapidata/rapidata_client/workflow/__init__.py,sha256=CDG8bKOBhLV4A0uBlqOd__79fH9KW3-UlZsR1RANLf0,250
218
220
  rapidata/rapidata_client/workflow/base_workflow.py,sha256=335UyiNsIFix7ru_KZLeQHvfNg3GSId44ppPmWTXs_Y,1267
@@ -225,7 +227,7 @@ rapidata/service/local_file_service.py,sha256=pgorvlWcx52Uh3cEG6VrdMK_t__7dacQ_5
225
227
  rapidata/service/openapi_service.py,sha256=xNlISI5NZByLy1Yeasc5Uafj1IA2mWJTzxUU1TtwyQU,1402
226
228
  rapidata/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
227
229
  rapidata/utils/image_utils.py,sha256=TldO3eJWG8IhfJjm5MfNGO0mEDm1mQTsRoA0HLU1Uxs,404
228
- rapidata-0.1.13.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
229
- rapidata-0.1.13.dist-info/METADATA,sha256=rv6P4z8eZGGpSEFC80R3Xk6hInEpuO_au1IgU8GDfqs,768
230
- rapidata-0.1.13.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
231
- rapidata-0.1.13.dist-info/RECORD,,
230
+ rapidata-0.1.15.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
231
+ rapidata-0.1.15.dist-info/METADATA,sha256=y7chOvpw7mH-nVviDU3hZXWmxRC7Oh3kjLr_p5EVRwM,768
232
+ rapidata-0.1.15.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
233
+ rapidata-0.1.15.dist-info/RECORD,,