orca-sdk 0.0.96__py3-none-any.whl → 0.0.98__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 (269) hide show
  1. orca_sdk/__init__.py +2 -5
  2. orca_sdk/_shared/__init__.py +1 -0
  3. orca_sdk/_shared/metrics.py +1 -1
  4. orca_sdk/_utils/analysis_ui.py +5 -5
  5. orca_sdk/_utils/auth.py +23 -33
  6. orca_sdk/_utils/pagination.py +126 -0
  7. orca_sdk/_utils/pagination_test.py +132 -0
  8. orca_sdk/classification_model.py +188 -126
  9. orca_sdk/classification_model_test.py +102 -0
  10. orca_sdk/client.py +3515 -0
  11. orca_sdk/conftest.py +10 -0
  12. orca_sdk/credentials.py +73 -21
  13. orca_sdk/credentials_test.py +20 -0
  14. orca_sdk/datasource.py +186 -81
  15. orca_sdk/datasource_test.py +194 -0
  16. orca_sdk/embedding_model.py +267 -75
  17. orca_sdk/embedding_model_test.py +32 -14
  18. orca_sdk/job.py +59 -54
  19. orca_sdk/job_test.py +50 -0
  20. orca_sdk/memoryset.py +372 -345
  21. orca_sdk/memoryset_test.py +7 -11
  22. orca_sdk/regression_model.py +120 -111
  23. orca_sdk/regression_model_test.py +15 -0
  24. orca_sdk/telemetry.py +229 -115
  25. {orca_sdk-0.0.96.dist-info → orca_sdk-0.0.98.dist-info}/METADATA +19 -5
  26. orca_sdk-0.0.98.dist-info/RECORD +40 -0
  27. orca_sdk/_generated_api_client/__init__.py +0 -3
  28. orca_sdk/_generated_api_client/api/__init__.py +0 -287
  29. orca_sdk/_generated_api_client/api/auth/__init__.py +0 -0
  30. orca_sdk/_generated_api_client/api/auth/check_authentication_auth_get.py +0 -128
  31. orca_sdk/_generated_api_client/api/auth/create_api_key_auth_api_key_post.py +0 -170
  32. orca_sdk/_generated_api_client/api/auth/delete_api_key_auth_api_key_name_or_id_delete.py +0 -156
  33. orca_sdk/_generated_api_client/api/auth/delete_org_auth_org_delete.py +0 -130
  34. orca_sdk/_generated_api_client/api/auth/list_api_keys_auth_api_key_get.py +0 -127
  35. orca_sdk/_generated_api_client/api/classification_model/__init__.py +0 -0
  36. orca_sdk/_generated_api_client/api/classification_model/create_classification_model_gpu_classification_model_post.py +0 -170
  37. orca_sdk/_generated_api_client/api/classification_model/delete_classification_model_classification_model_name_or_id_delete.py +0 -156
  38. orca_sdk/_generated_api_client/api/classification_model/delete_classification_model_evaluation_classification_model_model_name_or_id_evaluation_task_id_delete.py +0 -168
  39. orca_sdk/_generated_api_client/api/classification_model/evaluate_classification_model_classification_model_model_name_or_id_evaluation_post.py +0 -183
  40. orca_sdk/_generated_api_client/api/classification_model/get_classification_model_classification_model_name_or_id_get.py +0 -156
  41. orca_sdk/_generated_api_client/api/classification_model/get_classification_model_evaluation_classification_model_model_name_or_id_evaluation_task_id_get.py +0 -170
  42. orca_sdk/_generated_api_client/api/classification_model/list_classification_model_evaluations_classification_model_model_name_or_id_evaluation_get.py +0 -161
  43. orca_sdk/_generated_api_client/api/classification_model/list_classification_models_classification_model_get.py +0 -127
  44. orca_sdk/_generated_api_client/api/classification_model/predict_label_gpu_classification_model_name_or_id_prediction_post.py +0 -190
  45. orca_sdk/_generated_api_client/api/classification_model/update_classification_model_classification_model_name_or_id_patch.py +0 -183
  46. orca_sdk/_generated_api_client/api/datasource/__init__.py +0 -0
  47. orca_sdk/_generated_api_client/api/datasource/create_datasource_datasource_post.py +0 -167
  48. orca_sdk/_generated_api_client/api/datasource/create_embedding_evaluation_datasource_name_or_id_embedding_evaluation_post.py +0 -183
  49. orca_sdk/_generated_api_client/api/datasource/delete_datasource_datasource_name_or_id_delete.py +0 -156
  50. orca_sdk/_generated_api_client/api/datasource/download_datasource_datasource_name_or_id_download_get.py +0 -172
  51. orca_sdk/_generated_api_client/api/datasource/get_datasource_datasource_name_or_id_get.py +0 -156
  52. orca_sdk/_generated_api_client/api/datasource/get_embedding_evaluation_datasource_name_or_id_embedding_evaluation_task_id_get.py +0 -169
  53. orca_sdk/_generated_api_client/api/datasource/list_datasources_datasource_get.py +0 -127
  54. orca_sdk/_generated_api_client/api/datasource/list_embedding_evaluations_datasource_name_or_id_embedding_evaluation_get.py +0 -235
  55. orca_sdk/_generated_api_client/api/default/__init__.py +0 -0
  56. orca_sdk/_generated_api_client/api/default/healthcheck_get.py +0 -118
  57. orca_sdk/_generated_api_client/api/default/healthcheck_gpu_get.py +0 -118
  58. orca_sdk/_generated_api_client/api/finetuned_embedding_model/__init__.py +0 -0
  59. orca_sdk/_generated_api_client/api/finetuned_embedding_model/create_finetuned_embedding_model_finetuned_embedding_model_post.py +0 -168
  60. orca_sdk/_generated_api_client/api/finetuned_embedding_model/delete_finetuned_embedding_model_finetuned_embedding_model_name_or_id_delete.py +0 -156
  61. orca_sdk/_generated_api_client/api/finetuned_embedding_model/embed_with_finetuned_model_gpu_finetuned_embedding_model_name_or_id_embedding_post.py +0 -189
  62. orca_sdk/_generated_api_client/api/finetuned_embedding_model/get_finetuned_embedding_model_finetuned_embedding_model_name_or_id_get.py +0 -156
  63. orca_sdk/_generated_api_client/api/finetuned_embedding_model/list_finetuned_embedding_models_finetuned_embedding_model_get.py +0 -127
  64. orca_sdk/_generated_api_client/api/memoryset/__init__.py +0 -0
  65. orca_sdk/_generated_api_client/api/memoryset/analyze_memoryset_memoryset_name_or_id_analysis_post.py +0 -183
  66. orca_sdk/_generated_api_client/api/memoryset/batch_delete_memoryset_batch_delete_memoryset_post.py +0 -168
  67. orca_sdk/_generated_api_client/api/memoryset/clone_memoryset_memoryset_name_or_id_clone_post.py +0 -181
  68. orca_sdk/_generated_api_client/api/memoryset/create_memoryset_memoryset_post.py +0 -168
  69. orca_sdk/_generated_api_client/api/memoryset/delete_memories_memoryset_name_or_id_memories_delete_post.py +0 -181
  70. orca_sdk/_generated_api_client/api/memoryset/delete_memory_memoryset_name_or_id_memory_memory_id_delete.py +0 -167
  71. orca_sdk/_generated_api_client/api/memoryset/delete_memoryset_memoryset_name_or_id_delete.py +0 -156
  72. orca_sdk/_generated_api_client/api/memoryset/get_analysis_memoryset_name_or_id_analysis_analysis_task_id_get.py +0 -169
  73. orca_sdk/_generated_api_client/api/memoryset/get_memories_memoryset_name_or_id_memories_get_post.py +0 -210
  74. orca_sdk/_generated_api_client/api/memoryset/get_memory_memoryset_name_or_id_memory_memory_id_get.py +0 -186
  75. orca_sdk/_generated_api_client/api/memoryset/get_memoryset_memoryset_name_or_id_get.py +0 -156
  76. orca_sdk/_generated_api_client/api/memoryset/insert_memories_gpu_memoryset_name_or_id_memory_post.py +0 -188
  77. orca_sdk/_generated_api_client/api/memoryset/list_analyses_memoryset_name_or_id_analysis_get.py +0 -235
  78. orca_sdk/_generated_api_client/api/memoryset/list_memorysets_memoryset_get.py +0 -180
  79. orca_sdk/_generated_api_client/api/memoryset/memoryset_lookup_gpu_memoryset_name_or_id_lookup_post.py +0 -212
  80. orca_sdk/_generated_api_client/api/memoryset/potential_duplicate_groups_memoryset_name_or_id_potential_duplicate_groups_get.py +0 -195
  81. orca_sdk/_generated_api_client/api/memoryset/query_memoryset_memoryset_name_or_id_memories_post.py +0 -210
  82. orca_sdk/_generated_api_client/api/memoryset/suggest_cascading_edits_memoryset_name_or_id_memory_memory_id_cascading_edits_post.py +0 -233
  83. orca_sdk/_generated_api_client/api/memoryset/update_memories_gpu_memoryset_name_or_id_memories_patch.py +0 -216
  84. orca_sdk/_generated_api_client/api/memoryset/update_memory_gpu_memoryset_name_or_id_memory_patch.py +0 -205
  85. orca_sdk/_generated_api_client/api/memoryset/update_memoryset_memoryset_name_or_id_patch.py +0 -183
  86. orca_sdk/_generated_api_client/api/predictive_model/__init__.py +0 -0
  87. orca_sdk/_generated_api_client/api/predictive_model/list_predictive_models_predictive_model_get.py +0 -150
  88. orca_sdk/_generated_api_client/api/pretrained_embedding_model/__init__.py +0 -0
  89. orca_sdk/_generated_api_client/api/pretrained_embedding_model/embed_with_pretrained_model_gpu_pretrained_embedding_model_model_name_embedding_post.py +0 -192
  90. orca_sdk/_generated_api_client/api/pretrained_embedding_model/get_pretrained_embedding_model_pretrained_embedding_model_model_name_get.py +0 -161
  91. orca_sdk/_generated_api_client/api/pretrained_embedding_model/list_pretrained_embedding_models_pretrained_embedding_model_get.py +0 -127
  92. orca_sdk/_generated_api_client/api/regression_model/__init__.py +0 -0
  93. orca_sdk/_generated_api_client/api/regression_model/create_regression_model_gpu_regression_model_post.py +0 -170
  94. orca_sdk/_generated_api_client/api/regression_model/delete_regression_model_evaluation_regression_model_model_name_or_id_evaluation_task_id_delete.py +0 -168
  95. orca_sdk/_generated_api_client/api/regression_model/delete_regression_model_regression_model_name_or_id_delete.py +0 -154
  96. orca_sdk/_generated_api_client/api/regression_model/evaluate_regression_model_regression_model_model_name_or_id_evaluation_post.py +0 -183
  97. orca_sdk/_generated_api_client/api/regression_model/get_regression_model_evaluation_regression_model_model_name_or_id_evaluation_task_id_get.py +0 -170
  98. orca_sdk/_generated_api_client/api/regression_model/get_regression_model_regression_model_name_or_id_get.py +0 -156
  99. orca_sdk/_generated_api_client/api/regression_model/list_regression_model_evaluations_regression_model_model_name_or_id_evaluation_get.py +0 -161
  100. orca_sdk/_generated_api_client/api/regression_model/list_regression_models_regression_model_get.py +0 -127
  101. orca_sdk/_generated_api_client/api/regression_model/predict_score_gpu_regression_model_name_or_id_prediction_post.py +0 -190
  102. orca_sdk/_generated_api_client/api/regression_model/update_regression_model_regression_model_name_or_id_patch.py +0 -183
  103. orca_sdk/_generated_api_client/api/task/__init__.py +0 -0
  104. orca_sdk/_generated_api_client/api/task/abort_task_task_task_id_abort_delete.py +0 -154
  105. orca_sdk/_generated_api_client/api/task/get_task_status_task_task_id_status_get.py +0 -156
  106. orca_sdk/_generated_api_client/api/task/get_task_task_task_id_get.py +0 -156
  107. orca_sdk/_generated_api_client/api/task/list_tasks_task_get.py +0 -293
  108. orca_sdk/_generated_api_client/api/telemetry/__init__.py +0 -0
  109. orca_sdk/_generated_api_client/api/telemetry/count_predictions_telemetry_prediction_count_post.py +0 -168
  110. orca_sdk/_generated_api_client/api/telemetry/drop_feedback_category_with_data_telemetry_feedback_category_name_or_id_delete.py +0 -162
  111. orca_sdk/_generated_api_client/api/telemetry/explain_prediction_telemetry_prediction_prediction_id_explanation_get.py +0 -182
  112. orca_sdk/_generated_api_client/api/telemetry/get_feedback_category_telemetry_feedback_category_name_or_id_get.py +0 -156
  113. orca_sdk/_generated_api_client/api/telemetry/get_prediction_telemetry_prediction_prediction_id_get.py +0 -180
  114. orca_sdk/_generated_api_client/api/telemetry/list_feedback_categories_telemetry_feedback_category_get.py +0 -127
  115. orca_sdk/_generated_api_client/api/telemetry/list_memories_with_feedback_telemetry_memories_post.py +0 -198
  116. orca_sdk/_generated_api_client/api/telemetry/list_predictions_telemetry_prediction_post.py +0 -198
  117. orca_sdk/_generated_api_client/api/telemetry/record_prediction_feedback_telemetry_prediction_feedback_put.py +0 -171
  118. orca_sdk/_generated_api_client/api/telemetry/update_prediction_telemetry_prediction_prediction_id_patch.py +0 -181
  119. orca_sdk/_generated_api_client/client.py +0 -216
  120. orca_sdk/_generated_api_client/errors.py +0 -38
  121. orca_sdk/_generated_api_client/models/__init__.py +0 -295
  122. orca_sdk/_generated_api_client/models/analyze_neighbor_labels_result.py +0 -116
  123. orca_sdk/_generated_api_client/models/api_key_metadata.py +0 -137
  124. orca_sdk/_generated_api_client/models/api_key_metadata_scope_item.py +0 -9
  125. orca_sdk/_generated_api_client/models/base_label_prediction_result.py +0 -130
  126. orca_sdk/_generated_api_client/models/base_model.py +0 -55
  127. orca_sdk/_generated_api_client/models/base_score_prediction_result.py +0 -108
  128. orca_sdk/_generated_api_client/models/body_create_datasource_datasource_post.py +0 -207
  129. orca_sdk/_generated_api_client/models/cascade_edit_suggestions_request.py +0 -154
  130. orca_sdk/_generated_api_client/models/cascading_edit_suggestion.py +0 -92
  131. orca_sdk/_generated_api_client/models/classification_evaluation_request.py +0 -148
  132. orca_sdk/_generated_api_client/models/classification_metrics.py +0 -259
  133. orca_sdk/_generated_api_client/models/classification_model_metadata.py +0 -213
  134. orca_sdk/_generated_api_client/models/classification_prediction_request.py +0 -220
  135. orca_sdk/_generated_api_client/models/clone_memoryset_request.py +0 -170
  136. orca_sdk/_generated_api_client/models/cluster_metrics.py +0 -78
  137. orca_sdk/_generated_api_client/models/column_info.py +0 -145
  138. orca_sdk/_generated_api_client/models/column_type.py +0 -14
  139. orca_sdk/_generated_api_client/models/constraint_violation_error_response.py +0 -80
  140. orca_sdk/_generated_api_client/models/count_predictions_request.py +0 -195
  141. orca_sdk/_generated_api_client/models/create_api_key_request.py +0 -120
  142. orca_sdk/_generated_api_client/models/create_api_key_request_scope_item.py +0 -9
  143. orca_sdk/_generated_api_client/models/create_api_key_response.py +0 -145
  144. orca_sdk/_generated_api_client/models/create_api_key_response_scope_item.py +0 -9
  145. orca_sdk/_generated_api_client/models/create_classification_model_request.py +0 -197
  146. orca_sdk/_generated_api_client/models/create_memoryset_request.py +0 -325
  147. orca_sdk/_generated_api_client/models/create_memoryset_request_index_params.py +0 -66
  148. orca_sdk/_generated_api_client/models/create_memoryset_request_index_type.py +0 -13
  149. orca_sdk/_generated_api_client/models/create_regression_model_request.py +0 -137
  150. orca_sdk/_generated_api_client/models/datasource_metadata.py +0 -156
  151. orca_sdk/_generated_api_client/models/delete_memories_request.py +0 -70
  152. orca_sdk/_generated_api_client/models/delete_memorysets_request.py +0 -70
  153. orca_sdk/_generated_api_client/models/embed_request.py +0 -135
  154. orca_sdk/_generated_api_client/models/embedding_evaluation_payload.py +0 -187
  155. orca_sdk/_generated_api_client/models/embedding_evaluation_request.py +0 -179
  156. orca_sdk/_generated_api_client/models/embedding_evaluation_response.py +0 -158
  157. orca_sdk/_generated_api_client/models/embedding_evaluation_result.py +0 -86
  158. orca_sdk/_generated_api_client/models/embedding_finetuning_method.py +0 -9
  159. orca_sdk/_generated_api_client/models/embedding_model_result.py +0 -114
  160. orca_sdk/_generated_api_client/models/evaluation_response.py +0 -153
  161. orca_sdk/_generated_api_client/models/evaluation_response_classification_metrics.py +0 -140
  162. orca_sdk/_generated_api_client/models/evaluation_response_regression_metrics.py +0 -140
  163. orca_sdk/_generated_api_client/models/feedback_metrics.py +0 -85
  164. orca_sdk/_generated_api_client/models/feedback_type.py +0 -9
  165. orca_sdk/_generated_api_client/models/filter_item.py +0 -231
  166. orca_sdk/_generated_api_client/models/filter_item_field_type_0_item.py +0 -17
  167. orca_sdk/_generated_api_client/models/filter_item_field_type_2_item_type_1.py +0 -20
  168. orca_sdk/_generated_api_client/models/filter_item_op.py +0 -16
  169. orca_sdk/_generated_api_client/models/finetune_embedding_model_request.py +0 -259
  170. orca_sdk/_generated_api_client/models/finetune_embedding_model_request_training_args.py +0 -66
  171. orca_sdk/_generated_api_client/models/finetuned_embedding_model_metadata.py +0 -166
  172. orca_sdk/_generated_api_client/models/get_memories_request.py +0 -70
  173. orca_sdk/_generated_api_client/models/http_validation_error.py +0 -86
  174. orca_sdk/_generated_api_client/models/internal_server_error_response.py +0 -80
  175. orca_sdk/_generated_api_client/models/label_class_metrics.py +0 -108
  176. orca_sdk/_generated_api_client/models/label_prediction_memory_lookup.py +0 -210
  177. orca_sdk/_generated_api_client/models/label_prediction_memory_lookup_metadata.py +0 -68
  178. orca_sdk/_generated_api_client/models/label_prediction_with_memories_and_feedback.py +0 -288
  179. orca_sdk/_generated_api_client/models/labeled_memory.py +0 -186
  180. orca_sdk/_generated_api_client/models/labeled_memory_insert.py +0 -128
  181. orca_sdk/_generated_api_client/models/labeled_memory_insert_metadata.py +0 -68
  182. orca_sdk/_generated_api_client/models/labeled_memory_lookup.py +0 -194
  183. orca_sdk/_generated_api_client/models/labeled_memory_lookup_metadata.py +0 -68
  184. orca_sdk/_generated_api_client/models/labeled_memory_metadata.py +0 -68
  185. orca_sdk/_generated_api_client/models/labeled_memory_metrics.py +0 -246
  186. orca_sdk/_generated_api_client/models/labeled_memory_update.py +0 -171
  187. orca_sdk/_generated_api_client/models/labeled_memory_update_metadata_type_0.py +0 -68
  188. orca_sdk/_generated_api_client/models/labeled_memory_with_feedback_metrics.py +0 -207
  189. orca_sdk/_generated_api_client/models/labeled_memory_with_feedback_metrics_feedback_metrics.py +0 -68
  190. orca_sdk/_generated_api_client/models/labeled_memory_with_feedback_metrics_metadata.py +0 -68
  191. orca_sdk/_generated_api_client/models/list_memories_request.py +0 -104
  192. orca_sdk/_generated_api_client/models/list_predictions_request.py +0 -319
  193. orca_sdk/_generated_api_client/models/lookup_request.py +0 -81
  194. orca_sdk/_generated_api_client/models/lookup_score_metrics.py +0 -94
  195. orca_sdk/_generated_api_client/models/memory_metrics.py +0 -165
  196. orca_sdk/_generated_api_client/models/memory_type.py +0 -9
  197. orca_sdk/_generated_api_client/models/memoryset_analysis_configs.py +0 -212
  198. orca_sdk/_generated_api_client/models/memoryset_analysis_request.py +0 -105
  199. orca_sdk/_generated_api_client/models/memoryset_analysis_response.py +0 -182
  200. orca_sdk/_generated_api_client/models/memoryset_cluster_analysis_config.py +0 -202
  201. orca_sdk/_generated_api_client/models/memoryset_cluster_analysis_config_clustering_method.py +0 -9
  202. orca_sdk/_generated_api_client/models/memoryset_cluster_analysis_config_partitioning_method.py +0 -10
  203. orca_sdk/_generated_api_client/models/memoryset_cluster_metrics.py +0 -100
  204. orca_sdk/_generated_api_client/models/memoryset_duplicate_analysis_config.py +0 -70
  205. orca_sdk/_generated_api_client/models/memoryset_duplicate_metrics.py +0 -70
  206. orca_sdk/_generated_api_client/models/memoryset_label_analysis_config.py +0 -70
  207. orca_sdk/_generated_api_client/models/memoryset_label_metrics.py +0 -116
  208. orca_sdk/_generated_api_client/models/memoryset_metadata.py +0 -291
  209. orca_sdk/_generated_api_client/models/memoryset_metadata_index_params.py +0 -55
  210. orca_sdk/_generated_api_client/models/memoryset_metadata_index_type.py +0 -13
  211. orca_sdk/_generated_api_client/models/memoryset_metrics.py +0 -232
  212. orca_sdk/_generated_api_client/models/memoryset_neighbor_analysis_config.py +0 -83
  213. orca_sdk/_generated_api_client/models/memoryset_neighbor_metrics.py +0 -76
  214. orca_sdk/_generated_api_client/models/memoryset_neighbor_metrics_lookup_score_metrics.py +0 -68
  215. orca_sdk/_generated_api_client/models/memoryset_projection_analysis_config.py +0 -79
  216. orca_sdk/_generated_api_client/models/memoryset_projection_metrics.py +0 -55
  217. orca_sdk/_generated_api_client/models/memoryset_update.py +0 -101
  218. orca_sdk/_generated_api_client/models/not_found_error_response.py +0 -100
  219. orca_sdk/_generated_api_client/models/not_found_error_response_resource_type_0.py +0 -22
  220. orca_sdk/_generated_api_client/models/paginated_union_labeled_memory_with_feedback_metrics_scored_memory_with_feedback_metrics.py +0 -135
  221. orca_sdk/_generated_api_client/models/pr_curve.py +0 -86
  222. orca_sdk/_generated_api_client/models/prediction_feedback.py +0 -157
  223. orca_sdk/_generated_api_client/models/prediction_feedback_category.py +0 -115
  224. orca_sdk/_generated_api_client/models/prediction_feedback_request.py +0 -122
  225. orca_sdk/_generated_api_client/models/prediction_feedback_result.py +0 -102
  226. orca_sdk/_generated_api_client/models/prediction_sort_item_item_type_0.py +0 -10
  227. orca_sdk/_generated_api_client/models/prediction_sort_item_item_type_1.py +0 -9
  228. orca_sdk/_generated_api_client/models/predictive_model_update.py +0 -91
  229. orca_sdk/_generated_api_client/models/pretrained_embedding_model_metadata.py +0 -107
  230. orca_sdk/_generated_api_client/models/pretrained_embedding_model_name.py +0 -17
  231. orca_sdk/_generated_api_client/models/rac_head_type.py +0 -11
  232. orca_sdk/_generated_api_client/models/rar_head_type.py +0 -8
  233. orca_sdk/_generated_api_client/models/regression_evaluation_request.py +0 -148
  234. orca_sdk/_generated_api_client/models/regression_metrics.py +0 -172
  235. orca_sdk/_generated_api_client/models/regression_model_metadata.py +0 -177
  236. orca_sdk/_generated_api_client/models/regression_prediction_request.py +0 -195
  237. orca_sdk/_generated_api_client/models/roc_curve.py +0 -86
  238. orca_sdk/_generated_api_client/models/score_prediction_memory_lookup.py +0 -196
  239. orca_sdk/_generated_api_client/models/score_prediction_memory_lookup_metadata.py +0 -68
  240. orca_sdk/_generated_api_client/models/score_prediction_with_memories_and_feedback.py +0 -252
  241. orca_sdk/_generated_api_client/models/scored_memory.py +0 -172
  242. orca_sdk/_generated_api_client/models/scored_memory_insert.py +0 -128
  243. orca_sdk/_generated_api_client/models/scored_memory_insert_metadata.py +0 -68
  244. orca_sdk/_generated_api_client/models/scored_memory_lookup.py +0 -180
  245. orca_sdk/_generated_api_client/models/scored_memory_lookup_metadata.py +0 -68
  246. orca_sdk/_generated_api_client/models/scored_memory_metadata.py +0 -68
  247. orca_sdk/_generated_api_client/models/scored_memory_update.py +0 -171
  248. orca_sdk/_generated_api_client/models/scored_memory_update_metadata_type_0.py +0 -68
  249. orca_sdk/_generated_api_client/models/scored_memory_with_feedback_metrics.py +0 -193
  250. orca_sdk/_generated_api_client/models/scored_memory_with_feedback_metrics_feedback_metrics.py +0 -68
  251. orca_sdk/_generated_api_client/models/scored_memory_with_feedback_metrics_metadata.py +0 -68
  252. orca_sdk/_generated_api_client/models/service_unavailable_error_response.py +0 -80
  253. orca_sdk/_generated_api_client/models/task.py +0 -198
  254. orca_sdk/_generated_api_client/models/task_status.py +0 -14
  255. orca_sdk/_generated_api_client/models/task_status_info.py +0 -133
  256. orca_sdk/_generated_api_client/models/telemetry_field_type_0_item_type_2.py +0 -9
  257. orca_sdk/_generated_api_client/models/telemetry_filter_item.py +0 -205
  258. orca_sdk/_generated_api_client/models/telemetry_filter_item_op.py +0 -15
  259. orca_sdk/_generated_api_client/models/telemetry_memories_request.py +0 -181
  260. orca_sdk/_generated_api_client/models/telemetry_sort_options.py +0 -173
  261. orca_sdk/_generated_api_client/models/telemetry_sort_options_direction.py +0 -9
  262. orca_sdk/_generated_api_client/models/unauthenticated_error_response.py +0 -72
  263. orca_sdk/_generated_api_client/models/unauthorized_error_response.py +0 -80
  264. orca_sdk/_generated_api_client/models/update_prediction_request.py +0 -133
  265. orca_sdk/_generated_api_client/models/validation_error.py +0 -99
  266. orca_sdk/_generated_api_client/py.typed +0 -1
  267. orca_sdk/_generated_api_client/types.py +0 -56
  268. orca_sdk-0.0.96.dist-info/RECORD +0 -278
  269. {orca_sdk-0.0.96.dist-info → orca_sdk-0.0.98.dist-info}/WHEEL +0 -0
