openlayer 0.4.1 → 0.6.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 (60) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +35 -0
  3. data/README.md +1 -1
  4. data/lib/openlayer/client.rb +4 -0
  5. data/lib/openlayer/internal/transport/base_client.rb +7 -1
  6. data/lib/openlayer/internal/transport/pooled_net_requester.rb +38 -26
  7. data/lib/openlayer/internal/util.rb +3 -2
  8. data/lib/openlayer/models/inference_pipeline_retrieve_response.rb +507 -1
  9. data/lib/openlayer/models/inference_pipeline_update_response.rb +507 -1
  10. data/lib/openlayer/models/projects/inference_pipeline_create_params.rb +609 -1
  11. data/lib/openlayer/models/projects/inference_pipeline_create_response.rb +507 -1
  12. data/lib/openlayer/models/projects/inference_pipeline_list_response.rb +507 -1
  13. data/lib/openlayer/models/projects/test_create_params.rb +49 -1
  14. data/lib/openlayer/models/projects/test_create_response.rb +49 -1
  15. data/lib/openlayer/models/projects/test_list_response.rb +49 -1
  16. data/lib/openlayer/models/test_evaluate_params.rb +50 -0
  17. data/lib/openlayer/models/test_evaluate_response.rb +75 -0
  18. data/lib/openlayer/models.rb +2 -0
  19. data/lib/openlayer/resources/projects/inference_pipelines.rb +3 -1
  20. data/lib/openlayer/resources/projects/tests.rb +9 -1
  21. data/lib/openlayer/resources/tests.rb +50 -0
  22. data/lib/openlayer/version.rb +1 -1
  23. data/lib/openlayer.rb +5 -0
  24. data/manifest.yaml +2 -0
  25. data/rbi/openlayer/client.rbi +3 -0
  26. data/rbi/openlayer/internal/transport/base_client.rbi +5 -0
  27. data/rbi/openlayer/internal/transport/pooled_net_requester.rbi +6 -2
  28. data/rbi/openlayer/internal/type/base_model.rbi +8 -4
  29. data/rbi/openlayer/models/inference_pipeline_retrieve_response.rbi +948 -0
  30. data/rbi/openlayer/models/inference_pipeline_update_response.rbi +948 -0
  31. data/rbi/openlayer/models/projects/inference_pipeline_create_params.rbi +1095 -0
  32. data/rbi/openlayer/models/projects/inference_pipeline_create_response.rbi +952 -0
  33. data/rbi/openlayer/models/projects/inference_pipeline_list_response.rbi +952 -0
  34. data/rbi/openlayer/models/projects/test_create_params.rbi +40 -0
  35. data/rbi/openlayer/models/projects/test_create_response.rbi +40 -0
  36. data/rbi/openlayer/models/projects/test_list_response.rbi +40 -0
  37. data/rbi/openlayer/models/test_evaluate_params.rbi +75 -0
  38. data/rbi/openlayer/models/test_evaluate_response.rbi +121 -0
  39. data/rbi/openlayer/models.rbi +2 -0
  40. data/rbi/openlayer/resources/projects/inference_pipelines.rbi +12 -0
  41. data/rbi/openlayer/resources/projects/tests.rbi +16 -0
  42. data/rbi/openlayer/resources/tests.rbi +42 -0
  43. data/sig/openlayer/client.rbs +2 -0
  44. data/sig/openlayer/internal/transport/base_client.rbs +2 -0
  45. data/sig/openlayer/internal/transport/pooled_net_requester.rbs +4 -1
  46. data/sig/openlayer/models/inference_pipeline_retrieve_response.rbs +473 -0
  47. data/sig/openlayer/models/inference_pipeline_update_response.rbs +473 -0
  48. data/sig/openlayer/models/projects/inference_pipeline_create_params.rbs +493 -0
  49. data/sig/openlayer/models/projects/inference_pipeline_create_response.rbs +473 -0
  50. data/sig/openlayer/models/projects/inference_pipeline_list_response.rbs +473 -0
  51. data/sig/openlayer/models/projects/test_create_params.rbs +20 -0
  52. data/sig/openlayer/models/projects/test_create_response.rbs +20 -0
  53. data/sig/openlayer/models/projects/test_list_response.rbs +20 -0
  54. data/sig/openlayer/models/test_evaluate_params.rbs +45 -0
  55. data/sig/openlayer/models/test_evaluate_response.rbs +63 -0
  56. data/sig/openlayer/models.rbs +2 -0
  57. data/sig/openlayer/resources/projects/inference_pipelines.rbs +1 -0
  58. data/sig/openlayer/resources/projects/tests.rbs +4 -0
  59. data/sig/openlayer/resources/tests.rbs +16 -0
  60. metadata +11 -2
