label-studio-sdk 1.0.20__py3-none-any.whl → 2.0.1__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.

Potentially problematic release.


This version of label-studio-sdk might be problematic. Click here for more details.

Files changed (421) hide show
  1. label_studio_sdk/__init__.py +345 -180
  2. label_studio_sdk/actions/__init__.py +4 -0
  3. label_studio_sdk/actions/client.py +46 -10
  4. label_studio_sdk/actions/types/__init__.py +4 -0
  5. label_studio_sdk/actions/types/actions_create_request_filters.py +2 -2
  6. label_studio_sdk/actions/types/actions_create_request_filters_items_item.py +2 -2
  7. label_studio_sdk/actions/types/actions_create_request_id.py +7 -7
  8. label_studio_sdk/actions/types/actions_create_request_selected_items_excluded.py +2 -2
  9. label_studio_sdk/actions/types/actions_create_request_selected_items_included.py +2 -2
  10. label_studio_sdk/actions/types/actions_list_response_item.py +25 -0
  11. label_studio_sdk/actions/types/actions_list_response_item_dialog.py +22 -0
  12. label_studio_sdk/annotations/__init__.py +2 -2
  13. label_studio_sdk/annotations/client.py +379 -243
  14. label_studio_sdk/annotations/types/__init__.py +4 -2
  15. label_studio_sdk/annotations/types/annotation_bulk_serializer_with_selected_items_request_last_action.py +7 -0
  16. label_studio_sdk/annotations/types/annotations_create_bulk_response_item.py +8 -5
  17. label_studio_sdk/base_client.py +32 -24
  18. label_studio_sdk/billing/__init__.py +2 -0
  19. label_studio_sdk/billing/client.py +112 -0
  20. label_studio_sdk/comments/client.py +378 -140
  21. label_studio_sdk/converter/README.md +207 -0
  22. label_studio_sdk/converter/imports/coco.py +132 -23
  23. label_studio_sdk/core/__init__.py +4 -0
  24. label_studio_sdk/core/unchecked_base_model.py +305 -0
  25. label_studio_sdk/environment.py +1 -1
  26. label_studio_sdk/errors/__init__.py +10 -1
  27. label_studio_sdk/errors/forbidden_error.py +9 -0
  28. label_studio_sdk/errors/method_not_allowed_error.py +9 -0
  29. label_studio_sdk/export_storage/__init__.py +1 -24
  30. label_studio_sdk/export_storage/azure/__init__.py +0 -3
  31. label_studio_sdk/export_storage/azure/client.py +231 -273
  32. label_studio_sdk/export_storage/client.py +5 -5
  33. label_studio_sdk/export_storage/gcs/__init__.py +0 -3
  34. label_studio_sdk/export_storage/gcs/client.py +231 -273
  35. label_studio_sdk/export_storage/local/__init__.py +0 -3
  36. label_studio_sdk/export_storage/local/client.py +211 -253
  37. label_studio_sdk/export_storage/redis/__init__.py +0 -3
  38. label_studio_sdk/export_storage/redis/client.py +239 -281
  39. label_studio_sdk/export_storage/s3/__init__.py +0 -3
  40. label_studio_sdk/export_storage/s3/client.py +254 -296
  41. label_studio_sdk/export_storage/s3s/client.py +694 -210
  42. label_studio_sdk/export_storage/types/export_storage_list_types_response_item.py +2 -2
  43. label_studio_sdk/files/client.py +52 -71
  44. label_studio_sdk/import_storage/__init__.py +1 -24
  45. label_studio_sdk/import_storage/azure/__init__.py +0 -3
  46. label_studio_sdk/import_storage/azure/client.py +249 -299
  47. label_studio_sdk/import_storage/client.py +5 -5
  48. label_studio_sdk/import_storage/gcs/__init__.py +0 -3
  49. label_studio_sdk/import_storage/gcs/client.py +249 -299
  50. label_studio_sdk/import_storage/local/__init__.py +0 -3
  51. label_studio_sdk/import_storage/local/client.py +211 -257
  52. label_studio_sdk/import_storage/redis/__init__.py +0 -3
  53. label_studio_sdk/import_storage/redis/client.py +239 -285
  54. label_studio_sdk/import_storage/s3/__init__.py +0 -3
  55. label_studio_sdk/import_storage/s3/client.py +274 -324
  56. label_studio_sdk/import_storage/s3s/client.py +728 -434
  57. label_studio_sdk/import_storage/types/import_storage_list_types_response_item.py +2 -2
  58. label_studio_sdk/jwt_settings/client.py +56 -58
  59. label_studio_sdk/label_interface/control_tags.py +48 -8
  60. label_studio_sdk/label_interface/interface.py +261 -56
  61. label_studio_sdk/ml/__init__.py +2 -16
  62. label_studio_sdk/ml/client.py +196 -179
  63. label_studio_sdk/ml/types/__init__.py +2 -12
  64. label_studio_sdk/ml/types/ml_list_model_versions_response.py +20 -0
  65. label_studio_sdk/model_providers/__init__.py +3 -0
  66. label_studio_sdk/model_providers/client.py +280 -228
  67. label_studio_sdk/model_providers/types/__init__.py +5 -0
  68. label_studio_sdk/{prompts/types/prompts_batch_predictions_response.py → model_providers/types/model_providers_list_model_provider_choices_response.py} +3 -3
  69. label_studio_sdk/organizations/__init__.py +5 -0
  70. label_studio_sdk/organizations/client.py +331 -0
  71. label_studio_sdk/organizations/members/__init__.py +2 -0
  72. label_studio_sdk/organizations/members/client.py +636 -0
  73. label_studio_sdk/predictions/client.py +29 -77
  74. label_studio_sdk/projects/__init__.py +18 -9
  75. label_studio_sdk/projects/client.py +905 -414
  76. label_studio_sdk/projects/exports/__init__.py +2 -2
  77. label_studio_sdk/projects/exports/client.py +336 -396
  78. label_studio_sdk/projects/exports/client_ext.py +30 -30
  79. label_studio_sdk/projects/exports/types/__init__.py +1 -2
  80. label_studio_sdk/projects/exports/types/exports_convert_response.py +5 -9
  81. label_studio_sdk/projects/pauses/client.py +114 -105
  82. label_studio_sdk/projects/stats/__init__.py +5 -0
  83. label_studio_sdk/projects/stats/client.py +175 -0
  84. label_studio_sdk/projects/stats/types/__init__.py +8 -0
  85. label_studio_sdk/projects/stats/types/stats_iaa_response.py +44 -0
  86. label_studio_sdk/projects/stats/types/stats_iaa_response_common_tasks.py +7 -0
  87. label_studio_sdk/projects/stats/types/stats_iaa_response_iaa.py +5 -0
  88. label_studio_sdk/{types/base_task_file_upload.py → projects/stats/types/stats_iaa_response_std.py} +1 -1
  89. label_studio_sdk/projects/types/__init__.py +10 -6
  90. label_studio_sdk/projects/types/lse_project_create_request_sampling.py +7 -0
  91. label_studio_sdk/projects/types/lse_project_create_request_skip_queue.py +7 -0
  92. label_studio_sdk/projects/types/patched_lse_project_update_request_sampling.py +7 -0
  93. label_studio_sdk/projects/types/patched_lse_project_update_request_skip_queue.py +7 -0
  94. label_studio_sdk/{prompts/types/prompts_batch_failed_predictions_response.py → projects/types/projects_duplicate_response.py} +8 -5
  95. label_studio_sdk/projects/types/projects_import_tasks_response.py +2 -2
  96. label_studio_sdk/projects/types/projects_list_request_filter.py +1 -1
  97. label_studio_sdk/prompts/__init__.py +4 -10
  98. label_studio_sdk/prompts/client.py +511 -442
  99. label_studio_sdk/prompts/indicators/__init__.py +3 -0
  100. label_studio_sdk/prompts/indicators/client.py +47 -49
  101. label_studio_sdk/prompts/indicators/types/__init__.py +5 -0
  102. label_studio_sdk/{types/key_indicator_value.py → prompts/indicators/types/indicators_list_response_item.py} +3 -3
  103. label_studio_sdk/prompts/runs/client.py +113 -135
  104. label_studio_sdk/prompts/types/__init__.py +2 -12
  105. label_studio_sdk/prompts/types/prompts_compatible_projects_request_project_type.py +7 -0
  106. label_studio_sdk/prompts/versions/client.py +372 -312
  107. label_studio_sdk/tasks/__init__.py +2 -2
  108. label_studio_sdk/tasks/client.py +514 -213
  109. label_studio_sdk/tasks/types/__init__.py +1 -2
  110. label_studio_sdk/tokens/client.py +160 -152
  111. label_studio_sdk/tokens/client_ext.py +3 -3
  112. label_studio_sdk/types/__init__.py +276 -142
  113. label_studio_sdk/{webhooks/types/webhooks_update_request_actions_item.py → types/actions_enum.py} +4 -1
  114. label_studio_sdk/types/all_roles_project_list.py +197 -0
  115. label_studio_sdk/types/all_roles_project_list_sampling.py +7 -0
  116. label_studio_sdk/types/all_roles_project_list_skip_queue.py +7 -0
  117. label_studio_sdk/types/annotated_enum.py +5 -0
  118. label_studio_sdk/types/annotation.py +24 -10
  119. label_studio_sdk/types/annotation_last_action.py +3 -15
  120. label_studio_sdk/types/{annotations_dm_field.py → annotation_request.py} +21 -30
  121. label_studio_sdk/types/annotation_request_last_action.py +7 -0
  122. label_studio_sdk/types/assignment_settings.py +31 -0
  123. label_studio_sdk/types/assignment_settings_label_stream_task_distribution.py +7 -0
  124. label_studio_sdk/types/assignment_settings_request.py +32 -0
  125. label_studio_sdk/types/assignment_settings_request_label_stream_task_distribution.py +7 -0
  126. label_studio_sdk/types/associated_project.py +30 -0
  127. label_studio_sdk/types/auth_method_enum.py +5 -0
  128. label_studio_sdk/types/azure_blob_export_storage.py +8 -12
  129. label_studio_sdk/types/azure_blob_import_storage.py +8 -12
  130. label_studio_sdk/types/{prompt_associated_projects_item_id.py → batch_failed_predictions.py} +4 -4
  131. label_studio_sdk/types/{access_token_response.py → batch_predictions.py} +6 -8
  132. label_studio_sdk/types/billing_checks.py +39 -0
  133. label_studio_sdk/types/billing_flags.py +44 -0
  134. label_studio_sdk/types/billing_info_response.py +22 -0
  135. label_studio_sdk/types/blank_enum.py +5 -0
  136. label_studio_sdk/types/{key_indicators_item_extra_kpis_item.py → blueprint_list.py} +12 -6
  137. label_studio_sdk/types/budget_reset_period_enum.py +5 -0
  138. label_studio_sdk/types/child_filter.py +44 -0
  139. label_studio_sdk/types/comment.py +39 -14
  140. label_studio_sdk/types/comment_request.py +32 -0
  141. label_studio_sdk/types/comment_serializer_with_expanded_user.py +53 -0
  142. label_studio_sdk/types/converted_format.py +5 -5
  143. label_studio_sdk/types/{api_token_response.py → converted_format_request.py} +8 -15
  144. label_studio_sdk/types/count_limit.py +22 -0
  145. label_studio_sdk/types/custom_scripts_editable_by_enum.py +5 -0
  146. label_studio_sdk/types/default_role_enum.py +5 -0
  147. label_studio_sdk/types/edition_enum.py +5 -0
  148. label_studio_sdk/types/export.py +7 -7
  149. label_studio_sdk/types/file_upload.py +5 -5
  150. label_studio_sdk/types/filter.py +9 -6
  151. label_studio_sdk/types/filter_group.py +3 -3
  152. label_studio_sdk/types/finished_enum.py +5 -0
  153. label_studio_sdk/types/gcs_export_storage.py +8 -12
  154. label_studio_sdk/types/gcs_import_storage.py +8 -12
  155. label_studio_sdk/types/{rotate_token_response.py → hotkeys.py} +5 -8
  156. label_studio_sdk/types/{base_task.py → import_api_request.py} +11 -34
  157. label_studio_sdk/types/inference_run_cost_estimate.py +2 -2
  158. label_studio_sdk/types/label_stream_task_distribution_enum.py +5 -0
  159. label_studio_sdk/types/{annotations_dm_field_last_action.py → last_action_enum.py} +1 -1
  160. label_studio_sdk/types/local_files_export_storage.py +8 -12
  161. label_studio_sdk/types/local_files_import_storage.py +8 -12
  162. label_studio_sdk/types/{annotation_filter_options.py → lse_annotation_filter_options.py} +12 -2
  163. label_studio_sdk/types/lse_annotation_filter_options_request.py +42 -0
  164. label_studio_sdk/types/lse_annotation_filter_options_request_reviewed.py +7 -0
  165. label_studio_sdk/types/lse_annotation_filter_options_reviewed.py +7 -0
  166. label_studio_sdk/types/{export_snapshot.py → lse_export_create.py} +11 -11
  167. label_studio_sdk/types/lse_fields.py +49 -0
  168. label_studio_sdk/types/lse_fields_onboarding_state.py +8 -0
  169. label_studio_sdk/types/lse_fields_trial_role.py +8 -0
  170. label_studio_sdk/types/lse_key_indicator_value.py +35 -0
  171. label_studio_sdk/types/lse_organization.py +57 -0
  172. label_studio_sdk/types/lse_organization_custom_scripts_editable_by.py +7 -0
  173. label_studio_sdk/types/{key_indicators_item_additional_kpis_item.py → lse_organization_member_list.py} +12 -7
  174. label_studio_sdk/types/lse_project_create.py +196 -0
  175. label_studio_sdk/types/lse_project_create_sampling.py +7 -0
  176. label_studio_sdk/types/lse_project_create_skip_queue.py +7 -0
  177. label_studio_sdk/types/lse_project_update.py +215 -0
  178. label_studio_sdk/types/lse_project_update_sampling.py +7 -0
  179. label_studio_sdk/types/lse_project_update_skip_queue.py +7 -0
  180. label_studio_sdk/types/lse_s3export_storage.py +134 -0
  181. label_studio_sdk/{import_storage/s3/types/s3create_response.py → types/lse_s3export_storage_request.py} +47 -21
  182. label_studio_sdk/{import_storage/s3/types/s3update_response.py → types/lse_s3import_storage.py} +60 -21
  183. label_studio_sdk/types/{s3s_import_storage.py → lse_s3import_storage_request.py} +32 -21
  184. label_studio_sdk/types/lse_task.py +117 -0
  185. label_studio_sdk/types/{data_manager_task_serializer_drafts_item.py → lse_task_drafts_item.py} +2 -2
  186. label_studio_sdk/types/lse_task_filter_options.py +63 -0
  187. label_studio_sdk/types/lse_task_filter_options_annotated.py +7 -0
  188. label_studio_sdk/types/lse_task_filter_options_finished.py +7 -0
  189. label_studio_sdk/types/lse_task_filter_options_request.py +63 -0
  190. label_studio_sdk/types/lse_task_filter_options_request_annotated.py +7 -0
  191. label_studio_sdk/types/lse_task_filter_options_request_finished.py +7 -0
  192. label_studio_sdk/types/lse_task_filter_options_request_reviewed.py +7 -0
  193. label_studio_sdk/types/lse_task_filter_options_request_skipped.py +7 -0
  194. label_studio_sdk/types/lse_task_filter_options_reviewed.py +7 -0
  195. label_studio_sdk/types/lse_task_filter_options_skipped.py +7 -0
  196. label_studio_sdk/types/{data_manager_task_serializer_predictions_item.py → lse_task_predictions_item.py} +4 -5
  197. label_studio_sdk/types/lse_task_serializer_for_annotators.py +54 -0
  198. label_studio_sdk/types/lse_task_serializer_for_annotators_drafts_item.py +22 -0
  199. label_studio_sdk/types/lse_task_serializer_for_annotators_predictions_item.py +28 -0
  200. label_studio_sdk/types/lse_task_serializer_for_reviewers.py +117 -0
  201. label_studio_sdk/types/lse_task_serializer_for_reviewers_drafts_item.py +22 -0
  202. label_studio_sdk/types/lse_task_serializer_for_reviewers_predictions_item.py +28 -0
  203. label_studio_sdk/types/lse_user.py +49 -0
  204. label_studio_sdk/types/{base_user.py → lse_user_api.py} +17 -6
  205. label_studio_sdk/types/lse_user_organization_member_list.py +48 -0
  206. label_studio_sdk/types/lseapi_token_create.py +21 -0
  207. label_studio_sdk/types/lseapi_token_list.py +21 -0
  208. label_studio_sdk/types/lsejwt_settings.py +32 -0
  209. label_studio_sdk/types/maybe_expanded_comment.py +7 -0
  210. label_studio_sdk/types/ml_backend.py +16 -17
  211. label_studio_sdk/types/mode_enum.py +5 -0
  212. label_studio_sdk/types/model_interface.py +44 -0
  213. label_studio_sdk/types/model_interface_request.py +40 -0
  214. label_studio_sdk/types/model_interface_serializer_get.py +45 -0
  215. label_studio_sdk/types/model_provider_connection.py +48 -17
  216. label_studio_sdk/types/model_provider_connection_budget_reset_period.py +3 -1
  217. label_studio_sdk/types/model_provider_connection_request.py +71 -0
  218. label_studio_sdk/types/model_run.py +40 -0
  219. label_studio_sdk/types/{inference_run_status.py → model_run_status_enum.py} +1 -1
  220. label_studio_sdk/types/null_enum.py +3 -0
  221. label_studio_sdk/types/onboarding_state_enum.py +7 -0
  222. label_studio_sdk/types/organization_billing.py +20 -0
  223. label_studio_sdk/types/organization_id.py +28 -0
  224. label_studio_sdk/types/organization_invite.py +20 -0
  225. label_studio_sdk/types/organization_member.py +37 -0
  226. label_studio_sdk/types/organization_membership.py +24 -0
  227. label_studio_sdk/{projects/types/projects_list_response.py → types/paginated_all_roles_project_list_list.py} +5 -5
  228. label_studio_sdk/types/paginated_lse_organization_member_list_list.py +23 -0
  229. label_studio_sdk/types/{jwt_settings_response.py → paginated_role_based_task_list.py} +11 -9
  230. label_studio_sdk/types/pause.py +55 -14
  231. label_studio_sdk/types/pause_request.py +41 -0
  232. label_studio_sdk/types/prediction.py +7 -11
  233. label_studio_sdk/types/prediction_request.py +56 -0
  234. label_studio_sdk/types/project.py +32 -39
  235. label_studio_sdk/types/project_import.py +12 -13
  236. label_studio_sdk/types/project_label_config.py +2 -2
  237. label_studio_sdk/types/project_label_config_request.py +22 -0
  238. label_studio_sdk/types/project_sampling.py +3 -3
  239. label_studio_sdk/types/project_skip_queue.py +3 -1
  240. label_studio_sdk/types/project_subset_enum.py +5 -0
  241. label_studio_sdk/types/prompts_status_enum.py +16 -0
  242. label_studio_sdk/types/{prompt_version_provider.py → provider_enum.py} +1 -1
  243. label_studio_sdk/types/reason_enum.py +7 -0
  244. label_studio_sdk/types/redis_export_storage.py +8 -12
  245. label_studio_sdk/types/redis_import_storage.py +8 -12
  246. label_studio_sdk/types/refined_prompt_response.py +5 -6
  247. label_studio_sdk/types/requeue_rejected_tasks_mode_enum.py +5 -0
  248. label_studio_sdk/types/review_criteria_enum.py +5 -0
  249. label_studio_sdk/types/review_settings.py +80 -0
  250. label_studio_sdk/types/review_settings_request.py +80 -0
  251. label_studio_sdk/types/review_settings_request_requeue_rejected_tasks_mode.py +8 -0
  252. label_studio_sdk/types/review_settings_request_review_criteria.py +7 -0
  253. label_studio_sdk/types/review_settings_requeue_rejected_tasks_mode.py +8 -0
  254. label_studio_sdk/types/review_settings_review_criteria.py +7 -0
  255. label_studio_sdk/types/reviewed_enum.py +5 -0
  256. label_studio_sdk/types/role9e7enum.py +5 -0
  257. label_studio_sdk/types/role_based_task.py +8 -0
  258. label_studio_sdk/types/s3export_storage.py +8 -12
  259. label_studio_sdk/types/s3import_storage.py +8 -12
  260. label_studio_sdk/types/sampling_enum.py +7 -0
  261. label_studio_sdk/types/scope_enum.py +5 -0
  262. label_studio_sdk/types/selected_items_request.py +23 -0
  263. label_studio_sdk/types/serialization_option.py +2 -6
  264. label_studio_sdk/types/serialization_option_request.py +22 -0
  265. label_studio_sdk/types/serialization_options.py +17 -5
  266. label_studio_sdk/types/serialization_options_request.py +47 -0
  267. label_studio_sdk/types/skill_name_enum.py +5 -0
  268. label_studio_sdk/types/skip_queue_enum.py +5 -0
  269. label_studio_sdk/types/skipped_enum.py +5 -0
  270. label_studio_sdk/types/state_enum.py +5 -0
  271. label_studio_sdk/types/status7bf_enum.py +5 -0
  272. label_studio_sdk/types/{azure_blob_import_storage_status.py → status_c5a_enum.py} +2 -2
  273. label_studio_sdk/types/third_party_model_version.py +65 -0
  274. label_studio_sdk/types/third_party_model_version_request.py +54 -0
  275. label_studio_sdk/types/token_refresh_response.py +19 -0
  276. label_studio_sdk/types/token_rotate_response.py +19 -0
  277. label_studio_sdk/types/trial_role_enum.py +16 -0
  278. label_studio_sdk/types/user_simple.py +8 -5
  279. label_studio_sdk/types/user_simple_request.py +28 -0
  280. label_studio_sdk/types/version_response.py +49 -0
  281. label_studio_sdk/types/view.py +8 -15
  282. label_studio_sdk/types/webhook.py +9 -13
  283. label_studio_sdk/types/webhook_serializer_for_update.py +15 -13
  284. label_studio_sdk/types/workspace.py +14 -34
  285. label_studio_sdk/types/workspace_member_create.py +27 -0
  286. label_studio_sdk/types/workspace_member_list.py +24 -0
  287. label_studio_sdk/users/client.py +604 -87
  288. label_studio_sdk/users/types/users_get_token_response.py +4 -11
  289. label_studio_sdk/users/types/users_reset_token_response.py +4 -11
  290. label_studio_sdk/versions/__init__.py +0 -3
  291. label_studio_sdk/versions/client.py +14 -14
  292. label_studio_sdk/views/client.py +227 -141
  293. label_studio_sdk/views/types/views_create_request_data.py +2 -2
  294. label_studio_sdk/views/types/views_create_request_data_filters.py +2 -2
  295. label_studio_sdk/views/types/views_create_request_data_filters_items_item.py +2 -2
  296. label_studio_sdk/views/types/views_update_request_data.py +2 -2
  297. label_studio_sdk/views/types/views_update_request_data_filters.py +2 -2
  298. label_studio_sdk/views/types/views_update_request_data_filters_items_item.py +2 -2
  299. label_studio_sdk/webhooks/__init__.py +36 -2
  300. label_studio_sdk/webhooks/client.py +173 -367
  301. label_studio_sdk/webhooks/types/__init__.py +34 -2
  302. label_studio_sdk/webhooks/types/webhooks_info_response.py +80 -0
  303. label_studio_sdk/webhooks/types/webhooks_info_response_annotation_created.py +24 -0
  304. label_studio_sdk/webhooks/types/webhooks_info_response_annotation_updated.py +24 -0
  305. label_studio_sdk/webhooks/types/webhooks_info_response_annotations_created.py +24 -0
  306. label_studio_sdk/webhooks/types/webhooks_info_response_annotations_deleted.py +24 -0
  307. label_studio_sdk/webhooks/types/webhooks_info_response_label_link_created.py +24 -0
  308. label_studio_sdk/webhooks/types/webhooks_info_response_label_link_deleted.py +24 -0
  309. label_studio_sdk/webhooks/types/webhooks_info_response_label_link_updated.py +24 -0
  310. label_studio_sdk/webhooks/types/webhooks_info_response_project_created.py +24 -0
  311. label_studio_sdk/webhooks/types/webhooks_info_response_project_deleted.py +24 -0
  312. label_studio_sdk/webhooks/types/webhooks_info_response_project_updated.py +24 -0
  313. label_studio_sdk/webhooks/types/webhooks_info_response_review_created.py +24 -0
  314. label_studio_sdk/webhooks/types/webhooks_info_response_review_updated.py +24 -0
  315. label_studio_sdk/webhooks/types/webhooks_info_response_reviews_deleted.py +24 -0
  316. label_studio_sdk/webhooks/types/webhooks_info_response_tasks_created.py +24 -0
  317. label_studio_sdk/webhooks/types/webhooks_info_response_tasks_deleted.py +24 -0
  318. label_studio_sdk/workspaces/__init__.py +1 -2
  319. label_studio_sdk/workspaces/client.py +97 -117
  320. label_studio_sdk/workspaces/members/__init__.py +0 -3
  321. label_studio_sdk/workspaces/members/client.py +65 -81
  322. {label_studio_sdk-1.0.20.dist-info → label_studio_sdk-2.0.1.dist-info}/METADATA +73 -25
  323. label_studio_sdk-2.0.1.dist-info/RECORD +435 -0
  324. {label_studio_sdk-1.0.20.dist-info → label_studio_sdk-2.0.1.dist-info}/WHEEL +1 -1
  325. label_studio_sdk/annotations/types/annotations_create_bulk_request_selected_items.py +0 -34
  326. label_studio_sdk/export_storage/azure/types/__init__.py +0 -6
  327. label_studio_sdk/export_storage/azure/types/azure_create_response.py +0 -57
  328. label_studio_sdk/export_storage/azure/types/azure_update_response.py +0 -57
  329. label_studio_sdk/export_storage/gcs/types/__init__.py +0 -6
  330. label_studio_sdk/export_storage/gcs/types/gcs_create_response.py +0 -57
  331. label_studio_sdk/export_storage/gcs/types/gcs_update_response.py +0 -57
  332. label_studio_sdk/export_storage/local/types/__init__.py +0 -6
  333. label_studio_sdk/export_storage/local/types/local_create_response.py +0 -47
  334. label_studio_sdk/export_storage/local/types/local_update_response.py +0 -47
  335. label_studio_sdk/export_storage/redis/types/__init__.py +0 -6
  336. label_studio_sdk/export_storage/redis/types/redis_create_response.py +0 -62
  337. label_studio_sdk/export_storage/redis/types/redis_update_response.py +0 -62
  338. label_studio_sdk/export_storage/s3/types/__init__.py +0 -6
  339. label_studio_sdk/export_storage/s3/types/s3create_response.py +0 -81
  340. label_studio_sdk/export_storage/s3/types/s3update_response.py +0 -81
  341. label_studio_sdk/import_storage/azure/types/__init__.py +0 -6
  342. label_studio_sdk/import_storage/azure/types/azure_create_response.py +0 -72
  343. label_studio_sdk/import_storage/azure/types/azure_update_response.py +0 -72
  344. label_studio_sdk/import_storage/gcs/types/__init__.py +0 -6
  345. label_studio_sdk/import_storage/gcs/types/gcs_create_response.py +0 -72
  346. label_studio_sdk/import_storage/gcs/types/gcs_update_response.py +0 -72
  347. label_studio_sdk/import_storage/local/types/__init__.py +0 -6
  348. label_studio_sdk/import_storage/local/types/local_create_response.py +0 -47
  349. label_studio_sdk/import_storage/local/types/local_update_response.py +0 -47
  350. label_studio_sdk/import_storage/redis/types/__init__.py +0 -6
  351. label_studio_sdk/import_storage/redis/types/redis_create_response.py +0 -62
  352. label_studio_sdk/import_storage/redis/types/redis_update_response.py +0 -62
  353. label_studio_sdk/import_storage/s3/types/__init__.py +0 -6
  354. label_studio_sdk/ml/types/ml_create_response.py +0 -68
  355. label_studio_sdk/ml/types/ml_create_response_auth_method.py +0 -5
  356. label_studio_sdk/ml/types/ml_update_response.py +0 -68
  357. label_studio_sdk/ml/types/ml_update_response_auth_method.py +0 -5
  358. label_studio_sdk/projects/exports/types/exports_list_formats_response_item.py +0 -44
  359. label_studio_sdk/projects/types/projects_create_response.py +0 -91
  360. label_studio_sdk/projects/types/projects_update_response.py +0 -96
  361. label_studio_sdk/prompts/types/prompts_batch_failed_predictions_request_failed_predictions_item.py +0 -32
  362. label_studio_sdk/prompts/types/prompts_batch_predictions_request_results_item.py +0 -59
  363. label_studio_sdk/tasks/types/tasks_list_response.py +0 -38
  364. label_studio_sdk/types/annotation_completed_by.py +0 -6
  365. label_studio_sdk/types/azure_blob_export_storage_status.py +0 -7
  366. label_studio_sdk/types/base_task_updated_by.py +0 -7
  367. label_studio_sdk/types/comment_created_by.py +0 -5
  368. label_studio_sdk/types/converted_format_status.py +0 -5
  369. label_studio_sdk/types/data_manager_task_serializer.py +0 -118
  370. label_studio_sdk/types/data_manager_task_serializer_annotators_item.py +0 -5
  371. label_studio_sdk/types/data_manager_task_serializer_comment_authors_item.py +0 -5
  372. label_studio_sdk/types/data_manager_task_serializer_predictions_item_model_run.py +0 -5
  373. label_studio_sdk/types/export_format.py +0 -25
  374. label_studio_sdk/types/export_snapshot_status.py +0 -5
  375. label_studio_sdk/types/export_status.py +0 -5
  376. label_studio_sdk/types/gcs_export_storage_status.py +0 -7
  377. label_studio_sdk/types/gcs_import_storage_status.py +0 -7
  378. label_studio_sdk/types/inference_run.py +0 -34
  379. label_studio_sdk/types/inference_run_created_by.py +0 -5
  380. label_studio_sdk/types/inference_run_organization.py +0 -5
  381. label_studio_sdk/types/inference_run_project_subset.py +0 -5
  382. label_studio_sdk/types/key_indicators.py +0 -6
  383. label_studio_sdk/types/key_indicators_item.py +0 -41
  384. label_studio_sdk/types/local_files_export_storage_status.py +0 -7
  385. label_studio_sdk/types/local_files_import_storage_status.py +0 -7
  386. label_studio_sdk/types/ml_backend_auth_method.py +0 -5
  387. label_studio_sdk/types/ml_backend_state.py +0 -5
  388. label_studio_sdk/types/model_provider_connection_created_by.py +0 -5
  389. label_studio_sdk/types/model_provider_connection_organization.py +0 -5
  390. label_studio_sdk/types/model_provider_connection_provider.py +0 -7
  391. label_studio_sdk/types/model_provider_connection_scope.py +0 -5
  392. label_studio_sdk/types/pause_paused_by.py +0 -5
  393. label_studio_sdk/types/project_import_status.py +0 -5
  394. label_studio_sdk/types/prompt.py +0 -71
  395. label_studio_sdk/types/prompt_associated_projects_item.py +0 -6
  396. label_studio_sdk/types/prompt_created_by.py +0 -5
  397. label_studio_sdk/types/prompt_organization.py +0 -5
  398. label_studio_sdk/types/prompt_version.py +0 -32
  399. label_studio_sdk/types/prompt_version_created_by.py +0 -5
  400. label_studio_sdk/types/prompt_version_organization.py +0 -5
  401. label_studio_sdk/types/redis_export_storage_status.py +0 -7
  402. label_studio_sdk/types/redis_import_storage_status.py +0 -7
  403. label_studio_sdk/types/refined_prompt_response_refinement_status.py +0 -7
  404. label_studio_sdk/types/s3export_storage_status.py +0 -7
  405. label_studio_sdk/types/s3import_storage_status.py +0 -7
  406. label_studio_sdk/types/s3s_export_storage.py +0 -73
  407. label_studio_sdk/types/s3s_import_storage_status.py +0 -7
  408. label_studio_sdk/types/task.py +0 -156
  409. label_studio_sdk/types/task_annotators_item.py +0 -5
  410. label_studio_sdk/types/task_comment_authors_item.py +0 -5
  411. label_studio_sdk/types/task_filter_options.py +0 -39
  412. label_studio_sdk/types/webhook_actions_item.py +0 -21
  413. label_studio_sdk/types/webhook_serializer_for_update_actions_item.py +0 -21
  414. label_studio_sdk/versions/types/__init__.py +0 -6
  415. label_studio_sdk/versions/types/versions_get_response.py +0 -73
  416. label_studio_sdk/versions/types/versions_get_response_edition.py +0 -5
  417. label_studio_sdk/workspaces/members/types/__init__.py +0 -6
  418. label_studio_sdk/workspaces/members/types/members_create_response.py +0 -22
  419. label_studio_sdk/workspaces/members/types/members_list_response_item.py +0 -22
  420. label_studio_sdk-1.0.20.dist-info/RECORD +0 -374
  421. {label_studio_sdk-1.0.20.dist-info → label_studio_sdk-2.0.1.dist-info}/LICENSE +0 -0