orca_sdk/job.py CHANGED
@@ -7,8 +7,7 @@ from typing import Callable, Generic, TypedDict, TypeVar, cast
7
7
 
8
8
  from tqdm.auto import tqdm
9
9
 
10
- from ._generated_api_client.api import abort_task, get_task, get_task_status, list_tasks
11
- from ._generated_api_client.models import TaskStatus
10
+ from .client import TaskStatus, orca_api
12
11
 
13
12
 
14
13
  class JobConfig(TypedDict):
@@ -21,6 +20,8 @@ class Status(Enum):
21
20
  """Status of a cloud job in the task queue"""
22
21
 
23
22
  # the INITIALIZED state should never be returned by the API
23
+ INITIALIZED = "INITIALIZED"
24
+ """The job has been initialized"""
24
25
 
25
26
  DISPATCHED = "DISPATCHED"
26
27
  """The job has been queued and is waiting to be processed"""
@@ -117,7 +118,7 @@ class Job(Generic[TResult]):
117
118
  cls,
118
119
  status: Status | list[Status] | None = None,
119
120
  type: str | list[str] | None = None,
120
- limit: int | None = None,
121
+ limit: int = 100,
121
122
  offset: int = 0,
122
123
  start: datetime | None = None,
123
124
  end: datetime | None = None,
