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,1070 @@
1
+ # typed: strong
2
+
3
+ module Openlayer
4
+ module Models
5
+ module Projects
6
+ class InferencePipelineListResponse < Openlayer::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Openlayer::Models::Projects::InferencePipelineListResponse,
11
+ Openlayer::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig do
16
+ returns(
17
+ T::Array[
18
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item
19
+ ]
20
+ )
21
+ end
22
+ attr_accessor :items
23
+
24
+ sig do
25
+ params(
26
+ items:
27
+ T::Array[
28
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::OrHash
29
+ ]
30
+ ).returns(T.attached_class)
31
+ end
32
+ def self.new(items:)
33
+ end
34
+
35
+ sig do
36
+ override.returns(
37
+ {
38
+ items:
39
+ T::Array[
40
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item
41
+ ]
42
+ }
43
+ )
44
+ end
45
+ def to_hash
46
+ end
47
+
48
+ class Item < Openlayer::Internal::Type::BaseModel
49
+ OrHash =
50
+ T.type_alias do
51
+ T.any(
52
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item,
53
+ Openlayer::Internal::AnyHash
54
+ )
55
+ end
56
+
57
+ # The inference pipeline description.
58
+ sig { returns(T.nilable(String)) }
59
+ attr_accessor :description
60
+
61
+ # The inference pipeline name.
62
+ sig { returns(String) }
63
+ attr_accessor :name
64
+
65
+ sig do
66
+ returns(
67
+ T.nilable(
68
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project
69
+ )
70
+ )
71
+ end
72
+ attr_reader :project
73
+
74
+ sig do
75
+ params(
76
+ project:
77
+ T.nilable(
78
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::OrHash
79
+ )
80
+ ).void
81
+ end
82
+ attr_writer :project
83
+
84
+ sig do
85
+ returns(
86
+ T.nilable(
87
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace
88
+ )
89
+ )
90
+ end
91
+ attr_reader :workspace
92
+
93
+ sig do
94
+ params(
95
+ workspace:
96
+ T.nilable(
97
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::OrHash
98
+ )
99
+ ).void
100
+ end
101
+ attr_writer :workspace
102
+
103
+ # The inference pipeline id.
104
+ sig { returns(String) }
105
+ attr_accessor :id
106
+
107
+ # The creation date.
108
+ sig { returns(Time) }
109
+ attr_accessor :date_created
110
+
111
+ # The last test evaluation date.
112
+ sig { returns(T.nilable(Time)) }
113
+ attr_accessor :date_last_evaluated
114
+
115
+ # The last data sample received date.
116
+ sig { returns(T.nilable(Time)) }
117
+ attr_accessor :date_last_sample_received
118
+
119
+ # The next test evaluation date.
120
+ sig { returns(T.nilable(Time)) }
121
+ attr_accessor :date_of_next_evaluation
122
+
123
+ # The last updated date.
124
+ sig { returns(Time) }
125
+ attr_accessor :date_updated
126
+
127
+ # The number of tests failing.
128
+ sig { returns(Integer) }
129
+ attr_accessor :failing_goal_count
130
+
131
+ sig do
132
+ returns(
133
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Links
134
+ )
135
+ end
136
+ attr_reader :links
137
+
138
+ sig do
139
+ params(
140
+ links:
141
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Links::OrHash
142
+ ).void
143
+ end
144
+ attr_writer :links
145
+
146
+ # The number of tests passing.
147
+ sig { returns(Integer) }
148
+ attr_accessor :passing_goal_count
149
+
150
+ # The project id.
151
+ sig { returns(String) }
152
+ attr_accessor :project_id
153
+
154
+ # The status of test evaluation for the inference pipeline.
155
+ sig do
156
+ returns(
157
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::TaggedSymbol
158
+ )
159
+ end
160
+ attr_accessor :status
161
+
162
+ # The status message of test evaluation for the inference pipeline.
163
+ sig { returns(T.nilable(String)) }
164
+ attr_accessor :status_message
165
+
166
+ # The total number of tests.
167
+ sig { returns(Integer) }
168
+ attr_accessor :total_goal_count
169
+
170
+ # The workspace id.
171
+ sig { returns(T.nilable(String)) }
172
+ attr_reader :workspace_id
173
+
174
+ sig { params(workspace_id: String).void }
175
+ attr_writer :workspace_id
176
+
177
+ sig do
178
+ params(
179
+ id: String,
180
+ date_created: Time,
181
+ date_last_evaluated: T.nilable(Time),
182
+ date_last_sample_received: T.nilable(Time),
183
+ date_of_next_evaluation: T.nilable(Time),
184
+ date_updated: Time,
185
+ description: T.nilable(String),
186
+ failing_goal_count: Integer,
187
+ links:
188
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Links::OrHash,
189
+ name: String,
190
+ passing_goal_count: Integer,
191
+ project_id: String,
192
+ status:
193
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::OrSymbol,
194
+ status_message: T.nilable(String),
195
+ total_goal_count: Integer,
196
+ project:
197
+ T.nilable(
198
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::OrHash
199
+ ),
200
+ workspace:
201
+ T.nilable(
202
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::OrHash
203
+ ),
204
+ workspace_id: String
205
+ ).returns(T.attached_class)
206
+ end
207
+ def self.new(
208
+ # The inference pipeline id.
209
+ id:,
210
+ # The creation date.
211
+ date_created:,
212
+ # The last test evaluation date.
213
+ date_last_evaluated:,
214
+ # The last data sample received date.
215
+ date_last_sample_received:,
216
+ # The next test evaluation date.
217
+ date_of_next_evaluation:,
218
+ # The last updated date.
219
+ date_updated:,
220
+ # The inference pipeline description.
221
+ description:,
222
+ # The number of tests failing.
223
+ failing_goal_count:,
224
+ links:,
225
+ # The inference pipeline name.
226
+ name:,
227
+ # The number of tests passing.
228
+ passing_goal_count:,
229
+ # The project id.
230
+ project_id:,
231
+ # The status of test evaluation for the inference pipeline.
232
+ status:,
233
+ # The status message of test evaluation for the inference pipeline.
234
+ status_message:,
235
+ # The total number of tests.
236
+ total_goal_count:,
237
+ project: nil,
238
+ workspace: nil,
239
+ # The workspace id.
240
+ workspace_id: nil
241
+ )
242
+ end
243
+
244
+ sig do
245
+ override.returns(
246
+ {
247
+ id: String,
248
+ date_created: Time,
249
+ date_last_evaluated: T.nilable(Time),
250
+ date_last_sample_received: T.nilable(Time),
251
+ date_of_next_evaluation: T.nilable(Time),
252
+ date_updated: Time,
253
+ description: T.nilable(String),
254
+ failing_goal_count: Integer,
255
+ links:
256
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Links,
257
+ name: String,
258
+ passing_goal_count: Integer,
259
+ project_id: String,
260
+ status:
261
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::TaggedSymbol,
262
+ status_message: T.nilable(String),
263
+ total_goal_count: Integer,
264
+ project:
265
+ T.nilable(
266
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project
267
+ ),
268
+ workspace:
269
+ T.nilable(
270
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace
271
+ ),
272
+ workspace_id: String
273
+ }
274
+ )
275
+ end
276
+ def to_hash
277
+ end
278
+
279
+ class Links < Openlayer::Internal::Type::BaseModel
280
+ OrHash =
281
+ T.type_alias do
282
+ T.any(
283
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Links,
284
+ Openlayer::Internal::AnyHash
285
+ )
286
+ end
287
+
288
+ sig { returns(String) }
289
+ attr_accessor :app
290
+
291
+ sig { params(app: String).returns(T.attached_class) }
292
+ def self.new(app:)
293
+ end
294
+
295
+ sig { override.returns({ app: String }) }
296
+ def to_hash
297
+ end
298
+ end
299
+
300
+ # The status of test evaluation for the inference pipeline.
301
+ module Status
302
+ extend Openlayer::Internal::Type::Enum
303
+
304
+ TaggedSymbol =
305
+ T.type_alias do
306
+ T.all(
307
+ Symbol,
308
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status
309
+ )
310
+ end
311
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
312
+
313
+ QUEUED =
314
+ T.let(
315
+ :queued,
316
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::TaggedSymbol
317
+ )
318
+ RUNNING =
319
+ T.let(
320
+ :running,
321
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::TaggedSymbol
322
+ )
323
+ PAUSED =
324
+ T.let(
325
+ :paused,
326
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::TaggedSymbol
327
+ )
328
+ FAILED =
329
+ T.let(
330
+ :failed,
331
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::TaggedSymbol
332
+ )
333
+ COMPLETED =
334
+ T.let(
335
+ :completed,
336
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::TaggedSymbol
337
+ )
338
+ UNKNOWN =
339
+ T.let(
340
+ :unknown,
341
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::TaggedSymbol
342
+ )
343
+
344
+ sig do
345
+ override.returns(
346
+ T::Array[
347
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::TaggedSymbol
348
+ ]
349
+ )
350
+ end
351
+ def self.values
352
+ end
353
+ end
354
+
355
+ class Project < Openlayer::Internal::Type::BaseModel
356
+ OrHash =
357
+ T.type_alias do
358
+ T.any(
359
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project,
360
+ Openlayer::Internal::AnyHash
361
+ )
362
+ end
363
+
364
+ # The project name.
365
+ sig { returns(String) }
366
+ attr_accessor :name
367
+
368
+ # The task type of the project.
369
+ sig do
370
+ returns(
371
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::TaskType::TaggedSymbol
372
+ )
373
+ end
374
+ attr_accessor :task_type
375
+
376
+ # The project description.
377
+ sig { returns(T.nilable(String)) }
378
+ attr_accessor :description
379
+
380
+ # The project id.
381
+ sig { returns(String) }
382
+ attr_accessor :id
383
+
384
+ # The project creator id.
385
+ sig { returns(T.nilable(String)) }
386
+ attr_accessor :creator_id
387
+
388
+ # The project creation date.
389
+ sig { returns(Time) }
390
+ attr_accessor :date_created
391
+
392
+ # The project last updated date.
393
+ sig { returns(Time) }
394
+ attr_accessor :date_updated
395
+
396
+ # The number of tests in the development mode of the project.
397
+ sig { returns(Integer) }
398
+ attr_accessor :development_goal_count
399
+
400
+ # The total number of tests in the project.
401
+ sig { returns(Integer) }
402
+ attr_accessor :goal_count
403
+
404
+ # The number of inference pipelines in the project.
405
+ sig { returns(Integer) }
406
+ attr_accessor :inference_pipeline_count
407
+
408
+ # Links to the project.
409
+ sig do
410
+ returns(
411
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Links
412
+ )
413
+ end
414
+ attr_reader :links
415
+
416
+ sig do
417
+ params(
418
+ links:
419
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Links::OrHash
420
+ ).void
421
+ end
422
+ attr_writer :links
423
+
424
+ # The number of tests in the monitoring mode of the project.
425
+ sig { returns(Integer) }
426
+ attr_accessor :monitoring_goal_count
427
+
428
+ # The source of the project.
429
+ sig do
430
+ returns(
431
+ T.nilable(
432
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Source::TaggedSymbol
433
+ )
434
+ )
435
+ end
436
+ attr_accessor :source
437
+
438
+ # The number of versions (commits) in the project.
439
+ sig { returns(Integer) }
440
+ attr_accessor :version_count
441
+
442
+ # The workspace id.
443
+ sig { returns(T.nilable(String)) }
444
+ attr_accessor :workspace_id
445
+
446
+ sig do
447
+ returns(
448
+ T.nilable(
449
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::GitRepo
450
+ )
451
+ )
452
+ end
453
+ attr_reader :git_repo
454
+
455
+ sig do
456
+ params(
457
+ git_repo:
458
+ T.nilable(
459
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::GitRepo::OrHash
460
+ )
461
+ ).void
462
+ end
463
+ attr_writer :git_repo
464
+
465
+ sig do
466
+ params(
467
+ id: String,
468
+ creator_id: T.nilable(String),
469
+ date_created: Time,
470
+ date_updated: Time,
471
+ development_goal_count: Integer,
472
+ goal_count: Integer,
473
+ inference_pipeline_count: Integer,
474
+ links:
475
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Links::OrHash,
476
+ monitoring_goal_count: Integer,
477
+ name: String,
478
+ source:
479
+ T.nilable(
480
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Source::OrSymbol
481
+ ),
482
+ task_type:
483
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::TaskType::OrSymbol,
484
+ version_count: Integer,
485
+ workspace_id: T.nilable(String),
486
+ description: T.nilable(String),
487
+ git_repo:
488
+ T.nilable(
489
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::GitRepo::OrHash
490
+ )
491
+ ).returns(T.attached_class)
492
+ end
493
+ def self.new(
494
+ # The project id.
495
+ id:,
496
+ # The project creator id.
497
+ creator_id:,
498
+ # The project creation date.
499
+ date_created:,
500
+ # The project last updated date.
501
+ date_updated:,
502
+ # The number of tests in the development mode of the project.
503
+ development_goal_count:,
504
+ # The total number of tests in the project.
505
+ goal_count:,
506
+ # The number of inference pipelines in the project.
507
+ inference_pipeline_count:,
508
+ # Links to the project.
509
+ links:,
510
+ # The number of tests in the monitoring mode of the project.
511
+ monitoring_goal_count:,
512
+ # The project name.
513
+ name:,
514
+ # The source of the project.
515
+ source:,
516
+ # The task type of the project.
517
+ task_type:,
518
+ # The number of versions (commits) in the project.
519
+ version_count:,
520
+ # The workspace id.
521
+ workspace_id:,
522
+ # The project description.
523
+ description: nil,
524
+ git_repo: nil
525
+ )
526
+ end
527
+
528
+ sig do
529
+ override.returns(
530
+ {
531
+ id: String,
532
+ creator_id: T.nilable(String),
533
+ date_created: Time,
534
+ date_updated: Time,
535
+ development_goal_count: Integer,
536
+ goal_count: Integer,
537
+ inference_pipeline_count: Integer,
538
+ links:
539
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Links,
540
+ monitoring_goal_count: Integer,
541
+ name: String,
542
+ source:
543
+ T.nilable(
544
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Source::TaggedSymbol
545
+ ),
546
+ task_type:
547
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::TaskType::TaggedSymbol,
548
+ version_count: Integer,
549
+ workspace_id: T.nilable(String),
550
+ description: T.nilable(String),
551
+ git_repo:
552
+ T.nilable(
553
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::GitRepo
554
+ )
555
+ }
556
+ )
557
+ end
558
+ def to_hash
559
+ end
560
+
561
+ class Links < Openlayer::Internal::Type::BaseModel
562
+ OrHash =
563
+ T.type_alias do
564
+ T.any(
565
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Links,
566
+ Openlayer::Internal::AnyHash
567
+ )
568
+ end
569
+
570
+ sig { returns(String) }
571
+ attr_accessor :app
572
+
573
+ # Links to the project.
574
+ sig { params(app: String).returns(T.attached_class) }
575
+ def self.new(app:)
576
+ end
577
+
578
+ sig { override.returns({ app: String }) }
579
+ def to_hash
580
+ end
581
+ end
582
+
583
+ # The source of the project.
584
+ module Source
585
+ extend Openlayer::Internal::Type::Enum
586
+
587
+ TaggedSymbol =
588
+ T.type_alias do
589
+ T.all(
590
+ Symbol,
591
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Source
592
+ )
593
+ end
594
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
595
+
596
+ WEB =
597
+ T.let(
598
+ :web,
599
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Source::TaggedSymbol
600
+ )
601
+ API =
602
+ T.let(
603
+ :api,
604
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Source::TaggedSymbol
605
+ )
606
+ NULL =
607
+ T.let(
608
+ :null,
609
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Source::TaggedSymbol
610
+ )
611
+
612
+ sig do
613
+ override.returns(
614
+ T::Array[
615
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::Source::TaggedSymbol
616
+ ]
617
+ )
618
+ end
619
+ def self.values
620
+ end
621
+ end
622
+
623
+ # The task type of the project.
624
+ module TaskType
625
+ extend Openlayer::Internal::Type::Enum
626
+
627
+ TaggedSymbol =
628
+ T.type_alias do
629
+ T.all(
630
+ Symbol,
631
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::TaskType
632
+ )
633
+ end
634
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
635
+
636
+ LLM_BASE =
637
+ T.let(
638
+ :"llm-base",
639
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::TaskType::TaggedSymbol
640
+ )
641
+ TABULAR_CLASSIFICATION =
642
+ T.let(
643
+ :"tabular-classification",
644
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::TaskType::TaggedSymbol
645
+ )
646
+ TABULAR_REGRESSION =
647
+ T.let(
648
+ :"tabular-regression",
649
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::TaskType::TaggedSymbol
650
+ )
651
+ TEXT_CLASSIFICATION =
652
+ T.let(
653
+ :"text-classification",
654
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::TaskType::TaggedSymbol
655
+ )
656
+
657
+ sig do
658
+ override.returns(
659
+ T::Array[
660
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::TaskType::TaggedSymbol
661
+ ]
662
+ )
663
+ end
664
+ def self.values
665
+ end
666
+ end
667
+
668
+ class GitRepo < Openlayer::Internal::Type::BaseModel
669
+ OrHash =
670
+ T.type_alias do
671
+ T.any(
672
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::GitRepo,
673
+ Openlayer::Internal::AnyHash
674
+ )
675
+ end
676
+
677
+ sig { returns(String) }
678
+ attr_accessor :git_account_id
679
+
680
+ sig { returns(Integer) }
681
+ attr_accessor :git_id
682
+
683
+ sig { returns(T.nilable(String)) }
684
+ attr_reader :branch
685
+
686
+ sig { params(branch: String).void }
687
+ attr_writer :branch
688
+
689
+ sig { returns(T.nilable(String)) }
690
+ attr_reader :root_dir
691
+
692
+ sig { params(root_dir: String).void }
693
+ attr_writer :root_dir
694
+
695
+ sig { returns(String) }
696
+ attr_accessor :id
697
+
698
+ sig { returns(Time) }
699
+ attr_accessor :date_connected
700
+
701
+ sig { returns(Time) }
702
+ attr_accessor :date_updated
703
+
704
+ sig { returns(String) }
705
+ attr_accessor :name
706
+
707
+ sig { returns(T::Boolean) }
708
+ attr_accessor :private
709
+
710
+ sig { returns(String) }
711
+ attr_accessor :project_id
712
+
713
+ sig { returns(String) }
714
+ attr_accessor :slug
715
+
716
+ sig { returns(String) }
717
+ attr_accessor :url
718
+
719
+ sig do
720
+ params(
721
+ id: String,
722
+ date_connected: Time,
723
+ date_updated: Time,
724
+ git_account_id: String,
725
+ git_id: Integer,
726
+ name: String,
727
+ private: T::Boolean,
728
+ project_id: String,
729
+ slug: String,
730
+ url: String,
731
+ branch: String,
732
+ root_dir: String
733
+ ).returns(T.attached_class)
734
+ end
735
+ def self.new(
736
+ id:,
737
+ date_connected:,
738
+ date_updated:,
739
+ git_account_id:,
740
+ git_id:,
741
+ name:,
742
+ private:,
743
+ project_id:,
744
+ slug:,
745
+ url:,
746
+ branch: nil,
747
+ root_dir: nil
748
+ )
749
+ end
750
+
751
+ sig do
752
+ override.returns(
753
+ {
754
+ id: String,
755
+ date_connected: Time,
756
+ date_updated: Time,
757
+ git_account_id: String,
758
+ git_id: Integer,
759
+ name: String,
760
+ private: T::Boolean,
761
+ project_id: String,
762
+ slug: String,
763
+ url: String,
764
+ branch: String,
765
+ root_dir: String
766
+ }
767
+ )
768
+ end
769
+ def to_hash
770
+ end
771
+ end
772
+ end
773
+
774
+ class Workspace < Openlayer::Internal::Type::BaseModel
775
+ OrHash =
776
+ T.type_alias do
777
+ T.any(
778
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace,
779
+ Openlayer::Internal::AnyHash
780
+ )
781
+ end
782
+
783
+ # The workspace name.
784
+ sig { returns(String) }
785
+ attr_accessor :name
786
+
787
+ # The workspace slug.
788
+ sig { returns(String) }
789
+ attr_accessor :slug
790
+
791
+ # Whether the workspace only allows SAML authentication.
792
+ sig { returns(T.nilable(T::Boolean)) }
793
+ attr_reader :saml_only_access
794
+
795
+ sig { params(saml_only_access: T::Boolean).void }
796
+ attr_writer :saml_only_access
797
+
798
+ sig { returns(T.nilable(T::Array[String])) }
799
+ attr_reader :wildcard_domains
800
+
801
+ sig { params(wildcard_domains: T::Array[String]).void }
802
+ attr_writer :wildcard_domains
803
+
804
+ # The workspace id.
805
+ sig { returns(String) }
806
+ attr_accessor :id
807
+
808
+ # The workspace creator id.
809
+ sig { returns(T.nilable(String)) }
810
+ attr_accessor :creator_id
811
+
812
+ # The workspace creation date.
813
+ sig { returns(Time) }
814
+ attr_accessor :date_created
815
+
816
+ # The workspace last updated date.
817
+ sig { returns(Time) }
818
+ attr_accessor :date_updated
819
+
820
+ # The number of invites in the workspace.
821
+ sig { returns(Integer) }
822
+ attr_accessor :invite_count
823
+
824
+ # The number of members in the workspace.
825
+ sig { returns(Integer) }
826
+ attr_accessor :member_count
827
+
828
+ # The end date of the current billing period.
829
+ sig { returns(T.nilable(Time)) }
830
+ attr_accessor :period_end_date
831
+
832
+ # The start date of the current billing period.
833
+ sig { returns(T.nilable(Time)) }
834
+ attr_accessor :period_start_date
835
+
836
+ # The number of projects in the workspace.
837
+ sig { returns(Integer) }
838
+ attr_accessor :project_count
839
+
840
+ sig do
841
+ returns(
842
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::TaggedSymbol
843
+ )
844
+ end
845
+ attr_accessor :status
846
+
847
+ sig do
848
+ returns(
849
+ T.nilable(
850
+ T::Array[
851
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::MonthlyUsage
852
+ ]
853
+ )
854
+ )
855
+ end
856
+ attr_reader :monthly_usage
857
+
858
+ sig do
859
+ params(
860
+ monthly_usage:
861
+ T::Array[
862
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::MonthlyUsage::OrHash
863
+ ]
864
+ ).void
865
+ end
866
+ attr_writer :monthly_usage
867
+
868
+ sig do
869
+ params(
870
+ id: String,
871
+ creator_id: T.nilable(String),
872
+ date_created: Time,
873
+ date_updated: Time,
874
+ invite_count: Integer,
875
+ member_count: Integer,
876
+ name: String,
877
+ period_end_date: T.nilable(Time),
878
+ period_start_date: T.nilable(Time),
879
+ project_count: Integer,
880
+ slug: String,
881
+ status:
882
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::OrSymbol,
883
+ monthly_usage:
884
+ T::Array[
885
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::MonthlyUsage::OrHash
886
+ ],
887
+ saml_only_access: T::Boolean,
888
+ wildcard_domains: T::Array[String]
889
+ ).returns(T.attached_class)
890
+ end
891
+ def self.new(
892
+ # The workspace id.
893
+ id:,
894
+ # The workspace creator id.
895
+ creator_id:,
896
+ # The workspace creation date.
897
+ date_created:,
898
+ # The workspace last updated date.
899
+ date_updated:,
900
+ # The number of invites in the workspace.
901
+ invite_count:,
902
+ # The number of members in the workspace.
903
+ member_count:,
904
+ # The workspace name.
905
+ name:,
906
+ # The end date of the current billing period.
907
+ period_end_date:,
908
+ # The start date of the current billing period.
909
+ period_start_date:,
910
+ # The number of projects in the workspace.
911
+ project_count:,
912
+ # The workspace slug.
913
+ slug:,
914
+ status:,
915
+ monthly_usage: nil,
916
+ # Whether the workspace only allows SAML authentication.
917
+ saml_only_access: nil,
918
+ wildcard_domains: nil
919
+ )
920
+ end
921
+
922
+ sig do
923
+ override.returns(
924
+ {
925
+ id: String,
926
+ creator_id: T.nilable(String),
927
+ date_created: Time,
928
+ date_updated: Time,
929
+ invite_count: Integer,
930
+ member_count: Integer,
931
+ name: String,
932
+ period_end_date: T.nilable(Time),
933
+ period_start_date: T.nilable(Time),
934
+ project_count: Integer,
935
+ slug: String,
936
+ status:
937
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::TaggedSymbol,
938
+ invite_code: String,
939
+ monthly_usage:
940
+ T::Array[
941
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::MonthlyUsage
942
+ ],
943
+ saml_only_access: T::Boolean,
944
+ wildcard_domains: T::Array[String]
945
+ }
946
+ )
947
+ end
948
+ def to_hash
949
+ end
950
+
951
+ module Status
952
+ extend Openlayer::Internal::Type::Enum
953
+
954
+ TaggedSymbol =
955
+ T.type_alias do
956
+ T.all(
957
+ Symbol,
958
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status
959
+ )
960
+ end
961
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
962
+
963
+ ACTIVE =
964
+ T.let(
965
+ :active,
966
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::TaggedSymbol
967
+ )
968
+ PAST_DUE =
969
+ T.let(
970
+ :past_due,
971
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::TaggedSymbol
972
+ )
973
+ UNPAID =
974
+ T.let(
975
+ :unpaid,
976
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::TaggedSymbol
977
+ )
978
+ CANCELED =
979
+ T.let(
980
+ :canceled,
981
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::TaggedSymbol
982
+ )
983
+ INCOMPLETE =
984
+ T.let(
985
+ :incomplete,
986
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::TaggedSymbol
987
+ )
988
+ INCOMPLETE_EXPIRED =
989
+ T.let(
990
+ :incomplete_expired,
991
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::TaggedSymbol
992
+ )
993
+ TRIALING =
994
+ T.let(
995
+ :trialing,
996
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::TaggedSymbol
997
+ )
998
+ PAUSED =
999
+ T.let(
1000
+ :paused,
1001
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::TaggedSymbol
1002
+ )
1003
+
1004
+ sig do
1005
+ override.returns(
1006
+ T::Array[
1007
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::Status::TaggedSymbol
1008
+ ]
1009
+ )
1010
+ end
1011
+ def self.values
1012
+ end
1013
+ end
1014
+
1015
+ class MonthlyUsage < Openlayer::Internal::Type::BaseModel
1016
+ OrHash =
1017
+ T.type_alias do
1018
+ T.any(
1019
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::MonthlyUsage,
1020
+ Openlayer::Internal::AnyHash
1021
+ )
1022
+ end
1023
+
1024
+ sig { returns(T.nilable(Integer)) }
1025
+ attr_accessor :execution_time_ms
1026
+
1027
+ sig { returns(T.nilable(Date)) }
1028
+ attr_reader :month_year
1029
+
1030
+ sig { params(month_year: Date).void }
1031
+ attr_writer :month_year
1032
+
1033
+ sig { returns(T.nilable(Integer)) }
1034
+ attr_reader :prediction_count
1035
+
1036
+ sig { params(prediction_count: Integer).void }
1037
+ attr_writer :prediction_count
1038
+
1039
+ sig do
1040
+ params(
1041
+ execution_time_ms: T.nilable(Integer),
1042
+ month_year: Date,
1043
+ prediction_count: Integer
1044
+ ).returns(T.attached_class)
1045
+ end
1046
+ def self.new(
1047
+ execution_time_ms: nil,
1048
+ month_year: nil,
1049
+ prediction_count: nil
1050
+ )
1051
+ end
1052
+
1053
+ sig do
1054
+ override.returns(
1055
+ {
1056
+ execution_time_ms: T.nilable(Integer),
1057
+ month_year: Date,
1058
+ prediction_count: Integer
1059
+ }
1060
+ )
1061
+ end
1062
+ def to_hash
1063
+ end
1064
+ end
1065
+ end
1066
+ end
1067
+ end
1068
+ end
1069
+ end
1070
+ end