@@ -0,0 +1,56 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.unchecked_base_model import UncheckedBaseModel
4
+ import typing
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+
8
+
9
+ class PredictionRequest(UncheckedBaseModel):
10
+ result: typing.List[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field()
11
+ """
12
+ List of prediction results for the task
13
+ """
14
+
15
+ model_version: typing.Optional[str] = pydantic.Field(default=None)
16
+ """
17
+ Model version - tag for predictions that can be used to filter tasks in Data Manager, as well as select specific model version for showing preannotations in the labeling interface
18
+ """
19
+
20
+ score: typing.Optional[float] = pydantic.Field(default=None)
21
+ """
22
+ Prediction score
23
+ """
24
+
25
+ cluster: typing.Optional[int] = pydantic.Field(default=None)
26
+ """
27
+ Cluster for the current prediction
28
+ """
29
+
30
+ neighbors: typing.Optional[typing.Optional[typing.Any]] = None
31
+ mislabeling: typing.Optional[float] = pydantic.Field(default=None)
32
+ """
33
+ Related task mislabeling score
34
+ """
35
+
36
+ model: typing.Optional[int] = pydantic.Field(default=None)
37
+ """
38
+ An ML Backend instance that created the prediction.
39
+ """
40
+
41
+ model_run: typing.Optional[int] = pydantic.Field(default=None)
42
+ """
43
+ A run of a ModelVersion that created the prediction.
44
+ """
45
+
46
+ task: int
47
+ project: typing.Optional[int] = None
48
+
49
+ if IS_PYDANTIC_V2:
50
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
51
+ else:
52
+
53
+ class Config:
54
+ frozen = True
55
+ smart_union = True
56
+ extra = pydantic.Extra.allow
@@ -1,9 +1,8 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from ..core.pydantic_utilities import UniversalBaseModel
3
+ from ..core.unchecked_base_model import UncheckedBaseModel
4
4
  import typing
5
5
  import pydantic
6
- from .prompt import Prompt
7
6
  from .user_simple import UserSimple
8
7
  import datetime as dt
9
8
  from .project_sampling import ProjectSampling
@@ -11,8 +10,13 @@ from .project_skip_queue import ProjectSkipQueue
11
10
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
12
11
 
13
12
 
14
- class Project(UniversalBaseModel):
15
- id: typing.Optional[int] = None
13
+ class Project(UncheckedBaseModel):
14
+ """
15
+ Serializer get numbers from project queryset annotation,
16
+ make sure, that you use correct one(Project.objects.with_counts())
17
+ """
18
+
19
+ id: int
16
20
  title: typing.Optional[str] = pydantic.Field(default=None)
17
21
  """
18
22
  Project name. Must be between 3 and 50 characters long.
@@ -54,23 +58,12 @@ class Project(UniversalBaseModel):
54
58
  """
55
59
 
56
60
  organization: typing.Optional[int] = None
57
- prompts: typing.Optional[typing.List[Prompt]] = None
58
61
  color: typing.Optional[str] = None
59
62
  maximum_annotations: typing.Optional[int] = pydantic.Field(default=None)
60
63
  """
61
64
  Maximum number of annotations for one task. If the number of annotations per task is equal or greater to this value, the task is completed (is_labeled=True)
62
65
  """
63
66
 
64
- annotation_limit_count: typing.Optional[int] = pydantic.Field(default=None)
65
- """
66
- Maximum number of tasks that can be annotated by a single annotator in this project pause
67
- """
68
-
69
- annotation_limit_percent: typing.Optional[float] = pydantic.Field(default=None)
70
- """
71
- Maximum percentage of tasks in this project that can be annotated by a single annotator
72
- """
73
-
74
67
  is_published: typing.Optional[bool] = pydantic.Field(default=None)
75
68
  """
76
69
  Whether or not the project is published to annotators
@@ -86,14 +79,18 @@ class Project(UniversalBaseModel):
86
79
  Whether or not the project is in the middle of being created
87
80
  """
88
81
 
89
- created_by: typing.Optional[UserSimple] = None
90
- created_at: typing.Optional[dt.datetime] = None
82
+ created_by: typing.Optional[UserSimple] = pydantic.Field(default=None)
83
+ """
84
+ Project owner
85
+ """
86
+
87
+ created_at: dt.datetime
91
88
  min_annotations_to_start_training: typing.Optional[int] = pydantic.Field(default=None)
92
89
  """
93
90
  Minimum number of completed tasks after which model training is started
94
91
  """
95
92
 
96
- start_training_on_annotation_update: typing.Optional[bool] = pydantic.Field(default=None)
93
+ start_training_on_annotation_update: bool = pydantic.Field()
97
94
  """
98
95
  Start model training after any annotations are submitted or updated
99
96
  """
@@ -103,37 +100,37 @@ class Project(UniversalBaseModel):
103
100
  If set, the annotator can view model predictions
104
101
  """
105
102
 
106
- num_tasks_with_annotations: typing.Optional[int] = pydantic.Field(default=None)
103
+ num_tasks_with_annotations: int = pydantic.Field()
107
104
  """
108
105
  Tasks with annotations count
109
106
  """
110
107
 
111
- task_number: typing.Optional[int] = pydantic.Field(default=None)
108
+ task_number: int = pydantic.Field()
112
109
  """
113
110
  Total task number in project
114
111
  """
115
112
 
116
- useful_annotation_number: typing.Optional[int] = pydantic.Field(default=None)
113
+ useful_annotation_number: int = pydantic.Field()
117
114
  """
118
115
  Useful annotation number in project not including skipped_annotations_number and ground_truth_number. Total annotations = annotation_number + skipped_annotations_number + ground_truth_number
119
116
  """
120
117
 
121
- ground_truth_number: typing.Optional[int] = pydantic.Field(default=None)
118
+ ground_truth_number: int = pydantic.Field()
122
119
  """
123
120
  Honeypot annotation number in project
124
121
  """
125
122
 
126
- skipped_annotations_number: typing.Optional[int] = pydantic.Field(default=None)
123
+ skipped_annotations_number: int = pydantic.Field()
127
124
  """
128
125
  Skipped by collaborators annotation number in project
129
126
  """
130
127
 
131
- total_annotations_number: typing.Optional[int] = pydantic.Field(default=None)
128
+ total_annotations_number: int = pydantic.Field()
132
129
  """
133
130
  Total annotations number in project including skipped_annotations_number and ground_truth_number.
134
131
  """
135
132
 
136
- total_predictions_number: typing.Optional[int] = pydantic.Field(default=None)
133
+ total_predictions_number: int = pydantic.Field()
137
134
  """
138
135
  Total predictions number in project including skipped_annotations_number, ground_truth_number, and useful_annotation_number.
139
136
  """
@@ -152,22 +149,14 @@ class Project(UniversalBaseModel):
152
149
  Task data credentials: password
153
150
  """
154
151
 
155
- control_weights: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
156
- """
157
- Dict of weights for each control tag in metric calculation. Each control tag (e.g. label or choice) will have its own key in control weight dict with weight for each label and overall weight. For example, if a bounding box annotation with a control tag named my_bbox should be included with 0.33 weight in agreement calculation, and the first label Car should be twice as important as Airplane, then you need to specify: {'my_bbox': {'type': 'RectangleLabels', 'labels': {'Car': 1.0, 'Airplane': 0.5}, 'overall': 0.33}}
158
- """
159
-
160
- parsed_label_config: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
161
- """
162
- JSON-formatted labeling configuration
163
- """
164
-
152
+ control_weights: typing.Optional[typing.Optional[typing.Any]] = None
153
+ parsed_label_config: typing.Optional[typing.Any] = None
165
154
  evaluate_predictions_automatically: typing.Optional[bool] = pydantic.Field(default=None)
166
155
  """
167
156
  Retrieve and display predictions when loading a task
168
157
  """
169
158
 
170
- config_has_control_tags: typing.Optional[bool] = pydantic.Field(default=None)
159
+ config_has_control_tags: bool = pydantic.Field()
171
160
  """
172
161
  Flag to detect is project ready for labeling
173
162
  """
@@ -183,13 +172,17 @@ class Project(UniversalBaseModel):
183
172
  Pinned date and time
184
173
  """
185
174
 
186
- finished_task_number: typing.Optional[int] = pydantic.Field(default=None)
175
+ finished_task_number: int = pydantic.Field()
187
176
  """
188
177
  Finished tasks
189
178
  """
190
179
 
191
- queue_total: typing.Optional[int] = None
192
- queue_done: typing.Optional[int] = None
180
+ queue_total: int
181
+ queue_done: int
182
+ config_suitable_for_bulk_annotation: bool = pydantic.Field()
183
+ """
184
+ Flag to detect is project ready for bulk annotation
185
+ """
193
186
 
194
187
  if IS_PYDANTIC_V2:
195
188
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -1,21 +1,21 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from ..core.pydantic_utilities import UniversalBaseModel
3
+ from ..core.unchecked_base_model import UncheckedBaseModel
4
4
  import typing
5
- from .project_import_status import ProjectImportStatus
5
+ from .status7bf_enum import Status7BfEnum
6
6
  import datetime as dt
7
7
  import pydantic
8
8
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
9
9
 
10
10
 
11
- class ProjectImport(UniversalBaseModel):
12
- id: typing.Optional[int] = None
13
- preannotated_from_fields: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
11
+ class ProjectImport(UncheckedBaseModel):
12
+ id: int
13
+ project: typing.Optional[int] = None
14
+ preannotated_from_fields: typing.Optional[typing.Optional[typing.Any]] = None
14
15
  commit_to_project: typing.Optional[bool] = None
15
16
  return_task_ids: typing.Optional[bool] = None
16
- status: typing.Optional[ProjectImportStatus] = None
17
+ status: typing.Optional[Status7BfEnum] = None
17
18
  url: typing.Optional[str] = None
18
- traceback: typing.Optional[str] = None
19
19
  error: typing.Optional[str] = None
20
20
  created_at: typing.Optional[dt.datetime] = pydantic.Field(default=None)
21
21
  """
@@ -36,13 +36,12 @@ class ProjectImport(UniversalBaseModel):
36
36
  annotation_count: typing.Optional[int] = None
37
37
  prediction_count: typing.Optional[int] = None
38
38
  duration: typing.Optional[int] = None
39
- file_upload_ids: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
39
+ file_upload_ids: typing.Optional[typing.Optional[typing.Any]] = None
40
40
  could_be_tasks_list: typing.Optional[bool] = None
41
- found_formats: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
42
- data_columns: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
43
- tasks: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
44
- task_ids: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
45
- project: typing.Optional[int] = None
41
+ found_formats: typing.Optional[typing.Optional[typing.Any]] = None
42
+ data_columns: typing.Optional[typing.Optional[typing.Any]] = None
43
+ tasks: typing.Optional[typing.Optional[typing.Any]] = None
44
+ task_ids: typing.Optional[typing.Optional[typing.Any]] = None
46
45
 
47
46
  if IS_PYDANTIC_V2:
48
47
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -1,12 +1,12 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from ..core.pydantic_utilities import UniversalBaseModel
3
+ from ..core.unchecked_base_model import UncheckedBaseModel
4
4
  import pydantic
5
5
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
6
6
  import typing
7
7
 
8
8
 
9
- class ProjectLabelConfig(UniversalBaseModel):
9
+ class ProjectLabelConfig(UncheckedBaseModel):
10
10
  label_config: str = pydantic.Field()
11
11
  """
12
12
  Label config in XML format. See more about it in documentation
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.unchecked_base_model import UncheckedBaseModel
4
+ import pydantic
5
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
6
+ import typing
7
+
8
+
9
+ class ProjectLabelConfigRequest(UncheckedBaseModel):
10
+ label_config: str = pydantic.Field()
11
+ """
12
+ Label config in XML format. See more about it in documentation
13
+ """
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
17
+ else:
18
+
19
+ class Config:
20
+ frozen = True
21
+ smart_union = True
22
+ extra = pydantic.Extra.allow
@@ -1,7 +1,7 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  import typing
4
+ from .sampling_enum import SamplingEnum
5
+ from .null_enum import NullEnum
4
6
 
5
- ProjectSampling = typing.Union[
6
- typing.Literal["Sequential sampling", "Uniform sampling", "Uncertainty sampling"], typing.Any
7
- ]
7
+ ProjectSampling = typing.Union[SamplingEnum, NullEnum]
@@ -1,5 +1,7 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  import typing
4
+ from .skip_queue_enum import SkipQueueEnum
5
+ from .null_enum import NullEnum
4
6
 
5
- ProjectSkipQueue = typing.Union[typing.Literal["REQUEUE_FOR_ME", "REQUEUE_FOR_OTHERS", "IGNORE_SKIPPED"], typing.Any]
7
+ ProjectSkipQueue = typing.Union[SkipQueueEnum, NullEnum]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ ProjectSubsetEnum = typing.Union[typing.Literal["All", "HasGT", "Sample"], typing.Any]
@@ -0,0 +1,16 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ PromptsStatusEnum = typing.Union[
6
+ typing.Literal[
7
+ "Enabled",
8
+ "Cloud license per organization disabled",
9
+ "On-premise global license disabled",
10
+ "Expired",
11
+ "Adala not connected",
12
+ "Disabled for this organization [FF]",
13
+ "unknown",
14
+ ],
15
+ typing.Any,
16
+ ]
@@ -2,6 +2,6 @@
2
2
 
3
3
  import typing
4
4
 
5
- PromptVersionProvider = typing.Union[
5
+ ProviderEnum = typing.Union[
6
6
  typing.Literal["OpenAI", "AzureOpenAI", "AzureAIFoundry", "VertexAI", "Gemini", "Anthropic", "Custom"], typing.Any
7
7
  ]
@@ -0,0 +1,7 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ ReasonEnum = typing.Union[
6
+ typing.Literal["MANUAL", "BEHAVIOR_BASED", "ANNOTATOR_EVALUATION", "ANNOTATION_LIMIT", "CUSTOM_SCRIPT"], typing.Any
7
+ ]
@@ -1,16 +1,16 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from ..core.pydantic_utilities import UniversalBaseModel
3
+ from ..core.unchecked_base_model import UncheckedBaseModel
4
4
  import typing
5
5
  import pydantic
6
6
  import datetime as dt
7
- from .redis_export_storage_status import RedisExportStorageStatus
7
+ from .status_c5a_enum import StatusC5AEnum
8
8
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
9
9
 
10
10
 
11
- class RedisExportStorage(UniversalBaseModel):
12
- id: typing.Optional[int] = None
13
- type: typing.Optional[str] = None
11
+ class RedisExportStorage(UncheckedBaseModel):
12
+ id: int
13
+ type: str
14
14
  synchronizable: typing.Optional[bool] = None
15
15
  path: typing.Optional[str] = pydantic.Field(default=None)
16
16
  """
@@ -57,17 +57,13 @@ class RedisExportStorage(UniversalBaseModel):
57
57
  Last sync job ID
58
58
  """
59
59
 
60
- status: typing.Optional[RedisExportStorageStatus] = None
60
+ status: typing.Optional[StatusC5AEnum] = None
61
61
  traceback: typing.Optional[str] = pydantic.Field(default=None)
62
62
  """
63
63
  Traceback report for the last failed sync
64
64
  """
65
65
 
66
- meta: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
67
- """
68
- Meta and debug information about storage processes
69
- """
70
-
66
+ meta: typing.Optional[typing.Optional[typing.Any]] = None
71
67
  title: typing.Optional[str] = pydantic.Field(default=None)
72
68
  """
73
69
  Cloud storage title
@@ -78,7 +74,7 @@ class RedisExportStorage(UniversalBaseModel):
78
74
  Cloud storage description
79
75
  """
80
76
 
81
- created_at: typing.Optional[dt.datetime] = pydantic.Field(default=None)
77
+ created_at: dt.datetime = pydantic.Field()
82
78
  """
83
79
  Creation time
84
80
  """
@@ -1,16 +1,16 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from ..core.pydantic_utilities import UniversalBaseModel
3
+ from ..core.unchecked_base_model import UncheckedBaseModel
4
4
  import typing
5
5
  import pydantic
6
6
  import datetime as dt
7
- from .redis_import_storage_status import RedisImportStorageStatus
7
+ from .status_c5a_enum import StatusC5AEnum
8
8
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
9
9
 
10
10
 
11
- class RedisImportStorage(UniversalBaseModel):
12
- id: typing.Optional[int] = None
13
- type: typing.Optional[str] = None
11
+ class RedisImportStorage(UncheckedBaseModel):
12
+ id: int
13
+ type: str
14
14
  synchronizable: typing.Optional[bool] = None
15
15
  path: typing.Optional[str] = pydantic.Field(default=None)
16
16
  """
@@ -57,17 +57,13 @@ class RedisImportStorage(UniversalBaseModel):
57
57
  Last sync job ID
58
58
  """
59
59
 
60
- status: typing.Optional[RedisImportStorageStatus] = None
60
+ status: typing.Optional[StatusC5AEnum] = None
61
61
  traceback: typing.Optional[str] = pydantic.Field(default=None)
62
62
  """
63
63
  Traceback report for the last failed sync
64
64
  """
65
65
 
66
- meta: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
67
- """
68
- Meta and debug information about storage processes
69
- """
70
-
66
+ meta: typing.Optional[typing.Optional[typing.Any]] = None
71
67
  title: typing.Optional[str] = pydantic.Field(default=None)
72
68
  """
73
69
  Cloud storage title
@@ -78,7 +74,7 @@ class RedisImportStorage(UniversalBaseModel):
78
74
  Cloud storage description
79
75
  """
80
76
 
81
- created_at: typing.Optional[dt.datetime] = pydantic.Field(default=None)
77
+ created_at: dt.datetime = pydantic.Field()
82
78
  """
83
79
  Creation time
84
80
  """
@@ -1,14 +1,13 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from ..core.pydantic_utilities import UniversalBaseModel
3
+ from ..core.unchecked_base_model import UncheckedBaseModel
4
4
  import typing
5
5
  import pydantic
6
- from .refined_prompt_response_refinement_status import RefinedPromptResponseRefinementStatus
7
- from .prompt_version import PromptVersion
6
+ from .third_party_model_version import ThirdPartyModelVersion
8
7
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
9
8
 
10
9
 
11
- class RefinedPromptResponse(UniversalBaseModel):
10
+ class RefinedPromptResponse(UncheckedBaseModel):
12
11
  title: typing.Optional[str] = pydantic.Field(default=None)
13
12
  """
14
13
  Title of the refined prompt
@@ -29,7 +28,7 @@ class RefinedPromptResponse(UniversalBaseModel):
29
28
  Unique identifier for the refinement job
30
29
  """
31
30
 
32
- refinement_status: typing.Optional[RefinedPromptResponseRefinementStatus] = pydantic.Field(default=None)
31
+ refinement_status: typing.Optional[str] = pydantic.Field(default=None)
33
32
  """
34
33
  Status of the refinement job
35
34
  """
@@ -39,7 +38,7 @@ class RefinedPromptResponse(UniversalBaseModel):
39
38
  Total cost of the refinement job (in USD)
40
39
  """
41
40
 
42
- previous_version: typing.Optional[PromptVersion] = pydantic.Field(default=None)
41
+ previous_version: typing.Optional[ThirdPartyModelVersion] = pydantic.Field(default=None)
43
42
  """
44
43
  Previous version of the prompt
45
44
  """
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ RequeueRejectedTasksModeEnum = typing.Union[typing.Literal["requeue", "remove", "flexible"], typing.Any]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ ReviewCriteriaEnum = typing.Union[typing.Literal["all", "one"], typing.Any]
@@ -0,0 +1,80 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.unchecked_base_model import UncheckedBaseModel
4
+ import typing
5
+ from .review_settings_review_criteria import ReviewSettingsReviewCriteria
6
+ import pydantic
7
+ from .review_settings_requeue_rejected_tasks_mode import ReviewSettingsRequeueRejectedTasksMode
8
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
9
+
10
+
11
+ class ReviewSettings(UncheckedBaseModel):
12
+ id: int
13
+ requeue_rejected_tasks_to_annotator: bool
14
+ review_criteria: typing.Optional[ReviewSettingsReviewCriteria] = pydantic.Field(default=None)
15
+ """
16
+ Criteria to mark task as reviewed
17
+
18
+ * `all` - Task is reviewed if all annotations are reviewed
19
+ * `one` - Task is reviewed if at least one annotation is reviewed
20
+ """
21
+
22
+ anonymize_annotations: typing.Optional[bool] = pydantic.Field(default=None)
23
+ """
24
+ Hide annotator names from annotations while review
25
+ """
26
+
27
+ only_finished_tasks: typing.Optional[bool] = pydantic.Field(default=None)
28
+ """
29
+ Show only finished tasks in the review stream
30
+ """
31
+
32
+ instruction: typing.Optional[str] = pydantic.Field(default=None)
33
+ """
34
+ Reviewer instructions in HTML format
35
+ """
36
+
37
+ show_instruction: typing.Optional[bool] = pydantic.Field(default=None)
38
+ """
39
+ Show instructions to the reviewers before they start
40
+ """
41
+
42
+ show_data_manager_to_reviewers: typing.Optional[bool] = pydantic.Field(default=None)
43
+ """
44
+ Show the data manager to reviewers
45
+ """
46
+
47
+ show_agreement_to_reviewers: typing.Optional[bool] = pydantic.Field(default=None)
48
+ """
49
+ Show the agreement column to reviewers
50
+ """
51
+
52
+ require_comment_on_reject: typing.Optional[bool] = pydantic.Field(default=None)
53
+ """
54
+ If set, the reviewer must leave a comment on reject
55
+ """
56
+
57
+ requeue_rejected_tasks_mode: typing.Optional[ReviewSettingsRequeueRejectedTasksMode] = pydantic.Field(default=None)
58
+ """
59
+ Requeue mode for rejected tasks
60
+
61
+ * `requeue` - Requeue
62
+ * `remove` - Remove
63
+ * `flexible` - Flexible
64
+ """
65
+
66
+ review_only_manual_assignments: typing.Optional[bool] = pydantic.Field(default=None)
67
+ """
68
+ When set True, review queue is built only from manually assigned tasks
69
+ """
70
+
71
+ project: typing.Optional[int] = None
72
+
73
+ if IS_PYDANTIC_V2:
74
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
75
+ else:
76
+
77
+ class Config:
78
+ frozen = True
79
+ smart_union = True
80
+ extra = pydantic.Extra.allow