openlayer 0.3.0 → 0.4.0

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 (230) hide show
  1. checksums.yaml +4 -4
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +23 -0
  4. data/README.md +280 -39
  5. data/SECURITY.md +27 -0
  6. data/lib/openlayer/client.rb +64 -59
  7. data/lib/openlayer/errors.rb +228 -0
  8. data/lib/openlayer/file_part.rb +58 -0
  9. data/lib/openlayer/internal/transport/base_client.rb +567 -0
  10. data/lib/openlayer/internal/transport/pooled_net_requester.rb +198 -0
  11. data/lib/openlayer/internal/type/array_of.rb +168 -0
  12. data/lib/openlayer/internal/type/base_model.rb +531 -0
  13. data/lib/openlayer/internal/type/base_page.rb +55 -0
  14. data/lib/openlayer/internal/type/boolean.rb +77 -0
  15. data/lib/openlayer/internal/type/converter.rb +327 -0
  16. data/lib/openlayer/internal/type/enum.rb +131 -0
  17. data/lib/openlayer/internal/type/file_input.rb +111 -0
  18. data/lib/openlayer/internal/type/hash_of.rb +188 -0
  19. data/lib/openlayer/internal/type/request_parameters.rb +42 -0
  20. data/lib/openlayer/internal/type/union.rb +237 -0
  21. data/lib/openlayer/internal/type/unknown.rb +81 -0
  22. data/lib/openlayer/internal/util.rb +915 -0
  23. data/lib/openlayer/internal.rb +20 -0
  24. data/lib/openlayer/models/commit_retrieve_params.rb +14 -0
  25. data/lib/openlayer/models/commit_retrieve_response.rb +275 -0
  26. data/lib/openlayer/models/commits/test_result_list_params.rb +91 -0
  27. data/lib/openlayer/models/commits/test_result_list_response.rb +566 -0
  28. data/lib/openlayer/models/inference_pipeline_delete_params.rb +14 -0
  29. data/lib/openlayer/models/inference_pipeline_retrieve_params.rb +33 -0
  30. data/lib/openlayer/models/inference_pipeline_retrieve_response.rb +605 -0
  31. data/lib/openlayer/models/inference_pipeline_update_params.rb +42 -0
  32. data/lib/openlayer/models/inference_pipeline_update_response.rb +605 -0
  33. data/lib/openlayer/models/inference_pipelines/data_stream_params.rb +463 -0
  34. data/lib/openlayer/models/inference_pipelines/data_stream_response.rb +28 -0
  35. data/lib/openlayer/models/inference_pipelines/row_update_params.rb +90 -0
  36. data/lib/openlayer/models/inference_pipelines/row_update_response.rb +28 -0
  37. data/lib/openlayer/models/inference_pipelines/test_result_list_params.rb +83 -0
  38. data/lib/openlayer/models/inference_pipelines/test_result_list_response.rb +568 -0
  39. data/lib/openlayer/models/project_create_params.rb +51 -0
  40. data/lib/openlayer/models/project_create_response.rb +262 -0
  41. data/lib/openlayer/models/project_list_params.rb +59 -0
  42. data/lib/openlayer/models/project_list_response.rb +274 -0
  43. data/lib/openlayer/models/projects/commit_create_params.rb +61 -0
  44. data/lib/openlayer/models/projects/commit_create_response.rb +277 -0
  45. data/lib/openlayer/models/projects/commit_list_params.rb +32 -0
  46. data/lib/openlayer/models/projects/commit_list_response.rb +288 -0
  47. data/lib/openlayer/models/projects/inference_pipeline_create_params.rb +229 -0
  48. data/lib/openlayer/models/projects/inference_pipeline_create_response.rb +612 -0
  49. data/lib/openlayer/models/projects/inference_pipeline_list_params.rb +40 -0
  50. data/lib/openlayer/models/projects/inference_pipeline_list_response.rb +623 -0
  51. data/lib/openlayer/models/projects/test_create_params.rb +367 -0
  52. data/lib/openlayer/models/projects/test_create_response.rb +438 -0
  53. data/lib/openlayer/models/projects/test_list_params.rb +91 -0
  54. data/lib/openlayer/models/projects/test_list_response.rb +452 -0
  55. data/lib/openlayer/models/projects/test_update_params.rb +262 -0
  56. data/lib/openlayer/models/projects/test_update_response.rb +24 -0
  57. data/lib/openlayer/models/storage/presigned_url_create_params.rb +24 -0
  58. data/lib/openlayer/models/storage/presigned_url_create_response.rb +35 -0
  59. data/lib/openlayer/models.rb +61 -0
  60. data/lib/openlayer/request_options.rb +77 -0
  61. data/lib/openlayer/resources/commits/test_results.rb +51 -0
  62. data/lib/openlayer/resources/commits.rb +38 -0
  63. data/lib/openlayer/resources/inference_pipelines/data.rb +46 -0
  64. data/lib/openlayer/resources/inference_pipelines/rows.rb +46 -0
  65. data/lib/openlayer/resources/inference_pipelines/test_results.rb +49 -0
  66. data/lib/openlayer/resources/inference_pipelines.rb +101 -0
  67. data/lib/openlayer/resources/projects/commits.rb +72 -0
  68. data/lib/openlayer/resources/projects/inference_pipelines.rb +74 -0
  69. data/lib/openlayer/resources/projects/tests.rb +135 -0
  70. data/lib/openlayer/resources/projects.rb +80 -0
  71. data/lib/openlayer/resources/storage/presigned_url.rb +38 -0
  72. data/lib/openlayer/resources/storage.rb +18 -0
  73. data/lib/openlayer/version.rb +1 -1
  74. data/lib/openlayer.rb +96 -12
  75. data/manifest.yaml +15 -0
  76. data/rbi/openlayer/client.rbi +58 -0
  77. data/rbi/openlayer/errors.rbi +205 -0
  78. data/rbi/openlayer/file_part.rbi +37 -0
  79. data/rbi/openlayer/internal/transport/base_client.rbi +293 -0
  80. data/rbi/openlayer/internal/transport/pooled_net_requester.rbi +79 -0
  81. data/rbi/openlayer/internal/type/array_of.rbi +104 -0
  82. data/rbi/openlayer/internal/type/base_model.rbi +304 -0
  83. data/rbi/openlayer/internal/type/base_page.rbi +42 -0
  84. data/rbi/openlayer/internal/type/boolean.rbi +58 -0
  85. data/rbi/openlayer/internal/type/converter.rbi +216 -0
  86. data/rbi/openlayer/internal/type/enum.rbi +82 -0
  87. data/rbi/openlayer/internal/type/file_input.rbi +59 -0
  88. data/rbi/openlayer/internal/type/hash_of.rbi +104 -0
  89. data/rbi/openlayer/internal/type/request_parameters.rbi +29 -0
  90. data/rbi/openlayer/internal/type/union.rbi +128 -0
  91. data/rbi/openlayer/internal/type/unknown.rbi +58 -0
  92. data/rbi/openlayer/internal/util.rbi +487 -0
  93. data/rbi/openlayer/internal.rbi +18 -0
  94. data/rbi/openlayer/models/commit_retrieve_params.rbi +27 -0
  95. data/rbi/openlayer/models/commit_retrieve_response.rbi +393 -0
  96. data/rbi/openlayer/models/commits/test_result_list_params.rbi +214 -0
  97. data/rbi/openlayer/models/commits/test_result_list_response.rbi +1256 -0
  98. data/rbi/openlayer/models/inference_pipeline_delete_params.rbi +30 -0
  99. data/rbi/openlayer/models/inference_pipeline_retrieve_params.rbi +101 -0
  100. data/rbi/openlayer/models/inference_pipeline_retrieve_response.rbi +1022 -0
  101. data/rbi/openlayer/models/inference_pipeline_update_params.rbi +67 -0
  102. data/rbi/openlayer/models/inference_pipeline_update_response.rbi +1018 -0
  103. data/rbi/openlayer/models/inference_pipelines/data_stream_params.rbi +750 -0
  104. data/rbi/openlayer/models/inference_pipelines/data_stream_response.rbi +73 -0
  105. data/rbi/openlayer/models/inference_pipelines/row_update_params.rbi +153 -0
  106. data/rbi/openlayer/models/inference_pipelines/row_update_response.rbi +73 -0
  107. data/rbi/openlayer/models/inference_pipelines/test_result_list_params.rbi +216 -0
  108. data/rbi/openlayer/models/inference_pipelines/test_result_list_response.rbi +1258 -0
  109. data/rbi/openlayer/models/project_create_params.rbi +99 -0
  110. data/rbi/openlayer/models/project_create_response.rbi +401 -0
  111. data/rbi/openlayer/models/project_list_params.rbi +121 -0
  112. data/rbi/openlayer/models/project_list_response.rbi +442 -0
  113. data/rbi/openlayer/models/projects/commit_create_params.rbi +125 -0
  114. data/rbi/openlayer/models/projects/commit_create_response.rbi +409 -0
  115. data/rbi/openlayer/models/projects/commit_list_params.rbi +62 -0
  116. data/rbi/openlayer/models/projects/commit_list_response.rbi +454 -0
  117. data/rbi/openlayer/models/projects/inference_pipeline_create_params.rbi +560 -0
  118. data/rbi/openlayer/models/projects/inference_pipeline_create_response.rbi +1027 -0
  119. data/rbi/openlayer/models/projects/inference_pipeline_list_params.rbi +73 -0
  120. data/rbi/openlayer/models/projects/inference_pipeline_list_response.rbi +1070 -0
  121. data/rbi/openlayer/models/projects/test_create_params.rbi +940 -0
  122. data/rbi/openlayer/models/projects/test_create_response.rbi +1026 -0
  123. data/rbi/openlayer/models/projects/test_list_params.rbi +165 -0
  124. data/rbi/openlayer/models/projects/test_list_response.rbi +1067 -0
  125. data/rbi/openlayer/models/projects/test_update_params.rbi +699 -0
  126. data/rbi/openlayer/models/projects/test_update_response.rbi +43 -0
  127. data/rbi/openlayer/models/storage/presigned_url_create_params.rbi +45 -0
  128. data/rbi/openlayer/models/storage/presigned_url_create_response.rbi +55 -0
  129. data/rbi/openlayer/models.rbi +26 -0
  130. data/rbi/openlayer/request_options.rbi +59 -0
  131. data/rbi/openlayer/resources/commits/test_results.rbi +45 -0
  132. data/rbi/openlayer/resources/commits.rbi +29 -0
  133. data/rbi/openlayer/resources/inference_pipelines/data.rbi +41 -0
  134. data/rbi/openlayer/resources/inference_pipelines/rows.rbi +40 -0
  135. data/rbi/openlayer/resources/inference_pipelines/test_results.rbi +46 -0
  136. data/rbi/openlayer/resources/inference_pipelines.rbi +79 -0
  137. data/rbi/openlayer/resources/projects/commits.rbi +60 -0
  138. data/rbi/openlayer/resources/projects/inference_pipelines.rbi +69 -0
  139. data/rbi/openlayer/resources/projects/tests.rbi +123 -0
  140. data/rbi/openlayer/resources/projects.rbi +64 -0
  141. data/rbi/openlayer/resources/storage/presigned_url.rbi +28 -0
  142. data/rbi/openlayer/resources/storage.rbi +15 -0
  143. data/rbi/openlayer/version.rbi +5 -0
  144. data/sig/openlayer/client.rbs +32 -0
  145. data/sig/openlayer/errors.rbs +117 -0
  146. data/sig/openlayer/file_part.rbs +21 -0
  147. data/sig/openlayer/internal/transport/base_client.rbs +131 -0
  148. data/sig/openlayer/internal/transport/pooled_net_requester.rbs +45 -0
  149. data/sig/openlayer/internal/type/array_of.rbs +48 -0
  150. data/sig/openlayer/internal/type/base_model.rbs +102 -0
  151. data/sig/openlayer/internal/type/base_page.rbs +24 -0
  152. data/sig/openlayer/internal/type/boolean.rbs +26 -0
  153. data/sig/openlayer/internal/type/converter.rbs +79 -0
  154. data/sig/openlayer/internal/type/enum.rbs +32 -0
  155. data/sig/openlayer/internal/type/file_input.rbs +25 -0
  156. data/sig/openlayer/internal/type/hash_of.rbs +48 -0
  157. data/sig/openlayer/internal/type/request_parameters.rbs +19 -0
  158. data/sig/openlayer/internal/type/union.rbs +52 -0
  159. data/sig/openlayer/internal/type/unknown.rbs +26 -0
  160. data/sig/openlayer/internal/util.rbs +185 -0
  161. data/sig/openlayer/internal.rbs +9 -0
  162. data/sig/openlayer/models/commit_retrieve_params.rbs +15 -0
  163. data/sig/openlayer/models/commit_retrieve_response.rbs +209 -0
  164. data/sig/openlayer/models/commits/test_result_list_params.rbs +91 -0
  165. data/sig/openlayer/models/commits/test_result_list_response.rbs +529 -0
  166. data/sig/openlayer/models/inference_pipeline_delete_params.rbs +15 -0
  167. data/sig/openlayer/models/inference_pipeline_retrieve_params.rbs +41 -0
  168. data/sig/openlayer/models/inference_pipeline_retrieve_response.rbs +493 -0
  169. data/sig/openlayer/models/inference_pipeline_update_params.rbs +34 -0
  170. data/sig/openlayer/models/inference_pipeline_update_response.rbs +493 -0
  171. data/sig/openlayer/models/inference_pipelines/data_stream_params.rbs +386 -0
  172. data/sig/openlayer/models/inference_pipelines/data_stream_response.rbs +32 -0
  173. data/sig/openlayer/models/inference_pipelines/row_update_params.rbs +75 -0
  174. data/sig/openlayer/models/inference_pipelines/row_update_response.rbs +32 -0
  175. data/sig/openlayer/models/inference_pipelines/test_result_list_params.rbs +84 -0
  176. data/sig/openlayer/models/inference_pipelines/test_result_list_response.rbs +529 -0
  177. data/sig/openlayer/models/project_create_params.rbs +53 -0
  178. data/sig/openlayer/models/project_create_response.rbs +210 -0
  179. data/sig/openlayer/models/project_list_params.rbs +68 -0
  180. data/sig/openlayer/models/project_list_response.rbs +225 -0
  181. data/sig/openlayer/models/projects/commit_create_params.rbs +82 -0
  182. data/sig/openlayer/models/projects/commit_create_response.rbs +211 -0
  183. data/sig/openlayer/models/projects/commit_list_params.rbs +34 -0
  184. data/sig/openlayer/models/projects/commit_list_response.rbs +228 -0
  185. data/sig/openlayer/models/projects/inference_pipeline_create_params.rbs +308 -0
  186. data/sig/openlayer/models/projects/inference_pipeline_create_response.rbs +495 -0
  187. data/sig/openlayer/models/projects/inference_pipeline_list_params.rbs +40 -0
  188. data/sig/openlayer/models/projects/inference_pipeline_list_response.rbs +512 -0
  189. data/sig/openlayer/models/projects/test_create_params.rbs +388 -0
  190. data/sig/openlayer/models/projects/test_create_response.rbs +427 -0
  191. data/sig/openlayer/models/projects/test_list_params.rbs +85 -0
  192. data/sig/openlayer/models/projects/test_list_response.rbs +442 -0
  193. data/sig/openlayer/models/projects/test_update_params.rbs +275 -0
  194. data/sig/openlayer/models/projects/test_update_response.rbs +25 -0
  195. data/sig/openlayer/models/storage/presigned_url_create_params.rbs +25 -0
  196. data/sig/openlayer/models/storage/presigned_url_create_response.rbs +22 -0
  197. data/sig/openlayer/models.rbs +21 -0
  198. data/sig/openlayer/request_options.rbs +34 -0
  199. data/sig/openlayer/resources/commits/test_results.rbs +19 -0
  200. data/sig/openlayer/resources/commits.rbs +14 -0
  201. data/sig/openlayer/resources/inference_pipelines/data.rbs +16 -0
  202. data/sig/openlayer/resources/inference_pipelines/rows.rbs +17 -0
  203. data/sig/openlayer/resources/inference_pipelines/test_results.rbs +18 -0
  204. data/sig/openlayer/resources/inference_pipelines.rbs +32 -0
  205. data/sig/openlayer/resources/projects/commits.rbs +25 -0
  206. data/sig/openlayer/resources/projects/inference_pipelines.rbs +26 -0
  207. data/sig/openlayer/resources/projects/tests.rbs +45 -0
  208. data/sig/openlayer/resources/projects.rbs +28 -0
  209. data/sig/openlayer/resources/storage/presigned_url.rbs +14 -0
  210. data/sig/openlayer/resources/storage.rbs +9 -0
  211. data/sig/openlayer/version.rbs +3 -0
  212. metadata +223 -91
  213. data/.env +0 -0
  214. data/.rspec +0 -3
  215. data/.rubocop.yml +0 -13
  216. data/LICENSE +0 -21
  217. data/Rakefile +0 -12
  218. data/examples/staging/.DS_Store +0 -0
  219. data/examples/staging/commit.yaml +0 -2
  220. data/examples/staging/model/model_config.yaml +0 -12
  221. data/examples/staging/validation/dataset_config.yaml +0 -12
  222. data/lib/openlayer/error.rb +0 -5
  223. data/lib/openlayer/inference_pipeline.rb +0 -36
  224. data/lib/openlayer/object.rb +0 -28
  225. data/lib/openlayer/objects/project.rb +0 -185
  226. data/lib/openlayer/objects/project_version.rb +0 -89
  227. data/lib/openlayer/services/s3_presigned_client.rb +0 -47
  228. data/lib/openlayer/services/tar_file_helper.rb +0 -55
  229. data/openlayer.gemspec +0 -45
  230. data/sig/openlayer.rbs +0 -4