@@ -136,17 +137,20 @@ class Job(Generic[TResult]):
136
137
  Returns:
137
138
  List of jobs matching the given filters
138
139
  """
139
- tasks = list_tasks(
140
- status=(
141
- [TaskStatus(s.value) for s in status]
142
- if isinstance(status, list)
143
- else TaskStatus(status.value) if isinstance(status, Status) else None
144
- ),
145
- type=type,
146
- limit=limit,
147
- offset=offset,
148
- start_timestamp=start,
149
- end_timestamp=end,
140
+ paginated_tasks = orca_api.GET(
141
+ "/task",
142
+ params={
143
+ "status": (
144
+ [s.value for s in status]
145
+ if isinstance(status, list)
146
+ else status.value if isinstance(status, Status) else None
147
+ ),
148
+ "type": type,
149
+ "limit": limit,
150
+ "offset": offset,
151
+ "start_timestamp": start.isoformat() if start is not None else None,
152
+ "end_timestamp": end.isoformat() if end is not None else None,
153
+ },
150
154
  )
151
155
 
152
156
  # can't use constructor because it makes an API call, so we construct the objects manually
@@ -154,20 +158,20 @@ class Job(Generic[TResult]):
154
158
  (
155
159
  lambda t: (
156
160
  obj := cls.__new__(cls),
157
- setattr(obj, "id", t.id),
158
- setattr(obj, "type", t.type),
159
- setattr(obj, "status", Status(t.status.value)),
160
- setattr(obj, "steps_total", t.steps_total),
161
- setattr(obj, "steps_completed", t.steps_completed),
162
- setattr(obj, "exception", t.exception),
163
- setattr(obj, "value", cast(TResult, t.result.to_dict()) if t.result is not None else None),
164
- setattr(obj, "updated_at", t.updated_at),
165
- setattr(obj, "created_at", t.created_at),
161
+ setattr(obj, "id", t["id"]),
162
+ setattr(obj, "type", t["type"]),
163
+ setattr(obj, "status", Status(t["status"])),
164
+ setattr(obj, "steps_total", t["steps_total"]),
165
+ setattr(obj, "steps_completed", t["steps_completed"]),
166
+ setattr(obj, "exception", t["exception"]),
167
+ setattr(obj, "value", cast(TResult, t["result"]) if t["result"] is not None else None),
168
+ setattr(obj, "updated_at", datetime.fromisoformat(t["updated_at"])),
169
+ setattr(obj, "created_at", datetime.fromisoformat(t["created_at"])),
166
170
  setattr(obj, "refreshed_at", datetime.now()),
167
171
  obj,
168
172
  )[-1]
169
173
  )(t)
170
- for t in tasks
174
+ for t in paginated_tasks["items"]
171
175
  ]
172
176
 
173
177
  def __init__(self, id: str, get_value: Callable[[], TResult | None] | None = None):
@@ -179,27 +183,27 @@ class Job(Generic[TResult]):
179
183
  get_value: Optional function to customize how the value is resolved, if not provided the result will be a dict
180
184
  """
