eval-studio-client 1.0.3a1__py3-none-any.whl → 1.1.0__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 (592) hide show
  1. eval_studio_client/api/__init__.py +83 -1
  2. eval_studio_client/api/api/__init__.py +8 -0
  3. eval_studio_client/api/api/adversarial_inputs_service_api.py +321 -0
  4. eval_studio_client/api/api/dashboard_service_api.py +18 -1
  5. eval_studio_client/api/api/document_service_api.py +1 -1
  6. eval_studio_client/api/api/evaluation_service_api.py +1 -1
  7. eval_studio_client/api/api/evaluator_service_api.py +1 -1
  8. eval_studio_client/api/api/human_calibration_service_api.py +304 -0
  9. eval_studio_client/api/api/info_service_api.py +1 -1
  10. eval_studio_client/api/api/leaderboard_report_service_api.py +292 -0
  11. eval_studio_client/api/api/leaderboard_service_api.py +17 -17
  12. eval_studio_client/api/api/model_service_api.py +17 -17
  13. eval_studio_client/api/api/operation_progress_service_api.py +1 -1
  14. eval_studio_client/api/api/operation_service_api.py +272 -17
  15. eval_studio_client/api/api/perturbation_service_api.py +1 -1
  16. eval_studio_client/api/api/perturbator_service_api.py +285 -18
  17. eval_studio_client/api/api/prompt_generation_service_api.py +1 -1
  18. eval_studio_client/api/api/prompt_library_service_api.py +669 -0
  19. eval_studio_client/api/api/test_case_relationship_service_api.py +292 -0
  20. eval_studio_client/api/api/test_case_service_api.py +17 -17
  21. eval_studio_client/api/api/test_class_service_api.py +17 -17
  22. eval_studio_client/api/api/test_lab_service_api.py +1 -1
  23. eval_studio_client/api/api/test_service_api.py +1272 -102
  24. eval_studio_client/api/api/who_am_i_service_api.py +1 -1
  25. eval_studio_client/api/api/workflow_edge_service_api.py +835 -0
  26. eval_studio_client/api/api/workflow_node_service_api.py +2431 -0
  27. eval_studio_client/api/api/workflow_service_api.py +2403 -0
  28. eval_studio_client/api/api_client.py +1 -1
  29. eval_studio_client/api/configuration.py +1 -1
  30. eval_studio_client/api/docs/AdversarialInputsServiceApi.md +78 -0
  31. eval_studio_client/api/docs/AdversarialInputsServiceTestAdversarialInputsRobustnessRequest.md +45 -0
  32. eval_studio_client/api/docs/DashboardServiceApi.md +4 -2
  33. eval_studio_client/api/docs/HumanCalibrationServiceApi.md +77 -0
  34. eval_studio_client/api/docs/LeaderboardReportServiceApi.md +75 -0
  35. eval_studio_client/api/docs/LeaderboardServiceApi.md +5 -5
  36. eval_studio_client/api/docs/ModelServiceApi.md +5 -5
  37. eval_studio_client/api/docs/OperationServiceApi.md +72 -5
  38. eval_studio_client/api/docs/PerturbationServiceCreatePerturbationRequest.md +1 -0
  39. eval_studio_client/api/docs/PerturbatorServiceApi.md +38 -8
  40. eval_studio_client/api/docs/PromptGenerationServiceAutoGeneratePromptsRequest.md +4 -2
  41. eval_studio_client/api/docs/PromptLibraryServiceApi.md +155 -0
  42. eval_studio_client/api/docs/ProtobufNullValue.md +12 -0
  43. eval_studio_client/api/docs/RequiredTheDashboardToUpdate.md +1 -0
  44. eval_studio_client/api/docs/RequiredTheTestCaseToUpdate.md +3 -0
  45. eval_studio_client/api/docs/RequiredTheTestToUpdate.md +1 -0
  46. eval_studio_client/api/docs/RequiredTheUpdatedWorkflow.md +47 -0
  47. eval_studio_client/api/docs/RequiredTheUpdatedWorkflowNode.md +44 -0
  48. eval_studio_client/api/docs/TestCaseRelationshipServiceApi.md +75 -0
  49. eval_studio_client/api/docs/TestCaseServiceApi.md +5 -5
  50. eval_studio_client/api/docs/TestClassServiceApi.md +5 -5
  51. eval_studio_client/api/docs/TestServiceApi.md +293 -9
  52. eval_studio_client/api/docs/TestServiceCloneTestRequest.md +30 -0
  53. eval_studio_client/api/docs/TestServiceGenerateTestCasesRequest.md +3 -1
  54. eval_studio_client/api/docs/TestServiceImportTestCasesFromLibraryRequest.md +32 -0
  55. eval_studio_client/api/docs/TestServiceListTestCaseLibraryItemsRequest.md +35 -0
  56. eval_studio_client/api/docs/TestServicePerturbTestInPlaceRequest.md +30 -0
  57. eval_studio_client/api/docs/TestServicePerturbTestRequest.md +1 -0
  58. eval_studio_client/api/docs/V1AbortOperationResponse.md +29 -0
  59. eval_studio_client/api/docs/V1BatchDeleteWorkflowsRequest.md +29 -0
  60. eval_studio_client/api/docs/V1BatchDeleteWorkflowsResponse.md +29 -0
  61. eval_studio_client/api/docs/V1BatchGetWorkflowEdgesResponse.md +29 -0
  62. eval_studio_client/api/docs/V1BatchGetWorkflowNodesResponse.md +29 -0
  63. eval_studio_client/api/docs/V1CloneTestResponse.md +29 -0
  64. eval_studio_client/api/docs/V1CloneWorkflowResponse.md +29 -0
  65. eval_studio_client/api/docs/V1Context.md +37 -0
  66. eval_studio_client/api/docs/V1CreateEvaluationRequest.md +1 -0
  67. eval_studio_client/api/docs/V1CreateWorkflowEdgeResponse.md +29 -0
  68. eval_studio_client/api/docs/V1CreateWorkflowNodeResponse.md +29 -0
  69. eval_studio_client/api/docs/V1CreateWorkflowResponse.md +29 -0
  70. eval_studio_client/api/docs/V1Dashboard.md +1 -0
  71. eval_studio_client/api/docs/V1DashboardType.md +12 -0
  72. eval_studio_client/api/docs/V1DeleteWorkflowEdgeResponse.md +29 -0
  73. eval_studio_client/api/docs/V1DeleteWorkflowNodeResponse.md +29 -0
  74. eval_studio_client/api/docs/V1DeleteWorkflowResponse.md +29 -0
  75. eval_studio_client/api/docs/V1DependencyList.md +30 -0
  76. eval_studio_client/api/docs/V1EstimateThresholdRequest.md +33 -0
  77. eval_studio_client/api/docs/V1Evaluator.md +2 -0
  78. eval_studio_client/api/docs/V1GetGuardrailsConfigurationResponse.md +29 -0
  79. eval_studio_client/api/docs/V1GetLeaderboardReportResponse.md +29 -0
  80. eval_studio_client/api/docs/V1GetWorkflowNodePrerequisitesResponse.md +30 -0
  81. eval_studio_client/api/docs/V1GetWorkflowNodeResponse.md +29 -0
  82. eval_studio_client/api/docs/V1GetWorkflowResponse.md +29 -0
  83. eval_studio_client/api/docs/V1ImportEvaluationRequest.md +1 -0
  84. eval_studio_client/api/docs/V1ImportTestCasesFromLibraryResponse.md +29 -0
  85. eval_studio_client/api/docs/V1ImportTestCasesRequest.md +33 -0
  86. eval_studio_client/api/docs/V1Info.md +3 -0
  87. eval_studio_client/api/docs/V1InitWorkflowNodeResponse.md +29 -0
  88. eval_studio_client/api/docs/V1LabeledTestCase.md +31 -0
  89. eval_studio_client/api/docs/V1LeaderboardReport.md +32 -0
  90. eval_studio_client/api/docs/V1LeaderboardReportActualOutputData.md +31 -0
  91. eval_studio_client/api/docs/V1LeaderboardReportActualOutputMeta.md +31 -0
  92. eval_studio_client/api/docs/V1LeaderboardReportEvaluator.md +42 -0
  93. eval_studio_client/api/docs/V1LeaderboardReportEvaluatorParameter.md +38 -0
  94. eval_studio_client/api/docs/V1LeaderboardReportExplanation.md +34 -0
  95. eval_studio_client/api/docs/V1LeaderboardReportMetricsMetaEntry.md +41 -0
  96. eval_studio_client/api/docs/V1LeaderboardReportModel.md +37 -0
  97. eval_studio_client/api/docs/V1LeaderboardReportResult.md +45 -0
  98. eval_studio_client/api/docs/V1LeaderboardReportResultRelationship.md +32 -0
  99. eval_studio_client/api/docs/V1ListPromptLibraryItemsResponse.md +29 -0
  100. eval_studio_client/api/docs/V1ListTestCaseLibraryItemsResponse.md +29 -0
  101. eval_studio_client/api/docs/V1ListTestCaseRelationshipsResponse.md +29 -0
  102. eval_studio_client/api/docs/V1ListWorkflowDependenciesResponse.md +30 -0
  103. eval_studio_client/api/docs/V1ListWorkflowsResponse.md +29 -0
  104. eval_studio_client/api/docs/V1MetricScore.md +31 -0
  105. eval_studio_client/api/docs/V1MetricScores.md +29 -0
  106. eval_studio_client/api/docs/V1PerturbTestInPlaceResponse.md +29 -0
  107. eval_studio_client/api/docs/V1ProcessWorkflowNodeResponse.md +29 -0
  108. eval_studio_client/api/docs/V1PromptLibraryItem.md +42 -0
  109. eval_studio_client/api/docs/V1RepeatedContext.md +29 -0
  110. eval_studio_client/api/docs/V1RepeatedString.md +29 -0
  111. eval_studio_client/api/docs/V1ResetWorkflowNodeResponse.md +29 -0
  112. eval_studio_client/api/docs/V1Test.md +1 -0
  113. eval_studio_client/api/docs/V1TestCase.md +3 -0
  114. eval_studio_client/api/docs/V1TestSuiteEvaluates.md +11 -0
  115. eval_studio_client/api/docs/V1TestType.md +12 -0
  116. eval_studio_client/api/docs/V1UpdateWorkflowNodeResponse.md +29 -0
  117. eval_studio_client/api/docs/V1UpdateWorkflowResponse.md +29 -0
  118. eval_studio_client/api/docs/V1Workflow.md +49 -0
  119. eval_studio_client/api/docs/V1WorkflowDependency.md +30 -0
  120. eval_studio_client/api/docs/V1WorkflowEdge.md +40 -0
  121. eval_studio_client/api/docs/V1WorkflowEdgeType.md +12 -0
  122. eval_studio_client/api/docs/V1WorkflowNode.md +46 -0
  123. eval_studio_client/api/docs/V1WorkflowNodeArtifact.md +41 -0
  124. eval_studio_client/api/docs/V1WorkflowNodeArtifacts.md +29 -0
  125. eval_studio_client/api/docs/V1WorkflowNodeAttributes.md +30 -0
  126. eval_studio_client/api/docs/V1WorkflowNodeStatus.md +12 -0
  127. eval_studio_client/api/docs/V1WorkflowNodeType.md +12 -0
  128. eval_studio_client/api/docs/V1WorkflowNodeView.md +12 -0
  129. eval_studio_client/api/docs/V1WorkflowType.md +12 -0
  130. eval_studio_client/api/docs/WorkflowEdgeServiceApi.md +215 -0
  131. eval_studio_client/api/docs/WorkflowNodeServiceApi.md +632 -0
  132. eval_studio_client/api/docs/WorkflowServiceApi.md +623 -0
  133. eval_studio_client/api/docs/WorkflowServiceCloneWorkflowRequest.md +33 -0
  134. eval_studio_client/api/exceptions.py +1 -1
  135. eval_studio_client/api/models/__init__.py +75 -1
  136. eval_studio_client/api/models/adversarial_inputs_service_test_adversarial_inputs_robustness_request.py +143 -0
  137. eval_studio_client/api/models/perturbation_service_create_perturbation_request.py +9 -3
  138. eval_studio_client/api/models/prompt_generation_service_auto_generate_prompts_request.py +18 -6
  139. eval_studio_client/api/models/protobuf_any.py +1 -1
  140. eval_studio_client/api/models/protobuf_null_value.py +36 -0
  141. eval_studio_client/api/models/required_the_dashboard_to_update.py +6 -3
  142. eval_studio_client/api/models/required_the_document_to_update.py +1 -1
  143. eval_studio_client/api/models/required_the_leaderboard_to_update.py +1 -1
  144. eval_studio_client/api/models/required_the_model_to_update.py +1 -1
  145. eval_studio_client/api/models/required_the_operation_to_finalize.py +1 -1
  146. eval_studio_client/api/models/required_the_operation_to_update.py +1 -1
  147. eval_studio_client/api/models/required_the_test_case_to_update.py +14 -3
  148. eval_studio_client/api/models/required_the_test_to_update.py +6 -3
  149. eval_studio_client/api/models/required_the_updated_workflow.py +160 -0
  150. eval_studio_client/api/models/required_the_updated_workflow_node.py +152 -0
  151. eval_studio_client/api/models/rpc_status.py +1 -1
  152. eval_studio_client/api/models/test_case_service_batch_delete_test_cases_request.py +1 -1
  153. eval_studio_client/api/models/test_service_clone_test_request.py +89 -0
  154. eval_studio_client/api/models/test_service_generate_test_cases_request.py +16 -4
  155. eval_studio_client/api/models/test_service_import_test_cases_from_library_request.py +93 -0
  156. eval_studio_client/api/models/test_service_list_test_case_library_items_request.py +99 -0
  157. eval_studio_client/api/models/test_service_perturb_test_in_place_request.py +97 -0
  158. eval_studio_client/api/models/test_service_perturb_test_request.py +5 -3
  159. eval_studio_client/api/models/v1_abort_operation_response.py +91 -0
  160. eval_studio_client/api/models/v1_batch_create_leaderboards_request.py +1 -1
  161. eval_studio_client/api/models/v1_batch_create_leaderboards_response.py +1 -1
  162. eval_studio_client/api/models/v1_batch_delete_dashboards_request.py +1 -1
  163. eval_studio_client/api/models/v1_batch_delete_dashboards_response.py +1 -1
  164. eval_studio_client/api/models/v1_batch_delete_documents_request.py +1 -1
  165. eval_studio_client/api/models/v1_batch_delete_documents_response.py +1 -1
  166. eval_studio_client/api/models/v1_batch_delete_evaluators_request.py +1 -1
  167. eval_studio_client/api/models/v1_batch_delete_evaluators_response.py +1 -1
  168. eval_studio_client/api/models/v1_batch_delete_leaderboards_request.py +1 -1
  169. eval_studio_client/api/models/v1_batch_delete_leaderboards_response.py +1 -1
  170. eval_studio_client/api/models/v1_batch_delete_models_request.py +1 -1
  171. eval_studio_client/api/models/v1_batch_delete_models_response.py +1 -1
  172. eval_studio_client/api/models/v1_batch_delete_test_cases_response.py +1 -1
  173. eval_studio_client/api/models/v1_batch_delete_tests_request.py +1 -1
  174. eval_studio_client/api/models/v1_batch_delete_tests_response.py +1 -1
  175. eval_studio_client/api/models/v1_batch_delete_workflows_request.py +87 -0
  176. eval_studio_client/api/models/v1_batch_delete_workflows_response.py +95 -0
  177. eval_studio_client/api/models/v1_batch_get_dashboards_response.py +1 -1
  178. eval_studio_client/api/models/v1_batch_get_documents_response.py +1 -1
  179. eval_studio_client/api/models/v1_batch_get_leaderboards_response.py +1 -1
  180. eval_studio_client/api/models/v1_batch_get_models_response.py +1 -1
  181. eval_studio_client/api/models/v1_batch_get_operations_response.py +1 -1
  182. eval_studio_client/api/models/v1_batch_get_tests_response.py +1 -1
  183. eval_studio_client/api/models/v1_batch_get_workflow_edges_response.py +95 -0
  184. eval_studio_client/api/models/v1_batch_get_workflow_nodes_response.py +95 -0
  185. eval_studio_client/api/models/v1_batch_import_leaderboard_request.py +1 -1
  186. eval_studio_client/api/models/v1_batch_import_leaderboard_response.py +1 -1
  187. eval_studio_client/api/models/v1_batch_import_tests_request.py +1 -1
  188. eval_studio_client/api/models/v1_batch_import_tests_response.py +1 -1
  189. eval_studio_client/api/models/v1_check_base_models_response.py +1 -1
  190. eval_studio_client/api/models/v1_clone_test_response.py +91 -0
  191. eval_studio_client/api/models/v1_clone_workflow_response.py +91 -0
  192. eval_studio_client/api/models/v1_collection_info.py +1 -1
  193. eval_studio_client/api/models/v1_context.py +103 -0
  194. eval_studio_client/api/models/v1_create_dashboard_response.py +1 -1
  195. eval_studio_client/api/models/v1_create_document_response.py +1 -1
  196. eval_studio_client/api/models/v1_create_evaluation_request.py +8 -3
  197. eval_studio_client/api/models/v1_create_evaluator_response.py +1 -1
  198. eval_studio_client/api/models/v1_create_leaderboard_request.py +1 -1
  199. eval_studio_client/api/models/v1_create_leaderboard_response.py +1 -1
  200. eval_studio_client/api/models/v1_create_leaderboard_without_cache_response.py +1 -1
  201. eval_studio_client/api/models/v1_create_model_response.py +1 -1
  202. eval_studio_client/api/models/v1_create_perturbation_response.py +1 -1
  203. eval_studio_client/api/models/v1_create_test_case_response.py +1 -1
  204. eval_studio_client/api/models/v1_create_test_lab_response.py +1 -1
  205. eval_studio_client/api/models/v1_create_test_response.py +1 -1
  206. eval_studio_client/api/models/v1_create_workflow_edge_response.py +91 -0
  207. eval_studio_client/api/models/v1_create_workflow_node_response.py +91 -0
  208. eval_studio_client/api/models/v1_create_workflow_response.py +91 -0
  209. eval_studio_client/api/models/v1_dashboard.py +6 -3
  210. eval_studio_client/api/models/v1_dashboard_status.py +1 -1
  211. eval_studio_client/api/models/v1_dashboard_type.py +38 -0
  212. eval_studio_client/api/models/v1_delete_dashboard_response.py +1 -1
  213. eval_studio_client/api/models/v1_delete_document_response.py +1 -1
  214. eval_studio_client/api/models/v1_delete_evaluator_response.py +1 -1
  215. eval_studio_client/api/models/v1_delete_leaderboard_response.py +1 -1
  216. eval_studio_client/api/models/v1_delete_model_response.py +1 -1
  217. eval_studio_client/api/models/v1_delete_test_case_response.py +1 -1
  218. eval_studio_client/api/models/v1_delete_test_response.py +1 -1
  219. eval_studio_client/api/models/v1_delete_workflow_edge_response.py +91 -0
  220. eval_studio_client/api/models/v1_delete_workflow_node_response.py +91 -0
  221. eval_studio_client/api/models/v1_delete_workflow_response.py +91 -0
  222. eval_studio_client/api/models/v1_dependency_list.py +97 -0
  223. eval_studio_client/api/models/v1_document.py +1 -1
  224. eval_studio_client/api/models/v1_estimate_threshold_request.py +103 -0
  225. eval_studio_client/api/models/v1_evaluation_test.py +1 -1
  226. eval_studio_client/api/models/v1_evaluator.py +12 -4
  227. eval_studio_client/api/models/v1_evaluator_param_type.py +1 -1
  228. eval_studio_client/api/models/v1_evaluator_parameter.py +1 -1
  229. eval_studio_client/api/models/v1_evaluator_view.py +1 -1
  230. eval_studio_client/api/models/v1_finalize_operation_response.py +1 -1
  231. eval_studio_client/api/models/v1_find_all_test_cases_by_id_response.py +1 -1
  232. eval_studio_client/api/models/v1_find_test_lab_response.py +1 -1
  233. eval_studio_client/api/models/v1_generate_test_cases_response.py +1 -1
  234. eval_studio_client/api/models/v1_get_dashboard_response.py +1 -1
  235. eval_studio_client/api/models/v1_get_document_response.py +1 -1
  236. eval_studio_client/api/models/v1_get_evaluator_response.py +1 -1
  237. eval_studio_client/api/models/v1_get_guardrails_configuration_response.py +87 -0
  238. eval_studio_client/api/models/v1_get_info_response.py +1 -1
  239. eval_studio_client/api/models/v1_get_leaderboard_report_response.py +91 -0
  240. eval_studio_client/api/models/v1_get_leaderboard_response.py +1 -1
  241. eval_studio_client/api/models/v1_get_model_response.py +1 -1
  242. eval_studio_client/api/models/v1_get_operation_progress_by_parent_response.py +1 -1
  243. eval_studio_client/api/models/v1_get_operation_response.py +1 -1
  244. eval_studio_client/api/models/v1_get_perturbator_response.py +1 -1
  245. eval_studio_client/api/models/v1_get_test_case_response.py +1 -1
  246. eval_studio_client/api/models/v1_get_test_class_response.py +1 -1
  247. eval_studio_client/api/models/v1_get_test_response.py +1 -1
  248. eval_studio_client/api/models/v1_get_workflow_node_prerequisites_response.py +89 -0
  249. eval_studio_client/api/models/v1_get_workflow_node_response.py +91 -0
  250. eval_studio_client/api/models/v1_get_workflow_response.py +91 -0
  251. eval_studio_client/api/models/v1_import_evaluation_request.py +8 -3
  252. eval_studio_client/api/models/v1_import_leaderboard_request.py +1 -1
  253. eval_studio_client/api/models/v1_import_leaderboard_response.py +1 -1
  254. eval_studio_client/api/models/v1_import_test_cases_from_library_response.py +91 -0
  255. eval_studio_client/api/models/v1_import_test_cases_request.py +95 -0
  256. eval_studio_client/api/models/v1_info.py +10 -4
  257. eval_studio_client/api/models/v1_init_workflow_node_response.py +91 -0
  258. eval_studio_client/api/models/v1_insight.py +1 -1
  259. eval_studio_client/api/models/v1_labeled_test_case.py +91 -0
  260. eval_studio_client/api/models/v1_leaderboard.py +1 -1
  261. eval_studio_client/api/models/v1_leaderboard_report.py +115 -0
  262. eval_studio_client/api/models/v1_leaderboard_report_actual_output_data.py +93 -0
  263. eval_studio_client/api/models/v1_leaderboard_report_actual_output_meta.py +101 -0
  264. eval_studio_client/api/models/v1_leaderboard_report_evaluator.py +155 -0
  265. eval_studio_client/api/models/v1_leaderboard_report_evaluator_parameter.py +109 -0
  266. eval_studio_client/api/models/v1_leaderboard_report_explanation.py +103 -0
  267. eval_studio_client/api/models/v1_leaderboard_report_metrics_meta_entry.py +129 -0
  268. eval_studio_client/api/models/v1_leaderboard_report_model.py +113 -0
  269. eval_studio_client/api/models/v1_leaderboard_report_result.py +175 -0
  270. eval_studio_client/api/models/v1_leaderboard_report_result_relationship.py +97 -0
  271. eval_studio_client/api/models/v1_leaderboard_status.py +1 -1
  272. eval_studio_client/api/models/v1_leaderboard_type.py +1 -1
  273. eval_studio_client/api/models/v1_leaderboard_view.py +1 -1
  274. eval_studio_client/api/models/v1_list_base_models_response.py +1 -1
  275. eval_studio_client/api/models/v1_list_dashboards_response.py +1 -1
  276. eval_studio_client/api/models/v1_list_documents_response.py +1 -1
  277. eval_studio_client/api/models/v1_list_evaluators_response.py +1 -1
  278. eval_studio_client/api/models/v1_list_leaderboards_response.py +1 -1
  279. eval_studio_client/api/models/v1_list_llm_models_response.py +1 -1
  280. eval_studio_client/api/models/v1_list_model_collections_response.py +1 -1
  281. eval_studio_client/api/models/v1_list_models_response.py +1 -1
  282. eval_studio_client/api/models/v1_list_most_recent_dashboards_response.py +1 -1
  283. eval_studio_client/api/models/v1_list_most_recent_leaderboards_response.py +1 -1
  284. eval_studio_client/api/models/v1_list_most_recent_models_response.py +1 -1
  285. eval_studio_client/api/models/v1_list_most_recent_tests_response.py +1 -1
  286. eval_studio_client/api/models/v1_list_operations_response.py +1 -1
  287. eval_studio_client/api/models/v1_list_perturbators_response.py +1 -1
  288. eval_studio_client/api/models/v1_list_prompt_library_items_response.py +95 -0
  289. eval_studio_client/api/models/v1_list_rag_collections_response.py +1 -1
  290. eval_studio_client/api/models/v1_list_test_case_library_items_response.py +95 -0
  291. eval_studio_client/api/models/v1_list_test_case_relationships_response.py +95 -0
  292. eval_studio_client/api/models/v1_list_test_cases_response.py +1 -1
  293. eval_studio_client/api/models/v1_list_test_classes_response.py +1 -1
  294. eval_studio_client/api/models/v1_list_tests_response.py +1 -1
  295. eval_studio_client/api/models/v1_list_workflow_dependencies_response.py +105 -0
  296. eval_studio_client/api/models/v1_list_workflows_response.py +95 -0
  297. eval_studio_client/api/models/v1_metric_score.py +89 -0
  298. eval_studio_client/api/models/v1_metric_scores.py +95 -0
  299. eval_studio_client/api/models/v1_model.py +1 -1
  300. eval_studio_client/api/models/v1_model_type.py +1 -1
  301. eval_studio_client/api/models/v1_operation.py +1 -1
  302. eval_studio_client/api/models/v1_operation_progress.py +1 -1
  303. eval_studio_client/api/models/v1_perturb_test_in_place_response.py +91 -0
  304. eval_studio_client/api/models/v1_perturb_test_response.py +1 -1
  305. eval_studio_client/api/models/v1_perturbator.py +1 -1
  306. eval_studio_client/api/models/v1_perturbator_configuration.py +1 -1
  307. eval_studio_client/api/models/v1_perturbator_intensity.py +1 -1
  308. eval_studio_client/api/models/v1_problem_and_action.py +1 -1
  309. eval_studio_client/api/models/v1_process_workflow_node_response.py +91 -0
  310. eval_studio_client/api/models/v1_prompt_library_item.py +129 -0
  311. eval_studio_client/api/models/v1_repeated_context.py +95 -0
  312. eval_studio_client/api/models/v1_repeated_string.py +87 -0
  313. eval_studio_client/api/models/v1_reset_workflow_node_response.py +91 -0
  314. eval_studio_client/api/models/v1_test.py +6 -3
  315. eval_studio_client/api/models/v1_test_case.py +14 -3
  316. eval_studio_client/api/models/v1_test_case_relationship.py +1 -1
  317. eval_studio_client/api/models/v1_test_cases_generator.py +1 -1
  318. eval_studio_client/api/models/v1_test_class.py +1 -1
  319. eval_studio_client/api/models/v1_test_class_type.py +1 -1
  320. eval_studio_client/api/models/v1_test_lab.py +1 -1
  321. eval_studio_client/api/models/v1_test_suite_evaluates.py +39 -0
  322. eval_studio_client/api/models/v1_test_type.py +38 -0
  323. eval_studio_client/api/models/v1_update_dashboard_response.py +1 -1
  324. eval_studio_client/api/models/v1_update_document_response.py +1 -1
  325. eval_studio_client/api/models/v1_update_leaderboard_response.py +1 -1
  326. eval_studio_client/api/models/v1_update_model_response.py +1 -1
  327. eval_studio_client/api/models/v1_update_operation_response.py +1 -1
  328. eval_studio_client/api/models/v1_update_test_case_response.py +1 -1
  329. eval_studio_client/api/models/v1_update_test_response.py +1 -1
  330. eval_studio_client/api/models/v1_update_workflow_node_response.py +91 -0
  331. eval_studio_client/api/models/v1_update_workflow_response.py +91 -0
  332. eval_studio_client/api/models/v1_who_am_i_response.py +1 -1
  333. eval_studio_client/api/models/v1_workflow.py +164 -0
  334. eval_studio_client/api/models/v1_workflow_dependency.py +89 -0
  335. eval_studio_client/api/models/v1_workflow_edge.py +123 -0
  336. eval_studio_client/api/models/v1_workflow_edge_type.py +38 -0
  337. eval_studio_client/api/models/v1_workflow_node.py +156 -0
  338. eval_studio_client/api/models/v1_workflow_node_artifact.py +126 -0
  339. eval_studio_client/api/models/v1_workflow_node_artifacts.py +97 -0
  340. eval_studio_client/api/models/v1_workflow_node_attributes.py +87 -0
  341. eval_studio_client/api/models/v1_workflow_node_status.py +40 -0
  342. eval_studio_client/api/models/v1_workflow_node_type.py +44 -0
  343. eval_studio_client/api/models/v1_workflow_node_view.py +38 -0
  344. eval_studio_client/api/models/v1_workflow_type.py +37 -0
  345. eval_studio_client/api/models/workflow_service_clone_workflow_request.py +95 -0
  346. eval_studio_client/api/rest.py +1 -1
  347. eval_studio_client/api/test/test_adversarial_inputs_service_api.py +37 -0
  348. eval_studio_client/api/test/test_adversarial_inputs_service_test_adversarial_inputs_robustness_request.py +128 -0
  349. eval_studio_client/api/test/test_dashboard_service_api.py +1 -1
  350. eval_studio_client/api/test/test_document_service_api.py +1 -1
  351. eval_studio_client/api/test/test_evaluation_service_api.py +1 -1
  352. eval_studio_client/api/test/test_evaluator_service_api.py +1 -1
  353. eval_studio_client/api/test/test_human_calibration_service_api.py +38 -0
  354. eval_studio_client/api/test/test_info_service_api.py +1 -1
  355. eval_studio_client/api/test/test_leaderboard_report_service_api.py +37 -0
  356. eval_studio_client/api/test/test_leaderboard_service_api.py +1 -1
  357. eval_studio_client/api/test/test_model_service_api.py +1 -1
  358. eval_studio_client/api/test/test_operation_progress_service_api.py +1 -1
  359. eval_studio_client/api/test/test_operation_service_api.py +7 -1
  360. eval_studio_client/api/test/test_perturbation_service_api.py +1 -1
  361. eval_studio_client/api/test/test_perturbation_service_create_perturbation_request.py +25 -3
  362. eval_studio_client/api/test/test_perturbator_service_api.py +1 -1
  363. eval_studio_client/api/test/test_prompt_generation_service_api.py +1 -1
  364. eval_studio_client/api/test/test_prompt_generation_service_auto_generate_prompts_request.py +21 -5
  365. eval_studio_client/api/test/test_prompt_library_service_api.py +43 -0
  366. eval_studio_client/api/test/test_protobuf_any.py +1 -1
  367. eval_studio_client/api/test/test_protobuf_null_value.py +33 -0
  368. eval_studio_client/api/test/test_required_the_dashboard_to_update.py +3 -2
  369. eval_studio_client/api/test/test_required_the_document_to_update.py +1 -1
  370. eval_studio_client/api/test/test_required_the_leaderboard_to_update.py +1 -1
  371. eval_studio_client/api/test/test_required_the_model_to_update.py +1 -1
  372. eval_studio_client/api/test/test_required_the_operation_to_finalize.py +1 -1
  373. eval_studio_client/api/test/test_required_the_operation_to_update.py +1 -1
  374. eval_studio_client/api/test/test_required_the_test_case_to_update.py +9 -2
  375. eval_studio_client/api/test/test_required_the_test_to_update.py +3 -2
  376. eval_studio_client/api/test/test_required_the_updated_workflow.py +92 -0
  377. eval_studio_client/api/test/test_required_the_updated_workflow_node.py +81 -0
  378. eval_studio_client/api/test/test_rpc_status.py +1 -1
  379. eval_studio_client/api/test/test_test_case_relationship_service_api.py +37 -0
  380. eval_studio_client/api/test/test_test_case_service_api.py +1 -1
  381. eval_studio_client/api/test/test_test_case_service_batch_delete_test_cases_request.py +1 -1
  382. eval_studio_client/api/test/test_test_class_service_api.py +1 -1
  383. eval_studio_client/api/test/test_test_lab_service_api.py +1 -1
  384. eval_studio_client/api/test/test_test_service_api.py +25 -1
  385. eval_studio_client/api/test/test_test_service_clone_test_request.py +52 -0
  386. eval_studio_client/api/test/test_test_service_generate_test_cases_request.py +17 -2
  387. eval_studio_client/api/test/test_test_service_import_test_cases_from_library_request.py +56 -0
  388. eval_studio_client/api/test/test_test_service_list_test_case_library_items_request.py +63 -0
  389. eval_studio_client/api/test/test_test_service_perturb_test_in_place_request.py +59 -0
  390. eval_studio_client/api/test/test_test_service_perturb_test_request.py +5 -2
  391. eval_studio_client/api/test/test_v1_abort_operation_response.py +71 -0
  392. eval_studio_client/api/test/test_v1_batch_create_leaderboards_request.py +1 -1
  393. eval_studio_client/api/test/test_v1_batch_create_leaderboards_response.py +1 -1
  394. eval_studio_client/api/test/test_v1_batch_delete_dashboards_request.py +1 -1
  395. eval_studio_client/api/test/test_v1_batch_delete_dashboards_response.py +3 -2
  396. eval_studio_client/api/test/test_v1_batch_delete_documents_request.py +1 -1
  397. eval_studio_client/api/test/test_v1_batch_delete_documents_response.py +1 -1
  398. eval_studio_client/api/test/test_v1_batch_delete_evaluators_request.py +1 -1
  399. eval_studio_client/api/test/test_v1_batch_delete_evaluators_response.py +4 -2
  400. eval_studio_client/api/test/test_v1_batch_delete_leaderboards_request.py +1 -1
  401. eval_studio_client/api/test/test_v1_batch_delete_leaderboards_response.py +1 -1
  402. eval_studio_client/api/test/test_v1_batch_delete_models_request.py +1 -1
  403. eval_studio_client/api/test/test_v1_batch_delete_models_response.py +1 -1
  404. eval_studio_client/api/test/test_v1_batch_delete_test_cases_response.py +9 -2
  405. eval_studio_client/api/test/test_v1_batch_delete_tests_request.py +1 -1
  406. eval_studio_client/api/test/test_v1_batch_delete_tests_response.py +3 -2
  407. eval_studio_client/api/test/test_v1_batch_delete_workflows_request.py +53 -0
  408. eval_studio_client/api/test/test_v1_batch_delete_workflows_response.py +95 -0
  409. eval_studio_client/api/test/test_v1_batch_get_dashboards_response.py +3 -2
  410. eval_studio_client/api/test/test_v1_batch_get_documents_response.py +1 -1
  411. eval_studio_client/api/test/test_v1_batch_get_leaderboards_response.py +1 -1
  412. eval_studio_client/api/test/test_v1_batch_get_models_response.py +1 -1
  413. eval_studio_client/api/test/test_v1_batch_get_operations_response.py +1 -1
  414. eval_studio_client/api/test/test_v1_batch_get_tests_response.py +3 -2
  415. eval_studio_client/api/test/test_v1_batch_get_workflow_edges_response.py +64 -0
  416. eval_studio_client/api/test/test_v1_batch_get_workflow_nodes_response.py +84 -0
  417. eval_studio_client/api/test/test_v1_batch_import_leaderboard_request.py +1 -1
  418. eval_studio_client/api/test/test_v1_batch_import_leaderboard_response.py +1 -1
  419. eval_studio_client/api/test/test_v1_batch_import_tests_request.py +1 -1
  420. eval_studio_client/api/test/test_v1_batch_import_tests_response.py +3 -2
  421. eval_studio_client/api/test/test_v1_check_base_models_response.py +1 -1
  422. eval_studio_client/api/test/test_v1_clone_test_response.py +68 -0
  423. eval_studio_client/api/test/test_v1_clone_workflow_response.py +93 -0
  424. eval_studio_client/api/test/test_v1_collection_info.py +1 -1
  425. eval_studio_client/api/test/test_v1_context.py +59 -0
  426. eval_studio_client/api/test/test_v1_create_dashboard_response.py +3 -2
  427. eval_studio_client/api/test/test_v1_create_document_response.py +1 -1
  428. eval_studio_client/api/test/test_v1_create_evaluation_request.py +25 -3
  429. eval_studio_client/api/test/test_v1_create_evaluator_response.py +4 -2
  430. eval_studio_client/api/test/test_v1_create_leaderboard_request.py +1 -1
  431. eval_studio_client/api/test/test_v1_create_leaderboard_response.py +1 -1
  432. eval_studio_client/api/test/test_v1_create_leaderboard_without_cache_response.py +1 -1
  433. eval_studio_client/api/test/test_v1_create_model_response.py +1 -1
  434. eval_studio_client/api/test/test_v1_create_perturbation_response.py +1 -1
  435. eval_studio_client/api/test/test_v1_create_test_case_response.py +9 -2
  436. eval_studio_client/api/test/test_v1_create_test_lab_response.py +1 -1
  437. eval_studio_client/api/test/test_v1_create_test_response.py +3 -2
  438. eval_studio_client/api/test/test_v1_create_workflow_edge_response.py +62 -0
  439. eval_studio_client/api/test/test_v1_create_workflow_node_response.py +82 -0
  440. eval_studio_client/api/test/test_v1_create_workflow_response.py +93 -0
  441. eval_studio_client/api/test/test_v1_dashboard.py +3 -2
  442. eval_studio_client/api/test/test_v1_dashboard_status.py +1 -1
  443. eval_studio_client/api/test/test_v1_dashboard_type.py +33 -0
  444. eval_studio_client/api/test/test_v1_delete_dashboard_response.py +3 -2
  445. eval_studio_client/api/test/test_v1_delete_document_response.py +1 -1
  446. eval_studio_client/api/test/test_v1_delete_evaluator_response.py +4 -2
  447. eval_studio_client/api/test/test_v1_delete_leaderboard_response.py +1 -1
  448. eval_studio_client/api/test/test_v1_delete_model_response.py +1 -1
  449. eval_studio_client/api/test/test_v1_delete_test_case_response.py +9 -2
  450. eval_studio_client/api/test/test_v1_delete_test_response.py +3 -2
  451. eval_studio_client/api/test/test_v1_delete_workflow_edge_response.py +62 -0
  452. eval_studio_client/api/test/test_v1_delete_workflow_node_response.py +82 -0
  453. eval_studio_client/api/test/test_v1_delete_workflow_response.py +93 -0
  454. eval_studio_client/api/test/test_v1_dependency_list.py +56 -0
  455. eval_studio_client/api/test/test_v1_document.py +1 -1
  456. eval_studio_client/api/test/test_v1_estimate_threshold_request.py +60 -0
  457. eval_studio_client/api/test/test_v1_evaluation_test.py +9 -2
  458. eval_studio_client/api/test/test_v1_evaluator.py +4 -2
  459. eval_studio_client/api/test/test_v1_evaluator_param_type.py +1 -1
  460. eval_studio_client/api/test/test_v1_evaluator_parameter.py +1 -1
  461. eval_studio_client/api/test/test_v1_evaluator_view.py +1 -1
  462. eval_studio_client/api/test/test_v1_finalize_operation_response.py +1 -1
  463. eval_studio_client/api/test/test_v1_find_all_test_cases_by_id_response.py +9 -2
  464. eval_studio_client/api/test/test_v1_find_test_lab_response.py +1 -1
  465. eval_studio_client/api/test/test_v1_generate_test_cases_response.py +1 -1
  466. eval_studio_client/api/test/test_v1_get_dashboard_response.py +3 -2
  467. eval_studio_client/api/test/test_v1_get_document_response.py +1 -1
  468. eval_studio_client/api/test/test_v1_get_evaluator_response.py +4 -2
  469. eval_studio_client/api/test/test_v1_get_guardrails_configuration_response.py +51 -0
  470. eval_studio_client/api/test/test_v1_get_info_response.py +7 -2
  471. eval_studio_client/api/test/test_v1_get_leaderboard_report_response.py +173 -0
  472. eval_studio_client/api/test/test_v1_get_leaderboard_response.py +1 -1
  473. eval_studio_client/api/test/test_v1_get_model_response.py +1 -1
  474. eval_studio_client/api/test/test_v1_get_operation_progress_by_parent_response.py +1 -1
  475. eval_studio_client/api/test/test_v1_get_operation_response.py +1 -1
  476. eval_studio_client/api/test/test_v1_get_perturbator_response.py +1 -1
  477. eval_studio_client/api/test/test_v1_get_test_case_response.py +9 -2
  478. eval_studio_client/api/test/test_v1_get_test_class_response.py +1 -1
  479. eval_studio_client/api/test/test_v1_get_test_response.py +3 -2
  480. eval_studio_client/api/test/test_v1_get_workflow_node_prerequisites_response.py +56 -0
  481. eval_studio_client/api/test/test_v1_get_workflow_node_response.py +82 -0
  482. eval_studio_client/api/test/test_v1_get_workflow_response.py +93 -0
  483. eval_studio_client/api/test/test_v1_import_evaluation_request.py +17 -2
  484. eval_studio_client/api/test/test_v1_import_leaderboard_request.py +1 -1
  485. eval_studio_client/api/test/test_v1_import_leaderboard_response.py +1 -1
  486. eval_studio_client/api/test/test_v1_import_test_cases_from_library_response.py +71 -0
  487. eval_studio_client/api/test/test_v1_import_test_cases_request.py +57 -0
  488. eval_studio_client/api/test/test_v1_info.py +7 -2
  489. eval_studio_client/api/test/test_v1_init_workflow_node_response.py +82 -0
  490. eval_studio_client/api/test/test_v1_insight.py +1 -1
  491. eval_studio_client/api/test/test_v1_labeled_test_case.py +53 -0
  492. eval_studio_client/api/test/test_v1_leaderboard.py +1 -1
  493. eval_studio_client/api/test/test_v1_leaderboard_report.py +172 -0
  494. eval_studio_client/api/test/test_v1_leaderboard_report_actual_output_data.py +52 -0
  495. eval_studio_client/api/test/test_v1_leaderboard_report_actual_output_meta.py +56 -0
  496. eval_studio_client/api/test/test_v1_leaderboard_report_evaluator.py +114 -0
  497. eval_studio_client/api/test/test_v1_leaderboard_report_evaluator_parameter.py +63 -0
  498. eval_studio_client/api/test/test_v1_leaderboard_report_explanation.py +58 -0
  499. eval_studio_client/api/test/test_v1_leaderboard_report_metrics_meta_entry.py +66 -0
  500. eval_studio_client/api/test/test_v1_leaderboard_report_model.py +60 -0
  501. eval_studio_client/api/test/test_v1_leaderboard_report_result.py +92 -0
  502. eval_studio_client/api/test/test_v1_leaderboard_report_result_relationship.py +53 -0
  503. eval_studio_client/api/test/test_v1_leaderboard_status.py +1 -1
  504. eval_studio_client/api/test/test_v1_leaderboard_type.py +1 -1
  505. eval_studio_client/api/test/test_v1_leaderboard_view.py +1 -1
  506. eval_studio_client/api/test/test_v1_list_base_models_response.py +1 -1
  507. eval_studio_client/api/test/test_v1_list_dashboards_response.py +3 -2
  508. eval_studio_client/api/test/test_v1_list_documents_response.py +1 -1
  509. eval_studio_client/api/test/test_v1_list_evaluators_response.py +4 -2
  510. eval_studio_client/api/test/test_v1_list_leaderboards_response.py +1 -1
  511. eval_studio_client/api/test/test_v1_list_llm_models_response.py +1 -1
  512. eval_studio_client/api/test/test_v1_list_model_collections_response.py +1 -1
  513. eval_studio_client/api/test/test_v1_list_models_response.py +1 -1
  514. eval_studio_client/api/test/test_v1_list_most_recent_dashboards_response.py +3 -2
  515. eval_studio_client/api/test/test_v1_list_most_recent_leaderboards_response.py +1 -1
  516. eval_studio_client/api/test/test_v1_list_most_recent_models_response.py +1 -1
  517. eval_studio_client/api/test/test_v1_list_most_recent_tests_response.py +3 -2
  518. eval_studio_client/api/test/test_v1_list_operations_response.py +1 -1
  519. eval_studio_client/api/test/test_v1_list_perturbators_response.py +1 -1
  520. eval_studio_client/api/test/test_v1_list_prompt_library_items_response.py +71 -0
  521. eval_studio_client/api/test/test_v1_list_rag_collections_response.py +1 -1
  522. eval_studio_client/api/test/test_v1_list_test_case_library_items_response.py +71 -0
  523. eval_studio_client/api/test/test_v1_list_test_case_relationships_response.py +56 -0
  524. eval_studio_client/api/test/test_v1_list_test_cases_response.py +9 -2
  525. eval_studio_client/api/test/test_v1_list_test_classes_response.py +1 -1
  526. eval_studio_client/api/test/test_v1_list_tests_response.py +3 -2
  527. eval_studio_client/api/test/test_v1_list_workflow_dependencies_response.py +93 -0
  528. eval_studio_client/api/test/test_v1_list_workflows_response.py +95 -0
  529. eval_studio_client/api/test/test_v1_metric_score.py +52 -0
  530. eval_studio_client/api/test/test_v1_metric_scores.py +55 -0
  531. eval_studio_client/api/test/test_v1_model.py +1 -1
  532. eval_studio_client/api/test/test_v1_model_type.py +1 -1
  533. eval_studio_client/api/test/test_v1_operation.py +1 -1
  534. eval_studio_client/api/test/test_v1_operation_progress.py +1 -1
  535. eval_studio_client/api/test/test_v1_perturb_test_in_place_response.py +68 -0
  536. eval_studio_client/api/test/test_v1_perturb_test_response.py +3 -2
  537. eval_studio_client/api/test/test_v1_perturbator.py +1 -1
  538. eval_studio_client/api/test/test_v1_perturbator_configuration.py +1 -1
  539. eval_studio_client/api/test/test_v1_perturbator_intensity.py +1 -1
  540. eval_studio_client/api/test/test_v1_problem_and_action.py +1 -1
  541. eval_studio_client/api/test/test_v1_process_workflow_node_response.py +71 -0
  542. eval_studio_client/api/test/test_v1_prompt_library_item.py +68 -0
  543. eval_studio_client/api/test/test_v1_repeated_context.py +62 -0
  544. eval_studio_client/api/test/test_v1_repeated_string.py +53 -0
  545. eval_studio_client/api/test/test_v1_reset_workflow_node_response.py +82 -0
  546. eval_studio_client/api/test/test_v1_test.py +3 -2
  547. eval_studio_client/api/test/test_v1_test_case.py +9 -2
  548. eval_studio_client/api/test/test_v1_test_case_relationship.py +1 -1
  549. eval_studio_client/api/test/test_v1_test_cases_generator.py +1 -1
  550. eval_studio_client/api/test/test_v1_test_class.py +1 -1
  551. eval_studio_client/api/test/test_v1_test_class_type.py +1 -1
  552. eval_studio_client/api/test/test_v1_test_lab.py +1 -1
  553. eval_studio_client/api/test/test_v1_test_suite_evaluates.py +33 -0
  554. eval_studio_client/api/test/test_v1_test_type.py +33 -0
  555. eval_studio_client/api/test/test_v1_update_dashboard_response.py +3 -2
  556. eval_studio_client/api/test/test_v1_update_document_response.py +1 -1
  557. eval_studio_client/api/test/test_v1_update_leaderboard_response.py +1 -1
  558. eval_studio_client/api/test/test_v1_update_model_response.py +1 -1
  559. eval_studio_client/api/test/test_v1_update_operation_response.py +1 -1
  560. eval_studio_client/api/test/test_v1_update_test_case_response.py +9 -2
  561. eval_studio_client/api/test/test_v1_update_test_response.py +3 -2
  562. eval_studio_client/api/test/test_v1_update_workflow_node_response.py +82 -0
  563. eval_studio_client/api/test/test_v1_update_workflow_response.py +93 -0
  564. eval_studio_client/api/test/test_v1_who_am_i_response.py +1 -1
  565. eval_studio_client/api/test/test_v1_workflow.py +93 -0
  566. eval_studio_client/api/test/test_v1_workflow_dependency.py +52 -0
  567. eval_studio_client/api/test/test_v1_workflow_edge.py +61 -0
  568. eval_studio_client/api/test/test_v1_workflow_edge_type.py +33 -0
  569. eval_studio_client/api/test/test_v1_workflow_node.py +82 -0
  570. eval_studio_client/api/test/test_v1_workflow_node_artifact.py +62 -0
  571. eval_studio_client/api/test/test_v1_workflow_node_artifacts.py +65 -0
  572. eval_studio_client/api/test/test_v1_workflow_node_attributes.py +51 -0
  573. eval_studio_client/api/test/test_v1_workflow_node_status.py +33 -0
  574. eval_studio_client/api/test/test_v1_workflow_node_type.py +33 -0
  575. eval_studio_client/api/test/test_v1_workflow_node_view.py +33 -0
  576. eval_studio_client/api/test/test_v1_workflow_type.py +33 -0
  577. eval_studio_client/api/test/test_who_am_i_service_api.py +1 -1
  578. eval_studio_client/api/test/test_workflow_edge_service_api.py +52 -0
  579. eval_studio_client/api/test/test_workflow_node_service_api.py +94 -0
  580. eval_studio_client/api/test/test_workflow_service_api.py +93 -0
  581. eval_studio_client/api/test/test_workflow_service_clone_workflow_request.py +55 -0
  582. eval_studio_client/client.py +7 -0
  583. eval_studio_client/dashboards.py +29 -0
  584. eval_studio_client/gen/openapiv2/eval_studio.swagger.json +5318 -1884
  585. eval_studio_client/leaderboards.py +123 -0
  586. eval_studio_client/models.py +3 -42
  587. eval_studio_client/test_labs.py +49 -21
  588. eval_studio_client/tests.py +290 -8
  589. {eval_studio_client-1.0.3a1.dist-info → eval_studio_client-1.1.0.dist-info}/METADATA +1 -2
  590. eval_studio_client-1.1.0.dist-info/RECORD +732 -0
  591. eval_studio_client-1.0.3a1.dist-info/RECORD +0 -486
  592. {eval_studio_client-1.0.3a1.dist-info → eval_studio_client-1.1.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,109 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ ai/h2o/eval_studio/v1/insight.proto
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: version not set
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr
21
+ from typing import Any, ClassVar, Dict, List, Optional, Union
22
+ from typing import Optional, Set
23
+ from typing_extensions import Self
24
+
25
+ class V1LeaderboardReportEvaluatorParameter(BaseModel):
26
+ """
27
+ Evaluation parameter definition.
28
+ """ # noqa: E501
29
+ name: Optional[StrictStr] = Field(default=None, description="Output only. Evaluator parameter ID.")
30
+ description: Optional[StrictStr] = Field(default=None, description="Output only. Parameter description.")
31
+ comment: Optional[StrictStr] = Field(default=None, description="Optional. Parameter comment.")
32
+ type: Optional[StrictStr] = Field(default=None, description="Output only. Parameter type like float or string.")
33
+ predefined: Optional[List[Dict[str, Any]]] = Field(default=None, description="Optional. Predefined parameter values - numeric or non-numeric enum.")
34
+ tags: Optional[List[StrictStr]] = Field(default=None, description="Optional. Parameter tags.")
35
+ min: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Optional. Parameter value lower range.")
36
+ max: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Optional. Parameter value upper range.")
37
+ category: Optional[StrictStr] = Field(default=None, description="Optional. Parameter category.")
38
+ __properties: ClassVar[List[str]] = ["name", "description", "comment", "type", "predefined", "tags", "min", "max", "category"]
39
+
40
+ model_config = ConfigDict(
41
+ populate_by_name=True,
42
+ validate_assignment=True,
43
+ protected_namespaces=(),
44
+ )
45
+
46
+
47
+ def to_str(self) -> str:
48
+ """Returns the string representation of the model using alias"""
49
+ return pprint.pformat(self.model_dump(by_alias=True))
50
+
51
+ def to_json(self) -> str:
52
+ """Returns the JSON representation of the model using alias"""
53
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
54
+ return json.dumps(self.to_dict())
55
+
56
+ @classmethod
57
+ def from_json(cls, json_str: str) -> Optional[Self]:
58
+ """Create an instance of V1LeaderboardReportEvaluatorParameter from a JSON string"""
59
+ return cls.from_dict(json.loads(json_str))
60
+
61
+ def to_dict(self) -> Dict[str, Any]:
62
+ """Return the dictionary representation of the model using alias.
63
+
64
+ This has the following differences from calling pydantic's
65
+ `self.model_dump(by_alias=True)`:
66
+
67
+ * `None` is only added to the output dict for nullable fields that
68
+ were set at model initialization. Other fields with value `None`
69
+ are ignored.
70
+ * OpenAPI `readOnly` fields are excluded.
71
+ * OpenAPI `readOnly` fields are excluded.
72
+ * OpenAPI `readOnly` fields are excluded.
73
+ """
74
+ excluded_fields: Set[str] = set([
75
+ "name",
76
+ "description",
77
+ "type",
78
+ ])
79
+
80
+ _dict = self.model_dump(
81
+ by_alias=True,
82
+ exclude=excluded_fields,
83
+ exclude_none=True,
84
+ )
85
+ return _dict
86
+
87
+ @classmethod
88
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
89
+ """Create an instance of V1LeaderboardReportEvaluatorParameter from a dict"""
90
+ if obj is None:
91
+ return None
92
+
93
+ if not isinstance(obj, dict):
94
+ return cls.model_validate(obj)
95
+
96
+ _obj = cls.model_validate({
97
+ "name": obj.get("name"),
98
+ "description": obj.get("description"),
99
+ "comment": obj.get("comment"),
100
+ "type": obj.get("type"),
101
+ "predefined": obj.get("predefined"),
102
+ "tags": obj.get("tags"),
103
+ "min": obj.get("min"),
104
+ "max": obj.get("max"),
105
+ "category": obj.get("category")
106
+ })
107
+ return _obj
108
+
109
+
@@ -0,0 +1,103 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ ai/h2o/eval_studio/v1/insight.proto
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: version not set
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
21
+ from typing import Any, ClassVar, Dict, List, Optional
22
+ from typing import Optional, Set
23
+ from typing_extensions import Self
24
+
25
+ class V1LeaderboardReportExplanation(BaseModel):
26
+ """
27
+ V1LeaderboardReportExplanation
28
+ """ # noqa: E501
29
+ explanation_type: Optional[StrictStr] = Field(default=None, description="Output only. Explanation type ID.", alias="explanationType")
30
+ name: Optional[StrictStr] = Field(default=None, description="Output only. Explanation display name.")
31
+ category: Optional[StrictStr] = Field(default=None, description="Output only. Explanation display category.")
32
+ scope: Optional[StrictStr] = Field(default=None, description="Optional. Explanation scope like global or local.")
33
+ has_local: Optional[StrictStr] = Field(default=None, description="Optional. Local explanation type id associated with (this) global explanation.", alias="hasLocal")
34
+ formats: Optional[List[StrictStr]] = Field(default=None, description="Optional. List of formats available for the explanation.")
35
+ __properties: ClassVar[List[str]] = ["explanationType", "name", "category", "scope", "hasLocal", "formats"]
36
+
37
+ model_config = ConfigDict(
38
+ populate_by_name=True,
39
+ validate_assignment=True,
40
+ protected_namespaces=(),
41
+ )
42
+
43
+
44
+ def to_str(self) -> str:
45
+ """Returns the string representation of the model using alias"""
46
+ return pprint.pformat(self.model_dump(by_alias=True))
47
+
48
+ def to_json(self) -> str:
49
+ """Returns the JSON representation of the model using alias"""
50
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
51
+ return json.dumps(self.to_dict())
52
+
53
+ @classmethod
54
+ def from_json(cls, json_str: str) -> Optional[Self]:
55
+ """Create an instance of V1LeaderboardReportExplanation from a JSON string"""
56
+ return cls.from_dict(json.loads(json_str))
57
+
58
+ def to_dict(self) -> Dict[str, Any]:
59
+ """Return the dictionary representation of the model using alias.
60
+
61
+ This has the following differences from calling pydantic's
62
+ `self.model_dump(by_alias=True)`:
63
+
64
+ * `None` is only added to the output dict for nullable fields that
65
+ were set at model initialization. Other fields with value `None`
66
+ are ignored.
67
+ * OpenAPI `readOnly` fields are excluded.
68
+ * OpenAPI `readOnly` fields are excluded.
69
+ * OpenAPI `readOnly` fields are excluded.
70
+ """
71
+ excluded_fields: Set[str] = set([
72
+ "explanation_type",
73
+ "name",
74
+ "category",
75
+ ])
76
+
77
+ _dict = self.model_dump(
78
+ by_alias=True,
79
+ exclude=excluded_fields,
80
+ exclude_none=True,
81
+ )
82
+ return _dict
83
+
84
+ @classmethod
85
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
86
+ """Create an instance of V1LeaderboardReportExplanation from a dict"""
87
+ if obj is None:
88
+ return None
89
+
90
+ if not isinstance(obj, dict):
91
+ return cls.model_validate(obj)
92
+
93
+ _obj = cls.model_validate({
94
+ "explanationType": obj.get("explanationType"),
95
+ "name": obj.get("name"),
96
+ "category": obj.get("category"),
97
+ "scope": obj.get("scope"),
98
+ "hasLocal": obj.get("hasLocal"),
99
+ "formats": obj.get("formats")
100
+ })
101
+ return _obj
102
+
103
+
@@ -0,0 +1,129 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ ai/h2o/eval_studio/v1/insight.proto
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: version not set
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictFloat, StrictInt, StrictStr
21
+ from typing import Any, ClassVar, Dict, List, Optional, Union
22
+ from typing import Optional, Set
23
+ from typing_extensions import Self
24
+
25
+ class V1LeaderboardReportMetricsMetaEntry(BaseModel):
26
+ """
27
+ MetricsMetaEntry represents the metadata about the metric.
28
+ """ # noqa: E501
29
+ key: Optional[StrictStr] = Field(default=None, description="Output only. Metric key.")
30
+ display_name: Optional[StrictStr] = Field(default=None, description="Output only. Metric display name.", alias="displayName")
31
+ data_type: Optional[StrictStr] = Field(default=None, description="Output only. Metric data type like float or string.", alias="dataType")
32
+ display_value: Optional[StrictStr] = Field(default=None, description="Output only. Metric display value.", alias="displayValue")
33
+ description: Optional[StrictStr] = Field(default=None, description="Output only. Metric description.")
34
+ value_range: Optional[List[Union[StrictFloat, StrictInt]]] = Field(default=None, description="Optional. Metric value range for numeric scores.", alias="valueRange")
35
+ value_enum: Optional[List[StrictStr]] = Field(default=None, description="Optional. Metric value enum for non-numeric scores.", alias="valueEnum")
36
+ higher_is_better: Optional[StrictBool] = Field(default=None, description="Output only. Metric higher is better.", alias="higherIsBetter")
37
+ threshold: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Output only. Metric threshold.")
38
+ is_primary_metric: Optional[StrictBool] = Field(default=None, description="Output only. Metric is primary.", alias="isPrimaryMetric")
39
+ parent_metric: Optional[StrictStr] = Field(default=None, description="Output only. This metric parent.", alias="parentMetric")
40
+ exclude: Optional[StrictBool] = Field(default=None, description="Output only. Whether to exclude the metric.")
41
+ __properties: ClassVar[List[str]] = ["key", "displayName", "dataType", "displayValue", "description", "valueRange", "valueEnum", "higherIsBetter", "threshold", "isPrimaryMetric", "parentMetric", "exclude"]
42
+
43
+ model_config = ConfigDict(
44
+ populate_by_name=True,
45
+ validate_assignment=True,
46
+ protected_namespaces=(),
47
+ )
48
+
49
+
50
+ def to_str(self) -> str:
51
+ """Returns the string representation of the model using alias"""
52
+ return pprint.pformat(self.model_dump(by_alias=True))
53
+
54
+ def to_json(self) -> str:
55
+ """Returns the JSON representation of the model using alias"""
56
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
57
+ return json.dumps(self.to_dict())
58
+
59
+ @classmethod
60
+ def from_json(cls, json_str: str) -> Optional[Self]:
61
+ """Create an instance of V1LeaderboardReportMetricsMetaEntry from a JSON string"""
62
+ return cls.from_dict(json.loads(json_str))
63
+
64
+ def to_dict(self) -> Dict[str, Any]:
65
+ """Return the dictionary representation of the model using alias.
66
+
67
+ This has the following differences from calling pydantic's
68
+ `self.model_dump(by_alias=True)`:
69
+
70
+ * `None` is only added to the output dict for nullable fields that
71
+ were set at model initialization. Other fields with value `None`
72
+ are ignored.
73
+ * OpenAPI `readOnly` fields are excluded.
74
+ * OpenAPI `readOnly` fields are excluded.
75
+ * OpenAPI `readOnly` fields are excluded.
76
+ * OpenAPI `readOnly` fields are excluded.
77
+ * OpenAPI `readOnly` fields are excluded.
78
+ * OpenAPI `readOnly` fields are excluded.
79
+ * OpenAPI `readOnly` fields are excluded.
80
+ * OpenAPI `readOnly` fields are excluded.
81
+ * OpenAPI `readOnly` fields are excluded.
82
+ * OpenAPI `readOnly` fields are excluded.
83
+ """
84
+ excluded_fields: Set[str] = set([
85
+ "key",
86
+ "display_name",
87
+ "data_type",
88
+ "display_value",
89
+ "description",
90
+ "higher_is_better",
91
+ "threshold",
92
+ "is_primary_metric",
93
+ "parent_metric",
94
+ "exclude",
95
+ ])
96
+
97
+ _dict = self.model_dump(
98
+ by_alias=True,
99
+ exclude=excluded_fields,
100
+ exclude_none=True,
101
+ )
102
+ return _dict
103
+
104
+ @classmethod
105
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
106
+ """Create an instance of V1LeaderboardReportMetricsMetaEntry from a dict"""
107
+ if obj is None:
108
+ return None
109
+
110
+ if not isinstance(obj, dict):
111
+ return cls.model_validate(obj)
112
+
113
+ _obj = cls.model_validate({
114
+ "key": obj.get("key"),
115
+ "displayName": obj.get("displayName"),
116
+ "dataType": obj.get("dataType"),
117
+ "displayValue": obj.get("displayValue"),
118
+ "description": obj.get("description"),
119
+ "valueRange": obj.get("valueRange"),
120
+ "valueEnum": obj.get("valueEnum"),
121
+ "higherIsBetter": obj.get("higherIsBetter"),
122
+ "threshold": obj.get("threshold"),
123
+ "isPrimaryMetric": obj.get("isPrimaryMetric"),
124
+ "parentMetric": obj.get("parentMetric"),
125
+ "exclude": obj.get("exclude")
126
+ })
127
+ return _obj
128
+
129
+
@@ -0,0 +1,113 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ ai/h2o/eval_studio/v1/insight.proto
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: version not set
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
21
+ from typing import Any, ClassVar, Dict, List, Optional
22
+ from typing import Optional, Set
23
+ from typing_extensions import Self
24
+
25
+ class V1LeaderboardReportModel(BaseModel):
26
+ """
27
+ Model represents the evaluated model whose outputs were evaluated to create the results.
28
+ """ # noqa: E501
29
+ connection: Optional[StrictStr] = Field(default=None, description="Output only. Connection key.")
30
+ model_type: Optional[StrictStr] = Field(default=None, description="Output only. Model type.", alias="modelType")
31
+ name: Optional[StrictStr] = Field(default=None, description="Output only. Model display name.")
32
+ collection_id: Optional[StrictStr] = Field(default=None, description="Optional. Collection ID.", alias="collectionId")
33
+ collection_name: Optional[StrictStr] = Field(default=None, description="Optional. Collection name.", alias="collectionName")
34
+ llm_model_name: Optional[StrictStr] = Field(default=None, description="Output only. LLM model name.", alias="llmModelName")
35
+ documents: Optional[List[StrictStr]] = Field(default=None, description="Output only. List of documents.")
36
+ key: Optional[StrictStr] = Field(default=None, description="Output only. Model key.")
37
+ __properties: ClassVar[List[str]] = ["connection", "modelType", "name", "collectionId", "collectionName", "llmModelName", "documents", "key"]
38
+
39
+ model_config = ConfigDict(
40
+ populate_by_name=True,
41
+ validate_assignment=True,
42
+ protected_namespaces=(),
43
+ )
44
+
45
+
46
+ def to_str(self) -> str:
47
+ """Returns the string representation of the model using alias"""
48
+ return pprint.pformat(self.model_dump(by_alias=True))
49
+
50
+ def to_json(self) -> str:
51
+ """Returns the JSON representation of the model using alias"""
52
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
53
+ return json.dumps(self.to_dict())
54
+
55
+ @classmethod
56
+ def from_json(cls, json_str: str) -> Optional[Self]:
57
+ """Create an instance of V1LeaderboardReportModel from a JSON string"""
58
+ return cls.from_dict(json.loads(json_str))
59
+
60
+ def to_dict(self) -> Dict[str, Any]:
61
+ """Return the dictionary representation of the model using alias.
62
+
63
+ This has the following differences from calling pydantic's
64
+ `self.model_dump(by_alias=True)`:
65
+
66
+ * `None` is only added to the output dict for nullable fields that
67
+ were set at model initialization. Other fields with value `None`
68
+ are ignored.
69
+ * OpenAPI `readOnly` fields are excluded.
70
+ * OpenAPI `readOnly` fields are excluded.
71
+ * OpenAPI `readOnly` fields are excluded.
72
+ * OpenAPI `readOnly` fields are excluded.
73
+ * OpenAPI `readOnly` fields are excluded.
74
+ * OpenAPI `readOnly` fields are excluded.
75
+ """
76
+ excluded_fields: Set[str] = set([
77
+ "connection",
78
+ "model_type",
79
+ "name",
80
+ "llm_model_name",
81
+ "documents",
82
+ "key",
83
+ ])
84
+
85
+ _dict = self.model_dump(
86
+ by_alias=True,
87
+ exclude=excluded_fields,
88
+ exclude_none=True,
89
+ )
90
+ return _dict
91
+
92
+ @classmethod
93
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
94
+ """Create an instance of V1LeaderboardReportModel from a dict"""
95
+ if obj is None:
96
+ return None
97
+
98
+ if not isinstance(obj, dict):
99
+ return cls.model_validate(obj)
100
+
101
+ _obj = cls.model_validate({
102
+ "connection": obj.get("connection"),
103
+ "modelType": obj.get("modelType"),
104
+ "name": obj.get("name"),
105
+ "collectionId": obj.get("collectionId"),
106
+ "collectionName": obj.get("collectionName"),
107
+ "llmModelName": obj.get("llmModelName"),
108
+ "documents": obj.get("documents"),
109
+ "key": obj.get("key")
110
+ })
111
+ return _obj
112
+
113
+
@@ -0,0 +1,175 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ ai/h2o/eval_studio/v1/insight.proto
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: version not set
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr
21
+ from typing import Any, ClassVar, Dict, List, Optional, Union
22
+ from eval_studio_client.api.models.v1_leaderboard_report_actual_output_meta import V1LeaderboardReportActualOutputMeta
23
+ from eval_studio_client.api.models.v1_leaderboard_report_result_relationship import V1LeaderboardReportResultRelationship
24
+ from eval_studio_client.api.models.v1_metric_score import V1MetricScore
25
+ from typing import Optional, Set
26
+ from typing_extensions import Self
27
+
28
+ class V1LeaderboardReportResult(BaseModel):
29
+ """
30
+ V1LeaderboardReportResult
31
+ """ # noqa: E501
32
+ key: Optional[StrictStr] = Field(default=None, description="Output only. Composite unique key of the result formed by the model key and test case key.")
33
+ input: Optional[StrictStr] = Field(default=None, description="Output only. Input prompt or text to be processed.")
34
+ corpus: Optional[List[StrictStr]] = Field(default=None, description="Output only. Collection of corpus documents to be used during evaluation.")
35
+ context: Optional[List[StrictStr]] = Field(default=None, description="Output only. List of contextual information or references.")
36
+ categories: Optional[List[StrictStr]] = Field(default=None, description="Output only. List of categories or labels for classification.")
37
+ relationships: Optional[List[V1LeaderboardReportResultRelationship]] = Field(default=None, description="Output only. List of relationships or associations between entities.")
38
+ expected_output: Optional[StrictStr] = Field(default=None, description="Output only. Expected output or target result.", alias="expectedOutput")
39
+ output_constraints: Optional[List[StrictStr]] = Field(default=None, description="Output only. List of constraints that should be applied to the output.", alias="outputConstraints")
40
+ output_condition: Optional[StrictStr] = Field(default=None, description="Output only. Condition that output should satisfy.", alias="outputCondition")
41
+ actual_output: Optional[StrictStr] = Field(default=None, description="Output only. Actual output produced by the model.", alias="actualOutput")
42
+ actual_duration: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Output only. Duration of processing in seconds.", alias="actualDuration")
43
+ cost: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Output only. Cost of processing in currency units.")
44
+ model_key: Optional[StrictStr] = Field(default=None, description="Output only. Unique identifier for the model used.", alias="modelKey")
45
+ test_case_key: Optional[StrictStr] = Field(default=None, description="Output only. Unique identifier for the test case.", alias="testCaseKey")
46
+ metrics: Optional[List[V1MetricScore]] = Field(default=None, description="Optional. All metrics values for the result.")
47
+ result_error_message: Optional[StrictStr] = Field(default=None, description="Output only. Error message if processing resulted in failure.", alias="resultErrorMessage")
48
+ actual_output_meta: Optional[List[V1LeaderboardReportActualOutputMeta]] = Field(default=None, description="Output only. Additional metadata about the actual output.", alias="actualOutputMeta")
49
+ __properties: ClassVar[List[str]] = ["key", "input", "corpus", "context", "categories", "relationships", "expectedOutput", "outputConstraints", "outputCondition", "actualOutput", "actualDuration", "cost", "modelKey", "testCaseKey", "metrics", "resultErrorMessage", "actualOutputMeta"]
50
+
51
+ model_config = ConfigDict(
52
+ populate_by_name=True,
53
+ validate_assignment=True,
54
+ protected_namespaces=(),
55
+ )
56
+
57
+
58
+ def to_str(self) -> str:
59
+ """Returns the string representation of the model using alias"""
60
+ return pprint.pformat(self.model_dump(by_alias=True))
61
+
62
+ def to_json(self) -> str:
63
+ """Returns the JSON representation of the model using alias"""
64
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
65
+ return json.dumps(self.to_dict())
66
+
67
+ @classmethod
68
+ def from_json(cls, json_str: str) -> Optional[Self]:
69
+ """Create an instance of V1LeaderboardReportResult from a JSON string"""
70
+ return cls.from_dict(json.loads(json_str))
71
+
72
+ def to_dict(self) -> Dict[str, Any]:
73
+ """Return the dictionary representation of the model using alias.
74
+
75
+ This has the following differences from calling pydantic's
76
+ `self.model_dump(by_alias=True)`:
77
+
78
+ * `None` is only added to the output dict for nullable fields that
79
+ were set at model initialization. Other fields with value `None`
80
+ are ignored.
81
+ * OpenAPI `readOnly` fields are excluded.
82
+ * OpenAPI `readOnly` fields are excluded.
83
+ * OpenAPI `readOnly` fields are excluded.
84
+ * OpenAPI `readOnly` fields are excluded.
85
+ * OpenAPI `readOnly` fields are excluded.
86
+ * OpenAPI `readOnly` fields are excluded.
87
+ * OpenAPI `readOnly` fields are excluded.
88
+ * OpenAPI `readOnly` fields are excluded.
89
+ * OpenAPI `readOnly` fields are excluded.
90
+ * OpenAPI `readOnly` fields are excluded.
91
+ * OpenAPI `readOnly` fields are excluded.
92
+ * OpenAPI `readOnly` fields are excluded.
93
+ * OpenAPI `readOnly` fields are excluded.
94
+ * OpenAPI `readOnly` fields are excluded.
95
+ * OpenAPI `readOnly` fields are excluded.
96
+ * OpenAPI `readOnly` fields are excluded.
97
+ """
98
+ excluded_fields: Set[str] = set([
99
+ "key",
100
+ "input",
101
+ "corpus",
102
+ "context",
103
+ "categories",
104
+ "relationships",
105
+ "expected_output",
106
+ "output_constraints",
107
+ "output_condition",
108
+ "actual_output",
109
+ "actual_duration",
110
+ "cost",
111
+ "model_key",
112
+ "test_case_key",
113
+ "result_error_message",
114
+ "actual_output_meta",
115
+ ])
116
+
117
+ _dict = self.model_dump(
118
+ by_alias=True,
119
+ exclude=excluded_fields,
120
+ exclude_none=True,
121
+ )
122
+ # override the default output from pydantic by calling `to_dict()` of each item in relationships (list)
123
+ _items = []
124
+ if self.relationships:
125
+ for _item in self.relationships:
126
+ if _item:
127
+ _items.append(_item.to_dict())
128
+ _dict['relationships'] = _items
129
+ # override the default output from pydantic by calling `to_dict()` of each item in metrics (list)
130
+ _items = []
131
+ if self.metrics:
132
+ for _item in self.metrics:
133
+ if _item:
134
+ _items.append(_item.to_dict())
135
+ _dict['metrics'] = _items
136
+ # override the default output from pydantic by calling `to_dict()` of each item in actual_output_meta (list)
137
+ _items = []
138
+ if self.actual_output_meta:
139
+ for _item in self.actual_output_meta:
140
+ if _item:
141
+ _items.append(_item.to_dict())
142
+ _dict['actualOutputMeta'] = _items
143
+ return _dict
144
+
145
+ @classmethod
146
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
147
+ """Create an instance of V1LeaderboardReportResult from a dict"""
148
+ if obj is None:
149
+ return None
150
+
151
+ if not isinstance(obj, dict):
152
+ return cls.model_validate(obj)
153
+
154
+ _obj = cls.model_validate({
155
+ "key": obj.get("key"),
156
+ "input": obj.get("input"),
157
+ "corpus": obj.get("corpus"),
158
+ "context": obj.get("context"),
159
+ "categories": obj.get("categories"),
160
+ "relationships": [V1LeaderboardReportResultRelationship.from_dict(_item) for _item in obj["relationships"]] if obj.get("relationships") is not None else None,
161
+ "expectedOutput": obj.get("expectedOutput"),
162
+ "outputConstraints": obj.get("outputConstraints"),
163
+ "outputCondition": obj.get("outputCondition"),
164
+ "actualOutput": obj.get("actualOutput"),
165
+ "actualDuration": obj.get("actualDuration"),
166
+ "cost": obj.get("cost"),
167
+ "modelKey": obj.get("modelKey"),
168
+ "testCaseKey": obj.get("testCaseKey"),
169
+ "metrics": [V1MetricScore.from_dict(_item) for _item in obj["metrics"]] if obj.get("metrics") is not None else None,
170
+ "resultErrorMessage": obj.get("resultErrorMessage"),
171
+ "actualOutputMeta": [V1LeaderboardReportActualOutputMeta.from_dict(_item) for _item in obj["actualOutputMeta"]] if obj.get("actualOutputMeta") is not None else None
172
+ })
173
+ return _obj
174
+
175
+