@@ -0,0 +1,566 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Openlayer
4
+ module Models
5
+ module Commits
6
+ # @see Openlayer::Resources::Commits::TestResults#list
7
+ class TestResultListResponse < Openlayer::Internal::Type::BaseModel
8
+ # @!attribute items
9
+ #
10
+ # @return [Array<Openlayer::Models::Commits::TestResultListResponse::Item>]
11
+ required :items,
12
+ -> { Openlayer::Internal::Type::ArrayOf[Openlayer::Models::Commits::TestResultListResponse::Item] }
13
+
14
+ # @!method initialize(items:)
15
+ # @param items [Array<Openlayer::Models::Commits::TestResultListResponse::Item>]
16
+
17
+ class Item < Openlayer::Internal::Type::BaseModel
18
+ # @!attribute status
19
+ # The status of the test.
20
+ #
21
+ # @return [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Status]
22
+ required :status, enum: -> { Openlayer::Models::Commits::TestResultListResponse::Item::Status }
23
+
24
+ # @!attribute status_message
25
+ # The status message.
26
+ #
27
+ # @return [String, nil]
28
+ required :status_message, String, api_name: :statusMessage, nil?: true
29
+
30
+ # @!attribute goal
31
+ #
32
+ # @return [Openlayer::Models::Commits::TestResultListResponse::Item::Goal, nil]
33
+ optional :goal, -> { Openlayer::Models::Commits::TestResultListResponse::Item::Goal }
34
+
35
+ response_only do
36
+ # @!attribute id
37
+ # Project version (commit) id.
38
+ #
39
+ # @return [String]
40
+ required :id, String
41
+
42
+ # @!attribute date_created
43
+ # The creation date.
44
+ #
45
+ # @return [Time]
46
+ required :date_created, Time, api_name: :dateCreated
47
+
48
+ # @!attribute date_data_ends
49
+ # The data end date.
50
+ #
51
+ # @return [Time, nil]
52
+ required :date_data_ends, Time, api_name: :dateDataEnds, nil?: true
53
+
54
+ # @!attribute date_data_starts
55
+ # The data start date.
56
+ #
57
+ # @return [Time, nil]
58
+ required :date_data_starts, Time, api_name: :dateDataStarts, nil?: true
59
+
60
+ # @!attribute date_updated
61
+ # The last updated date.
62
+ #
63
+ # @return [Time]
64
+ required :date_updated, Time, api_name: :dateUpdated
65
+
66
+ # @!attribute inference_pipeline_id
67
+ # The inference pipeline id.
68
+ #
69
+ # @return [String, nil]
70
+ required :inference_pipeline_id, String, api_name: :inferencePipelineId, nil?: true
71
+
72
+ # @!attribute project_version_id
73
+ # The project version (commit) id.
74
+ #
75
+ # @return [String, nil]
76
+ required :project_version_id, String, api_name: :projectVersionId, nil?: true
77
+
78
+ # @!attribute goal_id
79
+ # The test id.
80
+ #
81
+ # @return [String, nil]
82
+ optional :goal_id, String, api_name: :goalId, nil?: true
83
+ end
84
+
85
+ # @!method initialize(id:, date_created:, date_data_ends:, date_data_starts:, date_updated:, inference_pipeline_id:, project_version_id:, status:, status_message:, goal: nil, goal_id: nil)
86
+ # @param id [String] Project version (commit) id.
87
+ #
88
+ # @param date_created [Time] The creation date.
89
+ #
90
+ # @param date_data_ends [Time, nil] The data end date.
91
+ #
92
+ # @param date_data_starts [Time, nil] The data start date.
93
+ #
94
+ # @param date_updated [Time] The last updated date.
95
+ #
96
+ # @param inference_pipeline_id [String, nil] The inference pipeline id.
97
+ #
98
+ # @param project_version_id [String, nil] The project version (commit) id.
99
+ #
100
+ # @param status [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Status] The status of the test.
101
+ #
102
+ # @param status_message [String, nil] The status message.
103
+ #
104
+ # @param goal [Openlayer::Models::Commits::TestResultListResponse::Item::Goal]
105
+ #
106
+ # @param goal_id [String, nil] The test id.
107
+
108
+ # The status of the test.
109
+ #
110
+ # @see Openlayer::Models::Commits::TestResultListResponse::Item#status
111
+ module Status
112
+ extend Openlayer::Internal::Type::Enum
113
+
114
+ RUNNING = :running
115
+ PASSING = :passing
116
+ FAILING = :failing
117
+ SKIPPED = :skipped
118
+ ERROR = :error
119
+
120
+ # @!method self.values
121
+ # @return [Array<Symbol>]
122
+ end
123
+
124
+ # @see Openlayer::Models::Commits::TestResultListResponse::Item#goal
125
+ class Goal < Openlayer::Internal::Type::BaseModel
126
+ # @!attribute description
127
+ # The test description.
128
+ #
129
+ # @return [Object, nil]
130
+ required :description, Openlayer::Internal::Type::Unknown, nil?: true
131
+
132
+ # @!attribute name
133
+ # The test name.
134
+ #
135
+ # @return [String]
136
+ required :name, String
137
+
138
+ # @!attribute subtype
139
+ # The test subtype.
140
+ #
141
+ # @return [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Subtype]
142
+ required :subtype, enum: -> { Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Subtype }
143
+
144
+ # @!attribute thresholds
145
+ #
146
+ # @return [Array<Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold>]
147
+ required :thresholds,
148
+ -> { Openlayer::Internal::Type::ArrayOf[Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold] }
149
+
150
+ # @!attribute type
151
+ # The test type.
152
+ #
153
+ # @return [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Type]
154
+ required :type, enum: -> { Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Type }
155
+
156
+ # @!attribute archived
157
+ # Whether the test is archived.
158
+ #
159
+ # @return [Boolean, nil]
160
+ optional :archived, Openlayer::Internal::Type::Boolean
161
+
162
+ # @!attribute delay_window
163
+ # The delay window in seconds. Only applies to tests that use production data.
164
+ #
165
+ # @return [Float, nil]
166
+ optional :delay_window, Float, api_name: :delayWindow, nil?: true
167
+
168
+ # @!attribute evaluation_window
169
+ # The evaluation window in seconds. Only applies to tests that use production
170
+ # data.
171
+ #
172
+ # @return [Float, nil]
173
+ optional :evaluation_window, Float, api_name: :evaluationWindow, nil?: true
174
+
175
+ # @!attribute uses_ml_model
176
+ # Whether the test uses an ML model.
177
+ #
178
+ # @return [Boolean, nil]
179
+ optional :uses_ml_model, Openlayer::Internal::Type::Boolean, api_name: :usesMlModel
180
+
181
+ # @!attribute uses_production_data
182
+ # Whether the test uses production data (monitoring mode only).
183
+ #
184
+ # @return [Boolean, nil]
185
+ optional :uses_production_data, Openlayer::Internal::Type::Boolean, api_name: :usesProductionData
186
+
187
+ # @!attribute uses_reference_dataset
188
+ # Whether the test uses a reference dataset (monitoring mode only).
189
+ #
190
+ # @return [Boolean, nil]
191
+ optional :uses_reference_dataset,
192
+ Openlayer::Internal::Type::Boolean,
193
+ api_name: :usesReferenceDataset
194
+
195
+ # @!attribute uses_training_dataset
196
+ # Whether the test uses a training dataset.
197
+ #
198
+ # @return [Boolean, nil]
199
+ optional :uses_training_dataset,
200
+ Openlayer::Internal::Type::Boolean,
201
+ api_name: :usesTrainingDataset
202
+
203
+ # @!attribute uses_validation_dataset
204
+ # Whether the test uses a validation dataset.
205
+ #
206
+ # @return [Boolean, nil]
207
+ optional :uses_validation_dataset,
208
+ Openlayer::Internal::Type::Boolean,
209
+ api_name: :usesValidationDataset
210
+
211
+ response_only do
212
+ # @!attribute id
213
+ # The test id.
214
+ #
215
+ # @return [String]
216
+ required :id, String
217
+
218
+ # @!attribute comment_count
219
+ # The number of comments on the test.
220
+ #
221
+ # @return [Integer]
222
+ required :comment_count, Integer, api_name: :commentCount
223
+
224
+ # @!attribute creator_id
225
+ # The test creator id.
226
+ #
227
+ # @return [String, nil]
228
+ required :creator_id, String, api_name: :creatorId, nil?: true
229
+
230
+ # @!attribute date_archived
231
+ # The date the test was archived.
232
+ #
233
+ # @return [Time, nil]
234
+ required :date_archived, Time, api_name: :dateArchived, nil?: true
235
+
236
+ # @!attribute date_created
237
+ # The creation date.
238
+ #
239
+ # @return [Time]
240
+ required :date_created, Time, api_name: :dateCreated
241
+
242
+ # @!attribute date_updated
243
+ # The last updated date.
244
+ #
245
+ # @return [Time]
246
+ required :date_updated, Time, api_name: :dateUpdated
247
+
248
+ # @!attribute number
249
+ # The test number.
250
+ #
251
+ # @return [Integer]
252
+ required :number, Integer
253
+
254
+ # @!attribute origin_project_version_id
255
+ # The project version (commit) id where the test was created.
256
+ #
257
+ # @return [String, nil]
258
+ required :origin_project_version_id, String, api_name: :originProjectVersionId, nil?: true
259
+
260
+ # @!attribute suggested
261
+ # Whether the test is suggested or user-created.
262
+ #
263
+ # @return [Boolean]
264
+ required :suggested, Openlayer::Internal::Type::Boolean
265
+ end
266
+
267
+ # @!method initialize(id:, comment_count:, creator_id:, date_archived:, date_created:, date_updated:, description:, name:, number:, origin_project_version_id:, subtype:, suggested:, thresholds:, type:, archived: nil, delay_window: nil, evaluation_window: nil, uses_ml_model: nil, uses_production_data: nil, uses_reference_dataset: nil, uses_training_dataset: nil, uses_validation_dataset: nil)
268
+ # Some parameter documentations has been truncated, see
269
+ # {Openlayer::Models::Commits::TestResultListResponse::Item::Goal} for more
270
+ # details.
271
+ #
272
+ # @param id [String] The test id.
273
+ #
274
+ # @param comment_count [Integer] The number of comments on the test.
275
+ #
276
+ # @param creator_id [String, nil] The test creator id.
277
+ #
278
+ # @param date_archived [Time, nil] The date the test was archived.
279
+ #
280
+ # @param date_created [Time] The creation date.
281
+ #
282
+ # @param date_updated [Time] The last updated date.
283
+ #
284
+ # @param description [Object, nil] The test description.
285
+ #
286
+ # @param name [String] The test name.
287
+ #
288
+ # @param number [Integer] The test number.
289
+ #
290
+ # @param origin_project_version_id [String, nil] The project version (commit) id where the test was created.
291
+ #
292
+ # @param subtype [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Subtype] The test subtype.
293
+ #
294
+ # @param suggested [Boolean] Whether the test is suggested or user-created.
295
+ #
296
+ # @param thresholds [Array<Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold>]
297
+ #
298
+ # @param type [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Type] The test type.
299
+ #
300
+ # @param archived [Boolean] Whether the test is archived.
301
+ #
302
+ # @param delay_window [Float, nil] The delay window in seconds. Only applies to tests that use production data.
303
+ #
304
+ # @param evaluation_window [Float, nil] The evaluation window in seconds. Only applies to tests that use production data
305
+ #
306
+ # @param uses_ml_model [Boolean] Whether the test uses an ML model.
307
+ #
308
+ # @param uses_production_data [Boolean] Whether the test uses production data (monitoring mode only).
309
+ #
310
+ # @param uses_reference_dataset [Boolean] Whether the test uses a reference dataset (monitoring mode only).
311
+ #
312
+ # @param uses_training_dataset [Boolean] Whether the test uses a training dataset.
313
+ #
314
+ # @param uses_validation_dataset [Boolean] Whether the test uses a validation dataset.
315
+
316
+ # The test subtype.
317
+ #
318
+ # @see Openlayer::Models::Commits::TestResultListResponse::Item::Goal#subtype
319
+ module Subtype
320
+ extend Openlayer::Internal::Type::Enum
321
+
322
+ ANOMALOUS_COLUMN_COUNT = :anomalousColumnCount
323
+ CHARACTER_LENGTH = :characterLength
324
+ CLASS_IMBALANCE_RATIO = :classImbalanceRatio
325
+ EXPECT_COLUMN_A_TO_BE_IN_COLUMN_B = :expectColumnAToBeInColumnB
326
+ COLUMN_AVERAGE = :columnAverage
327
+ COLUMN_DRIFT = :columnDrift
328
+ COLUMN_STATISTIC = :columnStatistic
329
+ COLUMN_VALUES_MATCH = :columnValuesMatch
330
+ CONFLICTING_LABEL_ROW_COUNT = :conflictingLabelRowCount
331
+ CONTAINS_PII = :containsPii
332
+ CONTAINS_VALID_URL = :containsValidUrl
333
+ CORRELATED_FEATURE_COUNT = :correlatedFeatureCount
334
+ CUSTOM_METRIC_THRESHOLD = :customMetricThreshold
335
+ DUPLICATE_ROW_COUNT = :duplicateRowCount
336
+ EMPTY_FEATURE = :emptyFeature
337
+ EMPTY_FEATURE_COUNT = :emptyFeatureCount
338
+ DRIFTED_FEATURE_COUNT = :driftedFeatureCount
339
+ FEATURE_MISSING_VALUES = :featureMissingValues
340
+ FEATURE_VALUE_VALIDATION = :featureValueValidation
341
+ GREAT_EXPECTATIONS = :greatExpectations
342
+ GROUP_BY_COLUMN_STATS_CHECK = :groupByColumnStatsCheck
343
+ ILL_FORMED_ROW_COUNT = :illFormedRowCount
344
+ IS_CODE = :isCode
345
+ IS_JSON = :isJson
346
+ LLM_RUBRIC_THRESHOLD_V2 = :llmRubricThresholdV2
347
+ LABEL_DRIFT = :labelDrift
348
+ METRIC_THRESHOLD = :metricThreshold
349
+ NEW_CATEGORY_COUNT = :newCategoryCount
350
+ NEW_LABEL_COUNT = :newLabelCount
351
+ NULL_ROW_COUNT = :nullRowCount
352
+ ROW_COUNT = :rowCount
353
+ PP_SCORE_VALUE_VALIDATION = :ppScoreValueValidation
354
+ QUASI_CONSTANT_FEATURE = :quasiConstantFeature
355
+ QUASI_CONSTANT_FEATURE_COUNT = :quasiConstantFeatureCount
356
+ SQL_QUERY = :sqlQuery
357
+ DTYPE_VALIDATION = :dtypeValidation
358
+ SENTENCE_LENGTH = :sentenceLength
359
+ SIZE_RATIO = :sizeRatio
360
+ SPECIAL_CHARACTERS_RATIO = :specialCharactersRatio
361
+ STRING_VALIDATION = :stringValidation
362
+ TRAIN_VAL_LEAKAGE_ROW_COUNT = :trainValLeakageRowCount
363
+
364
+ # @!method self.values
365
+ # @return [Array<Symbol>]
366
+ end
367
+
368
+ class Threshold < Openlayer::Internal::Type::BaseModel
369
+ # @!attribute insight_name
370
+ # The insight name to be evaluated.
371
+ #
372
+ # @return [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::InsightName, nil]
373
+ optional :insight_name,
374
+ enum: -> { Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::InsightName },
375
+ api_name: :insightName
376
+
377
+ # @!attribute insight_parameters
378
+ # The insight parameters. Required only for some test subtypes. For example, for
379
+ # tests that require a column name, the insight parameters will be [{'name':
380
+ # 'column_name', 'value': 'Age'}]
381
+ #
382
+ # @return [Array<Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::InsightParameter>, nil]
383
+ optional :insight_parameters,
384
+ -> { Openlayer::Internal::Type::ArrayOf[Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::InsightParameter] },
385
+ api_name: :insightParameters,
386
+ nil?: true
387
+
388
+ # @!attribute measurement
389
+ # The measurement to be evaluated.
390
+ #
391
+ # @return [String, nil]
392
+ optional :measurement, String
393
+
394
+ # @!attribute operator
395
+ # The operator to be used for the evaluation.
396
+ #
397
+ # @return [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::Operator, nil]
398
+ optional :operator,
399
+ enum: -> { Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::Operator }
400
+
401
+ # @!attribute threshold_mode
402
+ # Whether to use automatic anomaly detection or manual thresholds
403
+ #
404
+ # @return [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::ThresholdMode, nil]
405
+ optional :threshold_mode,
406
+ enum: -> { Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::ThresholdMode },
407
+ api_name: :thresholdMode
408
+
409
+ # @!attribute value
410
+ # The value to be compared.
411
+ #
412
+ # @return [Float, Boolean, String, Array<String>, nil]
413
+ optional :value,
414
+ union: -> { Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::Value }
415
+
416
+ # @!method initialize(insight_name: nil, insight_parameters: nil, measurement: nil, operator: nil, threshold_mode: nil, value: nil)
417
+ # Some parameter documentations has been truncated, see
418
+ # {Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold} for
419
+ # more details.
420
+ #
421
+ # @param insight_name [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::InsightName] The insight name to be evaluated.
422
+ #
423
+ # @param insight_parameters [Array<Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::InsightParameter>, nil] The insight parameters. Required only for some test subtypes. For example, for t
424
+ #
425
+ # @param measurement [String] The measurement to be evaluated.
426
+ #
427
+ # @param operator [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::Operator] The operator to be used for the evaluation.
428
+ #
429
+ # @param threshold_mode [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::ThresholdMode] Whether to use automatic anomaly detection or manual thresholds
430
+ #
431
+ # @param value [Float, Boolean, String, Array<String>] The value to be compared.
432
+
433
+ # The insight name to be evaluated.
434
+ #
435
+ # @see Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold#insight_name
436
+ module InsightName
437
+ extend Openlayer::Internal::Type::Enum
438
+
439
+ CHARACTER_LENGTH = :characterLength
440
+ CLASS_IMBALANCE = :classImbalance
441
+ EXPECT_COLUMN_A_TO_BE_IN_COLUMN_B = :expectColumnAToBeInColumnB
442
+ COLUMN_AVERAGE = :columnAverage
443
+ COLUMN_DRIFT = :columnDrift
444
+ COLUMN_VALUES_MATCH = :columnValuesMatch
445
+ CONFIDENCE_DISTRIBUTION = :confidenceDistribution
446
+ CONFLICTING_LABEL_ROW_COUNT = :conflictingLabelRowCount
447
+ CONTAINS_PII = :containsPii
448
+ CONTAINS_VALID_URL = :containsValidUrl
449
+ CORRELATED_FEATURES = :correlatedFeatures
450
+ CUSTOM_METRIC = :customMetric
451
+ DUPLICATE_ROW_COUNT = :duplicateRowCount
452
+ EMPTY_FEATURES = :emptyFeatures
453
+ FEATURE_DRIFT = :featureDrift
454
+ FEATURE_PROFILE = :featureProfile
455
+ GREAT_EXPECTATIONS = :greatExpectations
456
+ GROUP_BY_COLUMN_STATS_CHECK = :groupByColumnStatsCheck
457
+ ILL_FORMED_ROW_COUNT = :illFormedRowCount
458
+ IS_CODE = :isCode
459
+ IS_JSON = :isJson
460
+ LLM_RUBRIC_V2 = :llmRubricV2
461
+ LABEL_DRIFT = :labelDrift
462
+ METRICS = :metrics
463
+ NEW_CATEGORIES = :newCategories
464
+ NEW_LABELS = :newLabels
465
+ NULL_ROW_COUNT = :nullRowCount
466
+ PP_SCORE = :ppScore
467
+ QUASI_CONSTANT_FEATURES = :quasiConstantFeatures
468
+ SENTENCE_LENGTH = :sentenceLength
469
+ SIZE_RATIO = :sizeRatio
470
+ SPECIAL_CHARACTERS = :specialCharacters
471
+ STRING_VALIDATION = :stringValidation
472
+ TRAIN_VAL_LEAKAGE_ROW_COUNT = :trainValLeakageRowCount
473
+
474
+ # @!method self.values
475
+ # @return [Array<Symbol>]
476
+ end
477
+
478
+ class InsightParameter < Openlayer::Internal::Type::BaseModel
479
+ # @!attribute name
480
+ # The name of the insight filter.
481
+ #
482
+ # @return [String]
483
+ required :name, String
484
+
485
+ # @!attribute value
486
+ #
487
+ # @return [Object]
488
+ required :value, Openlayer::Internal::Type::Unknown
489
+
490
+ # @!method initialize(name:, value:)
491
+ # @param name [String] The name of the insight filter.
492
+ #
493
+ # @param value [Object]
494
+ end
495
+
496
+ # The operator to be used for the evaluation.
497
+ #
498
+ # @see Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold#operator
499
+ module Operator
500
+ extend Openlayer::Internal::Type::Enum
501
+
502
+ IS = :is
503
+ GREATER = :>
504
+ GREATER_OR_EQUALS = :">="
505
+ LESS = :<
506
+ LESS_OR_EQUALS = :"<="
507
+ NOT_EQUALS = :"!="
508
+
509
+ # @!method self.values
510
+ # @return [Array<Symbol>]
511
+ end
512
+
513
+ # Whether to use automatic anomaly detection or manual thresholds
514
+ #
515
+ # @see Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold#threshold_mode
516
+ module ThresholdMode
517
+ extend Openlayer::Internal::Type::Enum
518
+
519
+ AUTOMATIC = :automatic
520
+ MANUAL = :manual
521
+
522
+ # @!method self.values
523
+ # @return [Array<Symbol>]
524
+ end
525
+
526
+ # The value to be compared.
527
+ #
528
+ # @see Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold#value
529
+ module Value
530
+ extend Openlayer::Internal::Type::Union
531
+
532
+ variant Float
533
+
534
+ variant Openlayer::Internal::Type::Boolean
535
+
536
+ variant String
537
+
538
+ variant -> { Openlayer::Models::Commits::TestResultListResponse::Item::Goal::Threshold::Value::StringArray }
539
+
540
+ # @!method self.variants
541
+ # @return [Array(Float, Boolean, String, Array<String>)]
542
+
543
+ # @type [Openlayer::Internal::Type::Converter]
544
+ StringArray = Openlayer::Internal::Type::ArrayOf[String]
545
+ end
546
+ end
547
+
548
+ # The test type.
549
+ #
550
+ # @see Openlayer::Models::Commits::TestResultListResponse::Item::Goal#type
551
+ module Type
552
+ extend Openlayer::Internal::Type::Enum
553
+
554
+ INTEGRITY = :integrity
555
+ CONSISTENCY = :consistency
556
+ PERFORMANCE = :performance
557
+
558
+ # @!method self.values
559
+ # @return [Array<Symbol>]
560
+ end
561
+ end
562
+ end
563
+ end
564
+ end
565
+ end
566
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Openlayer
4
+ module Models
5
+ # @see Openlayer::Resources::InferencePipelines#delete
6
+ class InferencePipelineDeleteParams < Openlayer::Internal::Type::BaseModel
7
+ extend Openlayer::Internal::Type::RequestParameters::Converter
8
+ include Openlayer::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Openlayer
4
+ module Models
5
+ # @see Openlayer::Resources::InferencePipelines#retrieve
6
+ class InferencePipelineRetrieveParams < Openlayer::Internal::Type::BaseModel
7
+ extend Openlayer::Internal::Type::RequestParameters::Converter
8
+ include Openlayer::Internal::Type::RequestParameters
9
+
10
+ # @!attribute expand
11
+ # Expand specific nested objects.
12
+ #
13
+ # @return [Array<Symbol, Openlayer::Models::InferencePipelineRetrieveParams::Expand>, nil]
14
+ optional :expand,
15
+ -> { Openlayer::Internal::Type::ArrayOf[enum: Openlayer::InferencePipelineRetrieveParams::Expand] }
16
+
17
+ # @!method initialize(expand: nil, request_options: {})
18
+ # @param expand [Array<Symbol, Openlayer::Models::InferencePipelineRetrieveParams::Expand>] Expand specific nested objects.
19
+ #
20
+ # @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}]
21
+
22
+ module Expand
23
+ extend Openlayer::Internal::Type::Enum
24
+
25
+ PROJECT = :project
26
+ WORKSPACE = :workspace
27
+
28
+ # @!method self.values
29
+ # @return [Array<Symbol>]
30
+ end
31
+ end
32
+ end
33
+ end