181
185
  self.id = id
182
- task = get_task(self.id)
186
+ task = orca_api.GET("/task/{task_id}", params={"task_id": id})
183
187
 
184
188
  self._get_value = get_value or (
185
- lambda: (r := get_task(id).result) and (cast(TResult, r.to_dict()) if r else None)
189
+ lambda: cast(TResult | None, orca_api.GET("/task/{task_id}", params={"task_id": id})["result"])
186
190
  )
187
- self.type = task.type
188
- self.status = Status(task.status.value)
189
- self.steps_total = task.steps_total
190
- self.steps_completed = task.steps_completed
191
- self.exception = task.exception
191
+ self.type = task["type"]
192
+ self.status = Status(task["status"])
193
+ self.steps_total = task["steps_total"]
194
+ self.steps_completed = task["steps_completed"]
195
+ self.exception = task["exception"]
192
196
  self.value = (
193
197
  None
194
- if task.status != TaskStatus.COMPLETED
198
+ if task["status"] != "COMPLETED"
195
199
  else (
196
200
  get_value()
197
201
  if get_value is not None
198
- else cast(TResult, task.result.to_dict()) if task.result is not None else None
202
+ else cast(TResult, task["result"]) if task["result"] is not None else None
199
203
  )
200
204
  )
201
- self.updated_at = task.updated_at
202
- self.created_at = task.created_at
205
+ self.updated_at = datetime.fromisoformat(task["updated_at"])
206
+ self.created_at = datetime.fromisoformat(task["created_at"])
203
207
  self.refreshed_at = datetime.now()
