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