openlayer 0.4.1 → 0.5.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 (45) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +22 -0
  3. data/README.md +1 -1
  4. data/lib/openlayer/internal/transport/base_client.rb +7 -1
  5. data/lib/openlayer/internal/transport/pooled_net_requester.rb +36 -26
  6. data/lib/openlayer/internal/util.rb +3 -2
  7. data/lib/openlayer/models/inference_pipeline_retrieve_response.rb +507 -1
  8. data/lib/openlayer/models/inference_pipeline_update_response.rb +507 -1
  9. data/lib/openlayer/models/projects/inference_pipeline_create_params.rb +609 -1
  10. data/lib/openlayer/models/projects/inference_pipeline_create_response.rb +507 -1
  11. data/lib/openlayer/models/projects/inference_pipeline_list_response.rb +507 -1
  12. data/lib/openlayer/models/projects/test_create_params.rb +49 -1
  13. data/lib/openlayer/models/projects/test_create_response.rb +49 -1
  14. data/lib/openlayer/models/projects/test_list_response.rb +49 -1
  15. data/lib/openlayer/resources/projects/inference_pipelines.rb +3 -1
  16. data/lib/openlayer/resources/projects/tests.rb +9 -1
  17. data/lib/openlayer/version.rb +1 -1
  18. data/lib/openlayer.rb +2 -0
  19. data/manifest.yaml +2 -0
  20. data/rbi/openlayer/internal/transport/base_client.rbi +5 -0
  21. data/rbi/openlayer/internal/transport/pooled_net_requester.rbi +6 -2
  22. data/rbi/openlayer/internal/type/base_model.rbi +8 -4
  23. data/rbi/openlayer/models/inference_pipeline_retrieve_response.rbi +948 -0
  24. data/rbi/openlayer/models/inference_pipeline_update_response.rbi +948 -0
  25. data/rbi/openlayer/models/projects/inference_pipeline_create_params.rbi +1095 -0
  26. data/rbi/openlayer/models/projects/inference_pipeline_create_response.rbi +952 -0
  27. data/rbi/openlayer/models/projects/inference_pipeline_list_response.rbi +952 -0
  28. data/rbi/openlayer/models/projects/test_create_params.rbi +40 -0
  29. data/rbi/openlayer/models/projects/test_create_response.rbi +40 -0
  30. data/rbi/openlayer/models/projects/test_list_response.rbi +40 -0
  31. data/rbi/openlayer/resources/projects/inference_pipelines.rbi +12 -0
  32. data/rbi/openlayer/resources/projects/tests.rbi +16 -0
  33. data/sig/openlayer/internal/transport/base_client.rbs +2 -0
  34. data/sig/openlayer/internal/transport/pooled_net_requester.rbs +4 -1
  35. data/sig/openlayer/models/inference_pipeline_retrieve_response.rbs +473 -0
  36. data/sig/openlayer/models/inference_pipeline_update_response.rbs +473 -0
  37. data/sig/openlayer/models/projects/inference_pipeline_create_params.rbs +493 -0
  38. data/sig/openlayer/models/projects/inference_pipeline_create_response.rbs +473 -0
  39. data/sig/openlayer/models/projects/inference_pipeline_list_response.rbs +473 -0
  40. data/sig/openlayer/models/projects/test_create_params.rbs +20 -0
  41. data/sig/openlayer/models/projects/test_create_response.rbs +20 -0
  42. data/sig/openlayer/models/projects/test_list_response.rbs +20 -0
  43. data/sig/openlayer/resources/projects/inference_pipelines.rbs +1 -0
  44. data/sig/openlayer/resources/projects/tests.rbs +4 -0
  45. metadata +2 -2
@@ -23,6 +23,22 @@ module Openlayer
23
23
  sig { returns(String) }
24
24
  attr_accessor :name
25
25
 
26
+ sig do
27
+ returns(
28
+ T.nilable(
29
+ T.any(
30
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0,
31
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::BackendType,
32
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2,
33
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3,
34
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4,
35
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5
36
+ )
37
+ )
38
+ )
39
+ end
40
+ attr_accessor :data_backend
41
+
26
42
  sig do