204
208
 
205
209
  def refresh(self, throttle: float = 0):
@@ -215,17 +219,17 @@ class Job(Generic[TResult]):
215
219
  return
216
220
  self.refreshed_at = current_time
217
221
 
218
- status_info = get_task_status(self.id)
219
- self.status = Status(status_info.status.value)
220
- if status_info.steps_total is not None:
221
- self.steps_total = status_info.steps_total
222
- if status_info.steps_completed is not None:
223
- self.steps_completed = status_info.steps_completed
222
+ status_info = orca_api.GET("/task/{task_id}/status", params={"task_id": self.id})
223
+ self.status = Status(status_info["status"])
224
+ if status_info["steps_total"] is not None:
225
+ self.steps_total = status_info["steps_total"]
226
+ if status_info["steps_completed"] is not None:
227
+ self.steps_completed = status_info["steps_completed"]
224
228
 
225
- self.exception = status_info.exception
226
- self.updated_at = status_info.updated_at
229
+ self.exception = status_info["exception"]
230
+ self.updated_at = datetime.fromisoformat(status_info["updated_at"])
227
231
 
228
- if status_info.status == TaskStatus.COMPLETED:
232
+ if status_info["status"] == "COMPLETED":
229
233
  self.value = self._get_value()
230
234
 