@@ -62,6 +62,15 @@ module Openlayer
62
62
  sig { returns(String) }
63
63
  attr_accessor :name
64
64
 
65
+ sig do
66
+ returns(
67
+ T.nilable(
68
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::Variants
69
+ )
70
+ )
71
+ end
72
+ attr_accessor :data_backend
73
+
65
74
  sig do
66
75
  returns(
67
76
  T.nilable(
@@ -167,6 +176,14 @@ module Openlayer
167
176
  sig { returns(Integer) }
168
177
  attr_accessor :total_goal_count
169
178
 
179
+ # The last time the data was polled.
180
+ sig { returns(T.nilable(Time)) }
181
+ attr_accessor :date_last_polled
182
+
183
+ # The total number of records in the data backend.
184
+ sig { returns(T.nilable(Integer)) }
185
+ attr_accessor :total_records_count
186
+
170
187
  # The workspace id.
171
188
  sig { returns(T.nilable(String)) }
172
189
  attr_reader :workspace_id
@@ -193,10 +210,23 @@ module Openlayer
193
210
  Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::OrSymbol,
194
211
  status_message: T.nilable(String),
195
212
  total_goal_count: Integer,
213
+ data_backend:
214
+ T.nilable(
215
+ T.any(
216
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::OrHash,
217
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::BackendType::OrHash,
218
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember2::OrHash,
219
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember3::OrHash,
220
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember4::OrHash,
221
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember5::OrHash
222
+ )
223
+ ),
224
+ date_last_polled: T.nilable(Time),
196
225
  project:
197
226
  T.nilable(
198
227
  Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project::OrHash
199
228
  ),
229
+ total_records_count: T.nilable(Integer),
200
230
  workspace:
201
231
  T.nilable(
202
232
  Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace::OrHash
@@ -234,7 +264,12 @@ module Openlayer
234
264
  status_message:,
235
265
  # The total number of tests.
236
266
  total_goal_count:,
267
+ data_backend: nil,
268
+ # The last time the data was polled.
269
+ date_last_polled: nil,
237
270
  project: nil,
271
+ # The total number of records in the data backend.
272
+ total_records_count: nil,
238
273
  workspace: nil,
239
274
  # The workspace id.
240
275
  workspace_id: nil
@@ -261,10 +296,16 @@ module Openlayer
261
296
  Openlayer::Models::Projects::InferencePipelineListResponse::Item::Status::TaggedSymbol,
262
297
  status_message: T.nilable(String),
263
298
  total_goal_count: Integer,
299
+ data_backend:
300
+ T.nilable(
301
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::Variants
302
+ ),
303
+ date_last_polled: T.nilable(Time),
264
304
  project:
265
305
  T.nilable(
266
306
  Openlayer::Models::Projects::InferencePipelineListResponse::Item::Project
267
307
  ),
308
+ total_records_count: T.nilable(Integer),
268
309
  workspace:
269
310
  T.nilable(
270
311
  Openlayer::Models::Projects::InferencePipelineListResponse::Item::Workspace
@@ -352,6 +393,917 @@ module Openlayer
352
393
  end
353
394
  end
354
395
 
396
+ module DataBackend
397
+ extend Openlayer::Internal::Type::Union
398
+
399
+ Variants =
400
+ T.type_alias do
401
+ T.any(
402
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0,
403
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::BackendType,
404
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember2,
405
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember3,
406
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember4,
407
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember5
408
+ )
409
+ end
410
+
411
+ class UnionMember0 < Openlayer::Internal::Type::BaseModel
412
+ OrHash =
413
+ T.type_alias do
414
+ T.any(
415
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0,
416
+ Openlayer::Internal::AnyHash
417
+ )
418
+ end
419
+
420
+ sig do
421
+ returns(
422
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::BackendType::TaggedSymbol
423
+ )
424
+ end
425
+ attr_accessor :backend_type
426
+
427
+ sig { returns(T.nilable(String)) }
428
+ attr_accessor :bigquery_connection_id
429
+
430
+ sig { returns(String) }
431
+ attr_accessor :dataset_id
432
+
433
+ sig { returns(String) }
434
+ attr_accessor :project_id
435
+
436
+ sig { returns(T.nilable(String)) }
437
+ attr_accessor :table_id
438
+
439
+ sig do
440
+ returns(
441
+ T.nilable(
442
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::PartitionType::TaggedSymbol
443
+ )
444
+ )
445
+ end
446
+ attr_accessor :partition_type
447
+
448
+ sig do
449
+ params(
450
+ backend_type:
451
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::BackendType::OrSymbol,
452
+ bigquery_connection_id: T.nilable(String),
453
+ dataset_id: String,
454
+ project_id: String,
455
+ table_id: T.nilable(String),
456
+ partition_type:
457
+ T.nilable(
458
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::PartitionType::OrSymbol
459
+ )
460
+ ).returns(T.attached_class)
461
+ end
462
+ def self.new(
463
+ backend_type:,
464
+ bigquery_connection_id:,
465
+ dataset_id:,
466
+ project_id:,
467
+ table_id:,
468
+ partition_type: nil
469
+ )
470
+ end
471
+
472
+ sig do
473
+ override.returns(
474
+ {
475
+ backend_type:
476
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::BackendType::TaggedSymbol,
477
+ bigquery_connection_id: T.nilable(String),
478
+ config:
479
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::Config,
480
+ dataset_id: String,
481
+ project_id: String,
482
+ table_id: T.nilable(String),
483
+ partition_type:
484
+ T.nilable(
485
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::PartitionType::TaggedSymbol
486
+ )
487
+ }
488
+ )
489
+ end
490
+ def to_hash
491
+ end
492
+
493
+ module BackendType
494
+ extend Openlayer::Internal::Type::Enum
495
+
496
+ TaggedSymbol =
497
+ T.type_alias do
498
+ T.all(
499
+ Symbol,
500
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::BackendType
501
+ )
502
+ end
503
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
504
+
505
+ BIGQUERY =
506
+ T.let(
507
+ :bigquery,
508
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::BackendType::TaggedSymbol
509
+ )
510
+
511
+ sig do
512
+ override.returns(
513
+ T::Array[
514
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::BackendType::TaggedSymbol
515
+ ]
516
+ )
517
+ end
518
+ def self.values
519
+ end
520
+ end
521
+
522
+ class Config < Openlayer::Internal::Type::BaseModel
523
+ OrHash =
524
+ T.type_alias do
525
+ T.any(
526
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::Config,
527
+ Openlayer::Internal::AnyHash
528
+ )
529
+ end
530
+
531
+ # Name of the column with the ground truths.
532
+ sig { returns(T.nilable(String)) }
533
+ attr_accessor :ground_truth_column_name
534
+
535
+ # Name of the column with human feedback.
536
+ sig { returns(T.nilable(String)) }
537
+ attr_accessor :human_feedback_column_name
538
+
539
+ # Name of the column with the latencies.
540
+ sig { returns(T.nilable(String)) }
541
+ attr_accessor :latency_column_name
542
+
543
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
544
+ # If not provided, the upload timestamp is used.
545
+ sig { returns(T.nilable(String)) }
546
+ attr_accessor :timestamp_column_name
547
+
548
+ sig do
549
+ params(
550
+ ground_truth_column_name: T.nilable(String),
551
+ human_feedback_column_name: T.nilable(String),
552
+ latency_column_name: T.nilable(String),
553
+ timestamp_column_name: T.nilable(String)
554
+ ).returns(T.attached_class)
555
+ end
556
+ def self.new(
557
+ # Name of the column with the ground truths.
558
+ ground_truth_column_name: nil,
559
+ # Name of the column with human feedback.
560
+ human_feedback_column_name: nil,
561
+ # Name of the column with the latencies.
562
+ latency_column_name: nil,
563
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
564
+ # If not provided, the upload timestamp is used.
565
+ timestamp_column_name: nil
566
+ )
567
+ end
568
+
569
+ sig do
570
+ override.returns(
571
+ {
572
+ ground_truth_column_name: T.nilable(String),
573
+ human_feedback_column_name: T.nilable(String),
574
+ inference_id_column_name: T.nilable(String),
575
+ latency_column_name: T.nilable(String),
576
+ timestamp_column_name: T.nilable(String)
577
+ }
578
+ )
579
+ end
580
+ def to_hash
581
+ end
582
+ end
583
+
584
+ module PartitionType
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::DataBackend::UnionMember0::PartitionType
592
+ )
593
+ end
594
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
595
+
596
+ DAY =
597
+ T.let(
598
+ :DAY,
599
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::PartitionType::TaggedSymbol
600
+ )
601
+ MONTH =
602
+ T.let(
603
+ :MONTH,
604
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::PartitionType::TaggedSymbol
605
+ )
606
+ YEAR =
607
+ T.let(
608
+ :YEAR,
609
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::PartitionType::TaggedSymbol
610
+ )
611
+
612
+ sig do
613
+ override.returns(
614
+ T::Array[
615
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember0::PartitionType::TaggedSymbol
616
+ ]
617
+ )
618
+ end
619
+ def self.values
620
+ end
621
+ end
622
+ end
623
+
624
+ class BackendType < Openlayer::Internal::Type::BaseModel
625
+ OrHash =
626
+ T.type_alias do
627
+ T.any(
628
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::BackendType,
629
+ Openlayer::Internal::AnyHash
630
+ )
631
+ end
632
+
633
+ sig do
634
+ returns(
635
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::BackendType::BackendType::TaggedSymbol
636
+ )
637
+ end
638
+ attr_accessor :backend_type
639
+
640
+ sig do
641
+ params(
642
+ backend_type:
643
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::BackendType::BackendType::OrSymbol
644
+ ).returns(T.attached_class)
645
+ end
646
+ def self.new(backend_type:)
647
+ end
648
+
649
+ sig do
650
+ override.returns(
651
+ {
652
+ backend_type:
653
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::BackendType::BackendType::TaggedSymbol
654
+ }
655
+ )
656
+ end
657
+ def to_hash
658
+ end
659
+
660
+ module BackendType
661
+ extend Openlayer::Internal::Type::Enum
662
+
663
+ TaggedSymbol =
664
+ T.type_alias do
665
+ T.all(
666
+ Symbol,
667
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::BackendType::BackendType
668
+ )
669
+ end
670
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
671
+
672
+ DEFAULT =
673
+ T.let(
674
+ :default,
675
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::BackendType::BackendType::TaggedSymbol
676
+ )
677
+
678
+ sig do
679
+ override.returns(
680
+ T::Array[
681
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::BackendType::BackendType::TaggedSymbol
682
+ ]
683
+ )
684
+ end
685
+ def self.values
686
+ end
687
+ end
688
+ end
689
+
690
+ class UnionMember2 < Openlayer::Internal::Type::BaseModel
691
+ OrHash =
692
+ T.type_alias do
693
+ T.any(
694
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember2,
695
+ Openlayer::Internal::AnyHash
696
+ )
697
+ end
698
+
699
+ sig do
700
+ returns(
701
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember2::BackendType::TaggedSymbol
702
+ )
703
+ end
704
+ attr_accessor :backend_type
705
+
706
+ sig { returns(String) }
707
+ attr_accessor :database
708
+
709
+ sig { returns(String) }
710
+ attr_accessor :schema
711
+
712
+ sig { returns(T.nilable(String)) }
713
+ attr_accessor :snowflake_connection_id
714
+
715
+ sig { returns(T.nilable(String)) }
716
+ attr_accessor :table
717
+
718
+ sig do
719
+ params(
720
+ backend_type:
721
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember2::BackendType::OrSymbol,
722
+ database: String,
723
+ schema: String,
724
+ snowflake_connection_id: T.nilable(String),
725
+ table: T.nilable(String)
726
+ ).returns(T.attached_class)
727
+ end
728
+ def self.new(
729
+ backend_type:,
730
+ database:,
731
+ schema:,
732
+ snowflake_connection_id:,
733
+ table:
734
+ )
735
+ end
736
+
737
+ sig do
738
+ override.returns(
739
+ {
740
+ backend_type:
741
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember2::BackendType::TaggedSymbol,
742
+ config:
743
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember2::Config,
744
+ database: String,
745
+ schema: String,
746
+ snowflake_connection_id: T.nilable(String),
747
+ table: T.nilable(String)
748
+ }
749
+ )
750
+ end
751
+ def to_hash
752
+ end
753
+
754
+ module BackendType
755
+ extend Openlayer::Internal::Type::Enum
756
+
757
+ TaggedSymbol =
758
+ T.type_alias do
759
+ T.all(
760
+ Symbol,
761
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember2::BackendType
762
+ )
763
+ end
764
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
765
+
766
+ SNOWFLAKE =
767
+ T.let(
768
+ :snowflake,
769
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember2::BackendType::TaggedSymbol
770
+ )
771
+
772
+ sig do
773
+ override.returns(
774
+ T::Array[
775
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember2::BackendType::TaggedSymbol
776
+ ]
777
+ )
778
+ end
779
+ def self.values
780
+ end
781
+ end
782
+
783
+ class Config < Openlayer::Internal::Type::BaseModel
784
+ OrHash =
785
+ T.type_alias do
786
+ T.any(
787
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember2::Config,
788
+ Openlayer::Internal::AnyHash
789
+ )
790
+ end
791
+
792
+ # Name of the column with the ground truths.
793
+ sig { returns(T.nilable(String)) }
794
+ attr_accessor :ground_truth_column_name
795
+
796
+ # Name of the column with human feedback.
797
+ sig { returns(T.nilable(String)) }
798
+ attr_accessor :human_feedback_column_name
799
+
800
+ # Name of the column with the latencies.
801
+ sig { returns(T.nilable(String)) }
802
+ attr_accessor :latency_column_name
803
+
804
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
805
+ # If not provided, the upload timestamp is used.
806
+ sig { returns(T.nilable(String)) }
807
+ attr_accessor :timestamp_column_name
808
+
809
+ sig do
810
+ params(
811
+ ground_truth_column_name: T.nilable(String),
812
+ human_feedback_column_name: T.nilable(String),
813
+ latency_column_name: T.nilable(String),
814
+ timestamp_column_name: T.nilable(String)
815
+ ).returns(T.attached_class)
816
+ end
817
+ def self.new(
818
+ # Name of the column with the ground truths.
819
+ ground_truth_column_name: nil,
820
+ # Name of the column with human feedback.
821
+ human_feedback_column_name: nil,
822
+ # Name of the column with the latencies.
823
+ latency_column_name: nil,
824
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
825
+ # If not provided, the upload timestamp is used.
826
+ timestamp_column_name: nil
827
+ )
828
+ end
829
+
830
+ sig do
831
+ override.returns(
832
+ {
833
+ ground_truth_column_name: T.nilable(String),
834
+ human_feedback_column_name: T.nilable(String),
835
+ inference_id_column_name: T.nilable(String),
836
+ latency_column_name: T.nilable(String),
837
+ timestamp_column_name: T.nilable(String)
838
+ }
839
+ )
840
+ end
841
+ def to_hash
842
+ end
843
+ end
844
+ end
845
+
846
+ class UnionMember3 < Openlayer::Internal::Type::BaseModel
847
+ OrHash =
848
+ T.type_alias do
849
+ T.any(
850
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember3,
851
+ Openlayer::Internal::AnyHash
852
+ )
853
+ end
854
+
855
+ sig do
856
+ returns(
857
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember3::BackendType::TaggedSymbol
858
+ )
859
+ end
860
+ attr_accessor :backend_type
861
+
862
+ sig { returns(T.nilable(String)) }
863
+ attr_accessor :databricks_dtl_connection_id
864
+
865
+ sig { returns(T.nilable(String)) }
866
+ attr_accessor :table_id
867
+
868
+ sig do
869
+ params(
870
+ backend_type:
871
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember3::BackendType::OrSymbol,
872
+ databricks_dtl_connection_id: T.nilable(String),
873
+ table_id: T.nilable(String)
874
+ ).returns(T.attached_class)
875
+ end
876
+ def self.new(
877
+ backend_type:,
878
+ databricks_dtl_connection_id:,
879
+ table_id:
880
+ )
881
+ end
882
+
883
+ sig do
884
+ override.returns(
885
+ {
886
+ backend_type:
887
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember3::BackendType::TaggedSymbol,
888
+ config:
889
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember3::Config,
890
+ databricks_dtl_connection_id: T.nilable(String),
891
+ table_id: T.nilable(String)
892
+ }
893
+ )
894
+ end
895
+ def to_hash
896
+ end
897
+
898
+ module BackendType
899
+ extend Openlayer::Internal::Type::Enum
900
+
901
+ TaggedSymbol =
902
+ T.type_alias do
903
+ T.all(
904
+ Symbol,
905
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember3::BackendType
906
+ )
907
+ end
908
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
909
+
910
+ DATABRICKS_DTL =
911
+ T.let(
912
+ :databricks_dtl,
913
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember3::BackendType::TaggedSymbol
914
+ )
915
+
916
+ sig do
917
+ override.returns(
918
+ T::Array[
919
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember3::BackendType::TaggedSymbol
920
+ ]
921
+ )
922
+ end
923
+ def self.values
924
+ end
925
+ end
926
+
927
+ class Config < Openlayer::Internal::Type::BaseModel
928
+ OrHash =
929
+ T.type_alias do
930
+ T.any(
931
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember3::Config,
932
+ Openlayer::Internal::AnyHash
933
+ )
934
+ end
935
+
936
+ # Name of the column with the ground truths.
937
+ sig { returns(T.nilable(String)) }
938
+ attr_accessor :ground_truth_column_name
939
+
940
+ # Name of the column with human feedback.
941
+ sig { returns(T.nilable(String)) }
942
+ attr_accessor :human_feedback_column_name
943
+
944
+ # Name of the column with the latencies.
945
+ sig { returns(T.nilable(String)) }
946
+ attr_accessor :latency_column_name
947
+
948
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
949
+ # If not provided, the upload timestamp is used.
950
+ sig { returns(T.nilable(String)) }
951
+ attr_accessor :timestamp_column_name
952
+
953
+ sig do
954
+ params(
955
+ ground_truth_column_name: T.nilable(String),
956
+ human_feedback_column_name: T.nilable(String),
957
+ latency_column_name: T.nilable(String),
958
+ timestamp_column_name: T.nilable(String)
959
+ ).returns(T.attached_class)
960
+ end
961
+ def self.new(
962
+ # Name of the column with the ground truths.
963
+ ground_truth_column_name: nil,
964
+ # Name of the column with human feedback.
965
+ human_feedback_column_name: nil,
966
+ # Name of the column with the latencies.
967
+ latency_column_name: nil,
968
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
969
+ # If not provided, the upload timestamp is used.
970
+ timestamp_column_name: nil
971
+ )
972
+ end
973
+
974
+ sig do
975
+ override.returns(
976
+ {
977
+ ground_truth_column_name: T.nilable(String),
978
+ human_feedback_column_name: T.nilable(String),
979
+ inference_id_column_name: T.nilable(String),
980
+ latency_column_name: T.nilable(String),
981
+ timestamp_column_name: T.nilable(String)
982
+ }
983
+ )
984
+ end
985
+ def to_hash
986
+ end
987
+ end
988
+ end
989
+
990
+ class UnionMember4 < Openlayer::Internal::Type::BaseModel
991
+ OrHash =
992
+ T.type_alias do
993
+ T.any(
994
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember4,
995
+ Openlayer::Internal::AnyHash
996
+ )
997
+ end
998
+
999
+ sig do
1000
+ returns(
1001
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember4::BackendType::TaggedSymbol
1002
+ )
1003
+ end
1004
+ attr_accessor :backend_type
1005
+
1006
+ sig { returns(T.nilable(String)) }
1007
+ attr_accessor :redshift_connection_id
1008
+
1009
+ sig { returns(String) }
1010
+ attr_accessor :schema_name
1011
+
1012
+ sig { returns(String) }
1013
+ attr_accessor :table_name
1014
+
1015
+ sig do
1016
+ params(
1017
+ backend_type:
1018
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember4::BackendType::OrSymbol,
1019
+ redshift_connection_id: T.nilable(String),
1020
+ schema_name: String,
1021
+ table_name: String
1022
+ ).returns(T.attached_class)
1023
+ end
1024
+ def self.new(
1025
+ backend_type:,
1026
+ redshift_connection_id:,
1027
+ schema_name:,
1028
+ table_name:
1029
+ )
1030
+ end
1031
+
1032
+ sig do
1033
+ override.returns(
1034
+ {
1035
+ backend_type:
1036
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember4::BackendType::TaggedSymbol,
1037
+ config:
1038
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember4::Config,
1039
+ redshift_connection_id: T.nilable(String),
1040
+ schema_name: String,
1041
+ table_name: String
1042
+ }
1043
+ )
1044
+ end
1045
+ def to_hash
1046
+ end
1047
+
1048
+ module BackendType
1049
+ extend Openlayer::Internal::Type::Enum
1050
+
1051
+ TaggedSymbol =
1052
+ T.type_alias do
1053
+ T.all(
1054
+ Symbol,
1055
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember4::BackendType
1056
+ )
1057
+ end
1058
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1059
+
1060
+ REDSHIFT =
1061
+ T.let(
1062
+ :redshift,
1063
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember4::BackendType::TaggedSymbol
1064
+ )
1065
+
1066
+ sig do
1067
+ override.returns(
1068
+ T::Array[
1069
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember4::BackendType::TaggedSymbol
1070
+ ]
1071
+ )
1072
+ end
1073
+ def self.values
1074
+ end
1075
+ end
1076
+
1077
+ class Config < Openlayer::Internal::Type::BaseModel
1078
+ OrHash =
1079
+ T.type_alias do
1080
+ T.any(
1081
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember4::Config,
1082
+ Openlayer::Internal::AnyHash
1083
+ )
1084
+ end
1085
+
1086
+ # Name of the column with the ground truths.
1087
+ sig { returns(T.nilable(String)) }
1088
+ attr_accessor :ground_truth_column_name
1089
+
1090
+ # Name of the column with human feedback.
1091
+ sig { returns(T.nilable(String)) }
1092
+ attr_accessor :human_feedback_column_name
1093
+
1094
+ # Name of the column with the latencies.
1095
+ sig { returns(T.nilable(String)) }
1096
+ attr_accessor :latency_column_name
1097
+
1098
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
1099
+ # If not provided, the upload timestamp is used.
1100
+ sig { returns(T.nilable(String)) }
1101
+ attr_accessor :timestamp_column_name
1102
+
1103
+ sig do
1104
+ params(
1105
+ ground_truth_column_name: T.nilable(String),
1106
+ human_feedback_column_name: T.nilable(String),
1107
+ latency_column_name: T.nilable(String),
1108
+ timestamp_column_name: T.nilable(String)
1109
+ ).returns(T.attached_class)
1110
+ end
1111
+ def self.new(
1112
+ # Name of the column with the ground truths.
1113
+ ground_truth_column_name: nil,
1114
+ # Name of the column with human feedback.
1115
+ human_feedback_column_name: nil,
1116
+ # Name of the column with the latencies.
1117
+ latency_column_name: nil,
1118
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
1119
+ # If not provided, the upload timestamp is used.
1120
+ timestamp_column_name: nil
1121
+ )
1122
+ end
1123
+
1124
+ sig do
1125
+ override.returns(
1126
+ {
1127
+ ground_truth_column_name: T.nilable(String),
1128
+ human_feedback_column_name: T.nilable(String),
1129
+ inference_id_column_name: T.nilable(String),
1130
+ latency_column_name: T.nilable(String),
1131
+ timestamp_column_name: T.nilable(String)
1132
+ }
1133
+ )
1134
+ end
1135
+ def to_hash
1136
+ end
1137
+ end
1138
+ end
1139
+
1140
+ class UnionMember5 < Openlayer::Internal::Type::BaseModel
1141
+ OrHash =
1142
+ T.type_alias do
1143
+ T.any(
1144
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember5,
1145
+ Openlayer::Internal::AnyHash
1146
+ )
1147
+ end
1148
+
1149
+ sig do
1150
+ returns(
1151
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember5::BackendType::TaggedSymbol
1152
+ )
1153
+ end
1154
+ attr_accessor :backend_type
1155
+
1156
+ sig { returns(String) }
1157
+ attr_accessor :database
1158
+
1159
+ sig { returns(T.nilable(String)) }
1160
+ attr_accessor :postgres_connection_id
1161
+
1162
+ sig { returns(String) }
1163
+ attr_accessor :schema
1164
+
1165
+ sig { returns(T.nilable(String)) }
1166
+ attr_accessor :table
1167
+
1168
+ sig do
1169
+ params(
1170
+ backend_type:
1171
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember5::BackendType::OrSymbol,
1172
+ database: String,
1173
+ postgres_connection_id: T.nilable(String),
1174
+ schema: String,
1175
+ table: T.nilable(String)
1176
+ ).returns(T.attached_class)
1177
+ end
1178
+ def self.new(
1179
+ backend_type:,
1180
+ database:,
1181
+ postgres_connection_id:,
1182
+ schema:,
1183
+ table:
1184
+ )
1185
+ end
1186
+
1187
+ sig do
1188
+ override.returns(
1189
+ {
1190
+ backend_type:
1191
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember5::BackendType::TaggedSymbol,
1192
+ config:
1193
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember5::Config,
1194
+ database: String,
1195
+ postgres_connection_id: T.nilable(String),
1196
+ schema: String,
1197
+ table: T.nilable(String)
1198
+ }
1199
+ )
1200
+ end
1201
+ def to_hash
1202
+ end
1203
+
1204
+ module BackendType
1205
+ extend Openlayer::Internal::Type::Enum
1206
+
1207
+ TaggedSymbol =
1208
+ T.type_alias do
1209
+ T.all(
1210
+ Symbol,
1211
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember5::BackendType
1212
+ )
1213
+ end
1214
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1215
+
1216
+ POSTGRES =
1217
+ T.let(
1218
+ :postgres,
1219
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember5::BackendType::TaggedSymbol
1220
+ )
1221
+
1222
+ sig do
1223
+ override.returns(
1224
+ T::Array[
1225
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember5::BackendType::TaggedSymbol
1226
+ ]
1227
+ )
1228
+ end
1229
+ def self.values
1230
+ end
1231
+ end
1232
+
1233
+ class Config < Openlayer::Internal::Type::BaseModel
1234
+ OrHash =
1235
+ T.type_alias do
1236
+ T.any(
1237
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::UnionMember5::Config,
1238
+ Openlayer::Internal::AnyHash
1239
+ )
1240
+ end
1241
+
1242
+ # Name of the column with the ground truths.
1243
+ sig { returns(T.nilable(String)) }
1244
+ attr_accessor :ground_truth_column_name
1245
+
1246
+ # Name of the column with human feedback.
1247
+ sig { returns(T.nilable(String)) }
1248
+ attr_accessor :human_feedback_column_name
1249
+
1250
+ # Name of the column with the latencies.
1251
+ sig { returns(T.nilable(String)) }
1252
+ attr_accessor :latency_column_name
1253
+
1254
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
1255
+ # If not provided, the upload timestamp is used.
1256
+ sig { returns(T.nilable(String)) }
1257
+ attr_accessor :timestamp_column_name
1258
+
1259
+ sig do
1260
+ params(
1261
+ ground_truth_column_name: T.nilable(String),
1262
+ human_feedback_column_name: T.nilable(String),
1263
+ latency_column_name: T.nilable(String),
1264
+ timestamp_column_name: T.nilable(String)
1265
+ ).returns(T.attached_class)
1266
+ end
1267
+ def self.new(
1268
+ # Name of the column with the ground truths.
1269
+ ground_truth_column_name: nil,
1270
+ # Name of the column with human feedback.
1271
+ human_feedback_column_name: nil,
1272
+ # Name of the column with the latencies.
1273
+ latency_column_name: nil,
1274
+ # Name of the column with the timestamps. Timestamps must be in UNIX sec format.
1275
+ # If not provided, the upload timestamp is used.
1276
+ timestamp_column_name: nil
1277
+ )
1278
+ end
1279
+
1280
+ sig do
1281
+ override.returns(
1282
+ {
1283
+ ground_truth_column_name: T.nilable(String),
1284
+ human_feedback_column_name: T.nilable(String),
1285
+ inference_id_column_name: T.nilable(String),
1286
+ latency_column_name: T.nilable(String),
1287
+ timestamp_column_name: T.nilable(String)
1288
+ }
1289
+ )
1290
+ end
1291
+ def to_hash
1292
+ end
1293
+ end
1294
+ end
1295
+
1296
+ sig do
1297
+ override.returns(
1298
+ T::Array[
1299
+ Openlayer::Models::Projects::InferencePipelineListResponse::Item::DataBackend::Variants
1300
+ ]
1301
+ )
1302
+ end
1303
+ def self.variants
1304
+ end
1305
+ end
1306
+
355
1307
  class Project < Openlayer::Internal::Type::BaseModel
356
1308
  OrHash =
357
1309
  T.type_alias do