27
43
  returns(
28
44
  T.nilable(
@@ -65,6 +81,17 @@ module Openlayer
65
81
  params(
66
82
  description: T.nilable(String),
67
83
  name: String,
84
+ data_backend:
85
+ T.nilable(
86
+ T.any(
87
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::OrHash,
88
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::BackendType::OrHash,
89
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::OrHash,
90
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::OrHash,
91
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::OrHash,
92
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::OrHash
93
+ )
94
+ ),
68
95
  project:
69
96
  T.nilable(
70
97
  Openlayer::Projects::InferencePipelineCreateParams::Project::OrHash
@@ -81,6 +108,7 @@ module Openlayer
81
108
  description:,
82
109
  # The inference pipeline name.
83
110
  name:,
111
+ data_backend: nil,
84
112
  project: nil,
85
113
  workspace: nil,
86
114
  request_options: {}
@@ -92,6 +120,17 @@ module Openlayer
92
120
  {
93
121
  description: T.nilable(String),
94
122
  name: String,
123
+ data_backend:
124
+ T.nilable(
125
+ T.any(
126
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0,
127
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::BackendType,
128
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2,
129
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3,
130
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4,
131
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5
132
+ )
133
+ ),
95
134
  project:
96
135
  T.nilable(
97
136
  Openlayer::Projects::InferencePipelineCreateParams::Project
@@ -107,6 +146,1062 @@ module Openlayer
107
146
  def to_hash
108
147
  end
109
148
 
149
+ module DataBackend
150
+ extend Openlayer::Internal::Type::Union
151
+
152
+ Variants =
153
+ T.type_alias do
154
+ T.any(
155
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0,
156
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::BackendType,
157
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2,
158
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3,
159
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4,
160
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5
161
+ )
162
+ end
163
+
164
+ class UnionMember0 < Openlayer::Internal::Type::BaseModel
165
+ OrHash =
166
+ T.type_alias do
167
+ T.any(
168
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0,
169
+ Openlayer::Internal::AnyHash
170
+ )
171
+ end
172
+
173
+ sig do
174
+ returns(
175
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::BackendType::OrSymbol
176
+ )
177
+ end
178
+ attr_accessor :backend_type
179
+
180
+ sig { returns(T.nilable(String)) }
181
+ attr_accessor :bigquery_connection_id
182
+
183
+ sig { returns(String) }
184
+ attr_accessor :dataset_id
185
+
186
+ sig { returns(String) }
187
+ attr_accessor :project_id
188
+
189
+ sig { returns(T.nilable(String)) }
190
+ attr_accessor :table_id
191
+
192
+ sig do
193
+ returns(
194
+ T.nilable(
195
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::PartitionType::OrSymbol
196
+ )
197
+ )
198
+ end
199
+ attr_accessor :partition_type
200
+
201
+ sig do
202
+ returns(
203
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::Config
204
+ )
205
+ end
206
+ attr_reader :config
207
+
208
+ sig do
209
+ params(
210
+ config:
211
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::Config::OrHash
212
+ ).void
213
+ end
214
+ attr_writer :config
215
+
216
+ sig do
217
+ params(
218
+ backend_type:
219
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::BackendType::OrSymbol,
220
+ bigquery_connection_id: T.nilable(String),
221
+ config:
222
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::Config::OrHash,
223
+ dataset_id: String,
224
+ project_id: String,
225
+ table_id: T.nilable(String),
226
+ partition_type:
227
+ T.nilable(
228
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::PartitionType::OrSymbol
229
+ )
230
+ ).returns(T.attached_class)
231
+ end
232
+ def self.new(
233
+ backend_type:,
234
+ bigquery_connection_id:,
235
+ config:,
236
+ dataset_id:,
237
+ project_id:,
238
+ table_id:,
239
+ partition_type: nil
240
+ )
241
+ end
242
+
243
+ sig do
244
+ override.returns(
245
+ {
246
+ backend_type:
247
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::BackendType::OrSymbol,
248
+ bigquery_connection_id: T.nilable(String),
249
+ config:
250
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::Config,
251
+ dataset_id: String,
252
+ project_id: String,
253
+ table_id: T.nilable(String),
254
+ partition_type:
255
+ T.nilable(
256
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::PartitionType::OrSymbol
257
+ )
258
+ }
259
+ )
260
+ end
261
+ def to_hash
262
+ end
263
+
264
+ module BackendType
265
+ extend Openlayer::Internal::Type::Enum
266
+
267
+ TaggedSymbol =
268
+ T.type_alias do
269
+ T.all(
270
+ Symbol,
271
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::BackendType
272
+ )
273
+ end
274
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
275
+
276
+ BIGQUERY =
277
+ T.let(
278
+ :bigquery,
279
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::BackendType::TaggedSymbol
280
+ )
281
+
282
+ sig do
283
+ override.returns(
284
+ T::Array[
285
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::BackendType::TaggedSymbol
286
+ ]
287
+ )
288
+ end
289
+ def self.values
290
+ end
291
+ end
292
+
293
+ class Config < Openlayer::Internal::Type::BaseModel
294
+ OrHash =
295
+ T.type_alias do
296
+ T.any(
297
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::Config,
298
+ Openlayer::Internal::AnyHash
299
+ )
300
+ end
301
+
302
+ # Name of the column with the ground truths.
303
+ sig { returns(T.nilable(String)) }
304
+ attr_accessor :ground_truth_column_name
305
+
306
+ # Name of the column with human feedback.
307
+ sig { returns(T.nilable(String)) }
308
+ attr_accessor :human_feedback_column_name
309
+
310
+ # Name of the column with the latencies.
311
+ sig { returns(T.nilable(String)) }
312
+ attr_accessor :latency_column_name
313
+
314
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
315
+ # If not provided, the upload timestamp is used.
316
+ sig { returns(T.nilable(String)) }
317
+ attr_accessor :timestamp_column_name
318
+
319
+ # Name of the column with the inference ids. This is useful if you want to update
320
+ # rows at a later point in time. If not provided, a unique id is generated by
321
+ # Openlayer.
322
+ sig { returns(T.nilable(String)) }
323
+ attr_accessor :inference_id_column_name
324
+
325
+ sig do
326
+ params(
327
+ ground_truth_column_name: T.nilable(String),
328
+ human_feedback_column_name: T.nilable(String),
329
+ inference_id_column_name: T.nilable(String),
330
+ latency_column_name: T.nilable(String),
331
+ timestamp_column_name: T.nilable(String)
332
+ ).returns(T.attached_class)
333
+ end
334
+ def self.new(
335
+ # Name of the column with the ground truths.
336
+ ground_truth_column_name: nil,
337
+ # Name of the column with human feedback.
338
+ human_feedback_column_name: nil,
339
+ # Name of the column with the inference ids. This is useful if you want to update
340
+ # rows at a later point in time. If not provided, a unique id is generated by
341
+ # Openlayer.
342
+ inference_id_column_name: nil,
343
+ # Name of the column with the latencies.
344
+ latency_column_name: nil,
345
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
346
+ # If not provided, the upload timestamp is used.
347
+ timestamp_column_name: nil
348
+ )
349
+ end
350
+
351
+ sig do
352
+ override.returns(
353
+ {
354
+ ground_truth_column_name: T.nilable(String),
355
+ human_feedback_column_name: T.nilable(String),
356
+ inference_id_column_name: T.nilable(String),
357
+ latency_column_name: T.nilable(String),
358
+ timestamp_column_name: T.nilable(String)
359
+ }
360
+ )
361
+ end
362
+ def to_hash
363
+ end
364
+ end
365
+
366
+ module PartitionType
367
+ extend Openlayer::Internal::Type::Enum
368
+
369
+ TaggedSymbol =
370
+ T.type_alias do
371
+ T.all(
372
+ Symbol,
373
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::PartitionType
374
+ )
375
+ end
376
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
377
+
378
+ DAY =
379
+ T.let(
380
+ :DAY,
381
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::PartitionType::TaggedSymbol
382
+ )
383
+ MONTH =
384
+ T.let(
385
+ :MONTH,
386
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::PartitionType::TaggedSymbol
387
+ )
388
+ YEAR =
389
+ T.let(
390
+ :YEAR,
391
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::PartitionType::TaggedSymbol
392
+ )
393
+
394
+ sig do
395
+ override.returns(
396
+ T::Array[
397
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember0::PartitionType::TaggedSymbol
398
+ ]
399
+ )
400
+ end
401
+ def self.values
402
+ end
403
+ end
404
+ end
405
+
406
+ class BackendType < Openlayer::Internal::Type::BaseModel
407
+ OrHash =
408
+ T.type_alias do
409
+ T.any(
410
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::BackendType,
411
+ Openlayer::Internal::AnyHash
412
+ )
413
+ end
414
+
415
+ sig do
416
+ returns(
417
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::BackendType::BackendType::OrSymbol
418
+ )
419
+ end
420
+ attr_accessor :backend_type
421
+
422
+ sig do
423
+ params(
424
+ backend_type:
425
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::BackendType::BackendType::OrSymbol
426
+ ).returns(T.attached_class)
427
+ end
428
+ def self.new(backend_type:)
429
+ end
430
+
431
+ sig do
432
+ override.returns(
433
+ {
434
+ backend_type:
435
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::BackendType::BackendType::OrSymbol
436
+ }
437
+ )
438
+ end
439
+ def to_hash
440
+ end
441
+
442
+ module BackendType
443
+ extend Openlayer::Internal::Type::Enum
444
+
445
+ TaggedSymbol =
446
+ T.type_alias do
447
+ T.all(
448
+ Symbol,
449
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::BackendType::BackendType
450
+ )
451
+ end
452
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
453
+
454
+ DEFAULT =
455
+ T.let(
456
+ :default,
457
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::BackendType::BackendType::TaggedSymbol
458
+ )
459
+
460
+ sig do
461
+ override.returns(
462
+ T::Array[
463
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::BackendType::BackendType::TaggedSymbol
464
+ ]
465
+ )
466
+ end
467
+ def self.values
468
+ end
469
+ end
470
+ end
471
+
472
+ class UnionMember2 < Openlayer::Internal::Type::BaseModel
473
+ OrHash =
474
+ T.type_alias do
475
+ T.any(
476
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2,
477
+ Openlayer::Internal::AnyHash
478
+ )
479
+ end
480
+
481
+ sig do
482
+ returns(
483
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::BackendType::OrSymbol
484
+ )
485
+ end
486
+ attr_accessor :backend_type
487
+
488
+ sig { returns(String) }
489
+ attr_accessor :database
490
+
491
+ sig { returns(String) }
492
+ attr_accessor :schema
493
+
494
+ sig { returns(T.nilable(String)) }
495
+ attr_accessor :snowflake_connection_id
496
+
497
+ sig { returns(T.nilable(String)) }
498
+ attr_accessor :table
499
+
500
+ sig do
501
+ returns(
502
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::Config
503
+ )
504
+ end
505
+ attr_reader :config
506
+
507
+ sig do
508
+ params(
509
+ config:
510
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::Config::OrHash
511
+ ).void
512
+ end
513
+ attr_writer :config
514
+
515
+ sig do
516
+ params(
517
+ backend_type:
518
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::BackendType::OrSymbol,
519
+ config:
520
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::Config::OrHash,
521
+ database: String,
522
+ schema: String,
523
+ snowflake_connection_id: T.nilable(String),
524
+ table: T.nilable(String)
525
+ ).returns(T.attached_class)
526
+ end
527
+ def self.new(
528
+ backend_type:,
529
+ config:,
530
+ database:,
531
+ schema:,
532
+ snowflake_connection_id:,
533
+ table:
534
+ )
535
+ end
536
+
537
+ sig do
538
+ override.returns(
539
+ {
540
+ backend_type:
541
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::BackendType::OrSymbol,
542
+ config:
543
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::Config,
544
+ database: String,
545
+ schema: String,
546
+ snowflake_connection_id: T.nilable(String),
547
+ table: T.nilable(String)
548
+ }
549
+ )
550
+ end
551
+ def to_hash
552
+ end
553
+
554
+ module BackendType
555
+ extend Openlayer::Internal::Type::Enum
556
+
557
+ TaggedSymbol =
558
+ T.type_alias do
559
+ T.all(
560
+ Symbol,
561
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::BackendType
562
+ )
563
+ end
564
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
565
+
566
+ SNOWFLAKE =
567
+ T.let(
568
+ :snowflake,
569
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::BackendType::TaggedSymbol
570
+ )
571
+
572
+ sig do
573
+ override.returns(
574
+ T::Array[
575
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::BackendType::TaggedSymbol
576
+ ]
577
+ )
578
+ end
579
+ def self.values
580
+ end
581
+ end
582
+
583
+ class Config < Openlayer::Internal::Type::BaseModel
584
+ OrHash =
585
+ T.type_alias do
586
+ T.any(
587
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember2::Config,
588
+ Openlayer::Internal::AnyHash
589
+ )
590
+ end
591
+
592
+ # Name of the column with the ground truths.
593
+ sig { returns(T.nilable(String)) }
594
+ attr_accessor :ground_truth_column_name
595
+
596
+ # Name of the column with human feedback.
597
+ sig { returns(T.nilable(String)) }
598
+ attr_accessor :human_feedback_column_name
599
+
600
+ # Name of the column with the latencies.
601
+ sig { returns(T.nilable(String)) }
602
+ attr_accessor :latency_column_name
603
+
604
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
605
+ # If not provided, the upload timestamp is used.
606
+ sig { returns(T.nilable(String)) }
607
+ attr_accessor :timestamp_column_name
608
+
609
+ # Name of the column with the inference ids. This is useful if you want to update
610
+ # rows at a later point in time. If not provided, a unique id is generated by
611
+ # Openlayer.
612
+ sig { returns(T.nilable(String)) }
613
+ attr_accessor :inference_id_column_name
614
+
615
+ sig do
616
+ params(
617
+ ground_truth_column_name: T.nilable(String),
618
+ human_feedback_column_name: T.nilable(String),
619
+ inference_id_column_name: T.nilable(String),
620
+ latency_column_name: T.nilable(String),
621
+ timestamp_column_name: T.nilable(String)
622
+ ).returns(T.attached_class)
623
+ end
624
+ def self.new(
625
+ # Name of the column with the ground truths.
626
+ ground_truth_column_name: nil,
627
+ # Name of the column with human feedback.
628
+ human_feedback_column_name: nil,
629
+ # Name of the column with the inference ids. This is useful if you want to update
630
+ # rows at a later point in time. If not provided, a unique id is generated by
631
+ # Openlayer.
632
+ inference_id_column_name: nil,
633
+ # Name of the column with the latencies.
634
+ latency_column_name: nil,
635
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
636
+ # If not provided, the upload timestamp is used.
637
+ timestamp_column_name: nil
638
+ )
639
+ end
640
+
641
+ sig do
642
+ override.returns(
643
+ {
644
+ ground_truth_column_name: T.nilable(String),
645
+ human_feedback_column_name: T.nilable(String),
646
+ inference_id_column_name: T.nilable(String),
647
+ latency_column_name: T.nilable(String),
648
+ timestamp_column_name: T.nilable(String)
649
+ }
650
+ )
651
+ end
652
+ def to_hash
653
+ end
654
+ end
655
+ end
656
+
657
+ class UnionMember3 < Openlayer::Internal::Type::BaseModel
658
+ OrHash =
659
+ T.type_alias do
660
+ T.any(
661
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3,
662
+ Openlayer::Internal::AnyHash
663
+ )
664
+ end
665
+
666
+ sig do
667
+ returns(
668
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::BackendType::OrSymbol
669
+ )
670
+ end
671
+ attr_accessor :backend_type
672
+
673
+ sig { returns(T.nilable(String)) }
674
+ attr_accessor :databricks_dtl_connection_id
675
+
676
+ sig { returns(T.nilable(String)) }
677
+ attr_accessor :table_id
678
+
679
+ sig do
680
+ returns(
681
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::Config
682
+ )
683
+ end
684
+ attr_reader :config
685
+
686
+ sig do
687
+ params(
688
+ config:
689
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::Config::OrHash
690
+ ).void
691
+ end
692
+ attr_writer :config
693
+
694
+ sig do
695
+ params(
696
+ backend_type:
697
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::BackendType::OrSymbol,
698
+ config:
699
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::Config::OrHash,
700
+ databricks_dtl_connection_id: T.nilable(String),
701
+ table_id: T.nilable(String)
702
+ ).returns(T.attached_class)
703
+ end
704
+ def self.new(
705
+ backend_type:,
706
+ config:,
707
+ databricks_dtl_connection_id:,
708
+ table_id:
709
+ )
710
+ end
711
+
712
+ sig do
713
+ override.returns(
714
+ {
715
+ backend_type:
716
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::BackendType::OrSymbol,
717
+ config:
718
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::Config,
719
+ databricks_dtl_connection_id: T.nilable(String),
720
+ table_id: T.nilable(String)
721
+ }
722
+ )
723
+ end
724
+ def to_hash
725
+ end
726
+
727
+ module BackendType
728
+ extend Openlayer::Internal::Type::Enum
729
+
730
+ TaggedSymbol =
731
+ T.type_alias do
732
+ T.all(
733
+ Symbol,
734
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::BackendType
735
+ )
736
+ end
737
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
738
+
739
+ DATABRICKS_DTL =
740
+ T.let(
741
+ :databricks_dtl,
742
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::BackendType::TaggedSymbol
743
+ )
744
+
745
+ sig do
746
+ override.returns(
747
+ T::Array[
748
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::BackendType::TaggedSymbol
749
+ ]
750
+ )
751
+ end
752
+ def self.values
753
+ end
754
+ end
755
+
756
+ class Config < Openlayer::Internal::Type::BaseModel
757
+ OrHash =
758
+ T.type_alias do
759
+ T.any(
760
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember3::Config,
761
+ Openlayer::Internal::AnyHash
762
+ )
763
+ end
764
+
765
+ # Name of the column with the ground truths.
766
+ sig { returns(T.nilable(String)) }
767
+ attr_accessor :ground_truth_column_name
768
+
769
+ # Name of the column with human feedback.
770
+ sig { returns(T.nilable(String)) }
771
+ attr_accessor :human_feedback_column_name
772
+
773
+ # Name of the column with the latencies.
774
+ sig { returns(T.nilable(String)) }
775
+ attr_accessor :latency_column_name
776
+
777
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
778
+ # If not provided, the upload timestamp is used.
779
+ sig { returns(T.nilable(String)) }
780
+ attr_accessor :timestamp_column_name
781
+
782
+ # Name of the column with the inference ids. This is useful if you want to update
783
+ # rows at a later point in time. If not provided, a unique id is generated by
784
+ # Openlayer.
785
+ sig { returns(T.nilable(String)) }
786
+ attr_accessor :inference_id_column_name
787
+
788
+ sig do
789
+ params(
790
+ ground_truth_column_name: T.nilable(String),
791
+ human_feedback_column_name: T.nilable(String),
792
+ inference_id_column_name: T.nilable(String),
793
+ latency_column_name: T.nilable(String),
794
+ timestamp_column_name: T.nilable(String)
795
+ ).returns(T.attached_class)
796
+ end
797
+ def self.new(
798
+ # Name of the column with the ground truths.
799
+ ground_truth_column_name: nil,
800
+ # Name of the column with human feedback.
801
+ human_feedback_column_name: nil,
802
+ # Name of the column with the inference ids. This is useful if you want to update
803
+ # rows at a later point in time. If not provided, a unique id is generated by
804
+ # Openlayer.
805
+ inference_id_column_name: nil,
806
+ # Name of the column with the latencies.
807
+ latency_column_name: nil,
808
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
809
+ # If not provided, the upload timestamp is used.
810
+ timestamp_column_name: nil
811
+ )
812
+ end
813
+
814
+ sig do
815
+ override.returns(
816
+ {
817
+ ground_truth_column_name: T.nilable(String),
818
+ human_feedback_column_name: T.nilable(String),
819
+ inference_id_column_name: T.nilable(String),
820
+ latency_column_name: T.nilable(String),
821
+ timestamp_column_name: T.nilable(String)
822
+ }
823
+ )
824
+ end
825
+ def to_hash
826
+ end
827
+ end
828
+ end
829
+
830
+ class UnionMember4 < Openlayer::Internal::Type::BaseModel
831
+ OrHash =
832
+ T.type_alias do
833
+ T.any(
834
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4,
835
+ Openlayer::Internal::AnyHash
836
+ )
837
+ end
838
+
839
+ sig do
840
+ returns(
841
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::BackendType::OrSymbol
842
+ )
843
+ end
844
+ attr_accessor :backend_type
845
+
846
+ sig { returns(T.nilable(String)) }
847
+ attr_accessor :redshift_connection_id
848
+
849
+ sig { returns(String) }
850
+ attr_accessor :schema_name
851
+
852
+ sig { returns(String) }
853
+ attr_accessor :table_name
854
+
855
+ sig do
856
+ returns(
857
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::Config
858
+ )
859
+ end
860
+ attr_reader :config
861
+
862
+ sig do
863
+ params(
864
+ config:
865
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::Config::OrHash
866
+ ).void
867
+ end
868
+ attr_writer :config
869
+
870
+ sig do
871
+ params(
872
+ backend_type:
873
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::BackendType::OrSymbol,
874
+ config:
875
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::Config::OrHash,
876
+ redshift_connection_id: T.nilable(String),
877
+ schema_name: String,
878
+ table_name: String
879
+ ).returns(T.attached_class)
880
+ end
881
+ def self.new(
882
+ backend_type:,
883
+ config:,
884
+ redshift_connection_id:,
885
+ schema_name:,
886
+ table_name:
887
+ )
888
+ end
889
+
890
+ sig do
891
+ override.returns(
892
+ {
893
+ backend_type:
894
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::BackendType::OrSymbol,
895
+ config:
896
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::Config,
897
+ redshift_connection_id: T.nilable(String),
898
+ schema_name: String,
899
+ table_name: String
900
+ }
901
+ )
902
+ end
903
+ def to_hash
904
+ end
905
+
906
+ module BackendType
907
+ extend Openlayer::Internal::Type::Enum
908
+
909
+ TaggedSymbol =
910
+ T.type_alias do
911
+ T.all(
912
+ Symbol,
913
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::BackendType
914
+ )
915
+ end
916
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
917
+
918
+ REDSHIFT =
919
+ T.let(
920
+ :redshift,
921
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::BackendType::TaggedSymbol
922
+ )
923
+
924
+ sig do
925
+ override.returns(
926
+ T::Array[
927
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::BackendType::TaggedSymbol
928
+ ]
929
+ )
930
+ end
931
+ def self.values
932
+ end
933
+ end
934
+
935
+ class Config < Openlayer::Internal::Type::BaseModel
936
+ OrHash =
937
+ T.type_alias do
938
+ T.any(
939
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember4::Config,
940
+ Openlayer::Internal::AnyHash
941
+ )
942
+ end
943
+
944
+ # Name of the column with the ground truths.
945
+ sig { returns(T.nilable(String)) }
946
+ attr_accessor :ground_truth_column_name
947
+
948
+ # Name of the column with human feedback.
949
+ sig { returns(T.nilable(String)) }
950
+ attr_accessor :human_feedback_column_name
951
+
952
+ # Name of the column with the latencies.
953
+ sig { returns(T.nilable(String)) }
954
+ attr_accessor :latency_column_name
955
+
956
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
957
+ # If not provided, the upload timestamp is used.
958
+ sig { returns(T.nilable(String)) }
959
+ attr_accessor :timestamp_column_name
960
+
961
+ # Name of the column with the inference ids. This is useful if you want to update
962
+ # rows at a later point in time. If not provided, a unique id is generated by
963
+ # Openlayer.
964
+ sig { returns(T.nilable(String)) }
965
+ attr_accessor :inference_id_column_name
966
+
967
+ sig do
968
+ params(
969
+ ground_truth_column_name: T.nilable(String),
970
+ human_feedback_column_name: T.nilable(String),
971
+ inference_id_column_name: T.nilable(String),
972
+ latency_column_name: T.nilable(String),
973
+ timestamp_column_name: T.nilable(String)
974
+ ).returns(T.attached_class)
975
+ end
976
+ def self.new(
977
+ # Name of the column with the ground truths.
978
+ ground_truth_column_name: nil,
979
+ # Name of the column with human feedback.
980
+ human_feedback_column_name: nil,
981
+ # Name of the column with the inference ids. This is useful if you want to update
982
+ # rows at a later point in time. If not provided, a unique id is generated by
983
+ # Openlayer.
984
+ inference_id_column_name: nil,
985
+ # Name of the column with the latencies.
986
+ latency_column_name: nil,
987
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
988
+ # If not provided, the upload timestamp is used.
989
+ timestamp_column_name: nil
990
+ )
991
+ end
992
+
993
+ sig do
994
+ override.returns(
995
+ {
996
+ ground_truth_column_name: T.nilable(String),
997
+ human_feedback_column_name: T.nilable(String),
998
+ inference_id_column_name: T.nilable(String),
999
+ latency_column_name: T.nilable(String),
1000
+ timestamp_column_name: T.nilable(String)
1001
+ }
1002
+ )
1003
+ end
1004
+ def to_hash
1005
+ end
1006
+ end
1007
+ end
1008
+
1009
+ class UnionMember5 < Openlayer::Internal::Type::BaseModel
1010
+ OrHash =
1011
+ T.type_alias do
1012
+ T.any(
1013
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5,
1014
+ Openlayer::Internal::AnyHash
1015
+ )
1016
+ end
1017
+
1018
+ sig do
1019
+ returns(
1020
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::BackendType::OrSymbol
1021
+ )
1022
+ end
1023
+ attr_accessor :backend_type
1024
+
1025
+ sig { returns(String) }
1026
+ attr_accessor :database
1027
+
1028
+ sig { returns(T.nilable(String)) }
1029
+ attr_accessor :postgres_connection_id
1030
+
1031
+ sig { returns(String) }
1032
+ attr_accessor :schema
1033
+
1034
+ sig { returns(T.nilable(String)) }
1035
+ attr_accessor :table
1036
+
1037
+ sig do
1038
+ returns(
1039
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::Config
1040
+ )
1041
+ end
1042
+ attr_reader :config
1043
+
1044
+ sig do
1045
+ params(
1046
+ config:
1047
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::Config::OrHash
1048
+ ).void
1049
+ end
1050
+ attr_writer :config
1051
+
1052
+ sig do
1053
+ params(
1054
+ backend_type:
1055
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::BackendType::OrSymbol,
1056
+ config:
1057
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::Config::OrHash,
1058
+ database: String,
1059
+ postgres_connection_id: T.nilable(String),
1060
+ schema: String,
1061
+ table: T.nilable(String)
1062
+ ).returns(T.attached_class)
1063
+ end
1064
+ def self.new(
1065
+ backend_type:,
1066
+ config:,
1067
+ database:,
1068
+ postgres_connection_id:,
1069
+ schema:,
1070
+ table:
1071
+ )
1072
+ end
1073
+
1074
+ sig do
1075
+ override.returns(
1076
+ {
1077
+ backend_type:
1078
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::BackendType::OrSymbol,
1079
+ config:
1080
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::Config,
1081
+ database: String,
1082
+ postgres_connection_id: T.nilable(String),
1083
+ schema: String,
1084
+ table: T.nilable(String)
1085
+ }
1086
+ )
1087
+ end
1088
+ def to_hash
1089
+ end
1090
+
1091
+ module BackendType
1092
+ extend Openlayer::Internal::Type::Enum
1093
+
1094
+ TaggedSymbol =
1095
+ T.type_alias do
1096
+ T.all(
1097
+ Symbol,
1098
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::BackendType
1099
+ )
1100
+ end
1101
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1102
+
1103
+ POSTGRES =
1104
+ T.let(
1105
+ :postgres,
1106
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::BackendType::TaggedSymbol
1107
+ )
1108
+
1109
+ sig do
1110
+ override.returns(
1111
+ T::Array[
1112
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::BackendType::TaggedSymbol
1113
+ ]
1114
+ )
1115
+ end
1116
+ def self.values
1117
+ end
1118
+ end
1119
+
1120
+ class Config < Openlayer::Internal::Type::BaseModel
1121
+ OrHash =
1122
+ T.type_alias do
1123
+ T.any(
1124
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::UnionMember5::Config,
1125
+ Openlayer::Internal::AnyHash
1126
+ )
1127
+ end
1128
+
1129
+ # Name of the column with the ground truths.
1130
+ sig { returns(T.nilable(String)) }
1131
+ attr_accessor :ground_truth_column_name
1132
+
1133
+ # Name of the column with human feedback.
1134
+ sig { returns(T.nilable(String)) }
1135
+ attr_accessor :human_feedback_column_name
1136
+
1137
+ # Name of the column with the latencies.
1138
+ sig { returns(T.nilable(String)) }
1139
+ attr_accessor :latency_column_name
1140
+
1141
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
1142
+ # If not provided, the upload timestamp is used.
1143
+ sig { returns(T.nilable(String)) }
1144
+ attr_accessor :timestamp_column_name
1145
+
1146
+ # Name of the column with the inference ids. This is useful if you want to update
1147
+ # rows at a later point in time. If not provided, a unique id is generated by
1148
+ # Openlayer.
1149
+ sig { returns(T.nilable(String)) }
1150
+ attr_accessor :inference_id_column_name
1151
+
1152
+ sig do
1153
+ params(
1154
+ ground_truth_column_name: T.nilable(String),
1155
+ human_feedback_column_name: T.nilable(String),
1156
+ inference_id_column_name: T.nilable(String),
1157
+ latency_column_name: T.nilable(String),
1158
+ timestamp_column_name: T.nilable(String)
1159
+ ).returns(T.attached_class)
1160
+ end
1161
+ def self.new(
1162
+ # Name of the column with the ground truths.
1163
+ ground_truth_column_name: nil,
1164
+ # Name of the column with human feedback.
1165
+ human_feedback_column_name: nil,
1166
+ # Name of the column with the inference ids. This is useful if you want to update
1167
+ # rows at a later point in time. If not provided, a unique id is generated by
1168
+ # Openlayer.
1169
+ inference_id_column_name: nil,
1170
+ # Name of the column with the latencies.
1171
+ latency_column_name: nil,
1172
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
1173
+ # If not provided, the upload timestamp is used.
1174
+ timestamp_column_name: nil
1175
+ )
1176
+ end
1177
+
1178
+ sig do
1179
+ override.returns(
1180
+ {
1181
+ ground_truth_column_name: T.nilable(String),
1182
+ human_feedback_column_name: T.nilable(String),
1183
+ inference_id_column_name: T.nilable(String),
1184
+ latency_column_name: T.nilable(String),
1185
+ timestamp_column_name: T.nilable(String)
1186
+ }
1187
+ )
1188
+ end
1189
+ def to_hash
1190
+ end
1191
+ end
1192
+ end
1193
+
1194
+ sig do
1195
+ override.returns(
1196
+ T::Array[
1197
+ Openlayer::Projects::InferencePipelineCreateParams::DataBackend::Variants
1198
+ ]
1199
+ )
1200
+ end
1201
+ def self.variants
1202
+ end
1203
+ end
1204
+
110
1205
  class Project < Openlayer::Internal::Type::BaseModel
111
1206
  OrHash =
112
1207
  T.type_alias do