231
235
  def __getattribute__(self, name: str):
@@ -316,14 +320,15 @@ class Job(Generic[TResult]):
316
320
  assert self.value is not None
317
321
  return self.value
318
322
 
319
- def abort(self, show_progress: bool = False, refresh_interval: int = 1, max_wait: int = 20) -> None:
320
- """
321
- Abort the job
322
323
 
323
- Params:
324
- show_progress: Optionally show a progress bar while waiting for the job to abort
325
- refresh_interval: Polling interval in seconds while waiting for the job to abort
326
- max_wait: Maximum time to wait for the job to abort in seconds
327
- """
328
- abort_task(self.id)
329
- self.wait(show_progress, refresh_interval, max_wait)
324
+ def abort(self, show_progress: bool = False, refresh_interval: int = 1, max_wait: int = 20) -> None:
325
+ """
326
+ Abort the job
327
+
328
+ Params:
329
+ show_progress: Optionally show a progress bar while waiting for the job to abort
330
+ refresh_interval: Polling interval in seconds while waiting for the job to abort
331
+ max_wait: Maximum time to wait for the job to abort in seconds
332
+ """
333
+ orca_api.DELETE("/task/{task_id}/abort", params={"task_id": self.id})
334
+ self.wait(show_progress, refresh_interval, max_wait)
orca_sdk/job_test.py CHANGED
@@ -5,6 +5,19 @@ from .datasource import Datasource
5
5
  from .job import Job, Status
6
6
 
7
7
 
8
+ def wait_for_jobs_status(job_ids, expected_statuses, timeout=10, poll_interval=0.2):
9
+ """
10
+ Wait until all jobs reach one of the expected statuses or timeout is reached.
11
+ """
12
+ start = time.time()
13
+ while time.time() - start < timeout:
14
+ jobs = [Job(job_id) for job_id in job_ids]
15
+ if all(job.status in expected_statuses for job in jobs):
16
+ return
17
+ time.sleep(poll_interval)
18
+ raise TimeoutError(f"Jobs did not reach statuses {expected_statuses} within {timeout} seconds")
19
+
20
+
8
21
  def test_job_creation(classification_model: ClassificationModel, datasource: Datasource):
9
22
  job = classification_model.evaluate(datasource, background=True)
10
23
  assert job.id is not None
@@ -46,3 +59,40 @@ def test_job_refresh(classification_model: ClassificationModel, datasource: Data
46
59
  # calling refresh() should immediately refresh the job
47
60
  job.refresh()
48
61
  assert job.refreshed_at > last_refreshed_at
62
+
63
+
64
+ def test_job_query_pagination(classification_model: ClassificationModel, datasource: Datasource):
65
+ """Test pagination with Job.query() method"""
66
+ # Create multiple jobs to test pagination
67
+ jobs_created = []
68
+ for i in range(3):
69
+ job = classification_model.evaluate(datasource, background=True)
70
+ jobs_created.append(job.id)
71
+
72
+ # Wait for jobs to be at least PROCESSING or COMPLETED
73
+ wait_for_jobs_status(jobs_created, expected_statuses=[Status.PROCESSING, Status.COMPLETED])
74
+
75
+ # Test basic pagination with limit
76
+ jobs_page1 = Job.query(type="EVALUATE_MODEL", limit=2)
77
+ assert len(jobs_page1) == 2
78
+
79
+ # Test pagination with offset
80
+ jobs_page2 = Job.query(type="EVALUATE_MODEL", limit=2, offset=1)
81
+ assert len(jobs_page2) == 2
82
+
83
+ # Verify different pages contain different jobs (allowing for some overlap due to timing)
84
+ page1_ids = {job.id for job in jobs_page1}
85
+ page2_ids = {job.id for job in jobs_page2}
86
+
87
+ # At least one job should be different between pages
88
+ assert len(page1_ids.symmetric_difference(page2_ids)) > 0
89
+
90
+ # Test filtering by status
91
+ jobs_by_status = Job.query(status=Status.PROCESSING, limit=10)
92
+ for job in jobs_by_status:
93
+ assert job.status == Status.PROCESSING
94
+
95
+ # Test filtering by multiple statuses
96
+ multi_status_jobs = Job.query(status=[Status.PROCESSING, Status.COMPLETED], limit=10)
97
+ for job in multi_status_jobs:
98
+ assert job.status in [Status.PROCESSING, Status.COMPLETED]