deeprails 0.1.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 (131) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +18 -0
  4. data/README.md +273 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/deeprails/client.rb +82 -0
  7. data/lib/deeprails/errors.rb +228 -0
  8. data/lib/deeprails/file_part.rb +58 -0
  9. data/lib/deeprails/internal/transport/base_client.rb +567 -0
  10. data/lib/deeprails/internal/transport/pooled_net_requester.rb +198 -0
  11. data/lib/deeprails/internal/type/array_of.rb +168 -0
  12. data/lib/deeprails/internal/type/base_model.rb +531 -0
  13. data/lib/deeprails/internal/type/base_page.rb +55 -0
  14. data/lib/deeprails/internal/type/boolean.rb +77 -0
  15. data/lib/deeprails/internal/type/converter.rb +327 -0
  16. data/lib/deeprails/internal/type/enum.rb +131 -0
  17. data/lib/deeprails/internal/type/file_input.rb +111 -0
  18. data/lib/deeprails/internal/type/hash_of.rb +188 -0
  19. data/lib/deeprails/internal/type/request_parameters.rb +42 -0
  20. data/lib/deeprails/internal/type/union.rb +237 -0
  21. data/lib/deeprails/internal/type/unknown.rb +81 -0
  22. data/lib/deeprails/internal/util.rb +915 -0
  23. data/lib/deeprails/internal.rb +20 -0
  24. data/lib/deeprails/models/api_response.rb +119 -0
  25. data/lib/deeprails/models/defend_create_workflow_params.rb +132 -0
  26. data/lib/deeprails/models/defend_response.rb +123 -0
  27. data/lib/deeprails/models/defend_retrieve_event_params.rb +20 -0
  28. data/lib/deeprails/models/defend_retrieve_workflow_params.rb +14 -0
  29. data/lib/deeprails/models/defend_submit_event_params.rb +98 -0
  30. data/lib/deeprails/models/defend_update_workflow_params.rb +49 -0
  31. data/lib/deeprails/models/evaluate_create_params.rb +123 -0
  32. data/lib/deeprails/models/evaluate_retrieve_params.rb +14 -0
  33. data/lib/deeprails/models/evaluation.rb +225 -0
  34. data/lib/deeprails/models/monitor_create_params.rb +30 -0
  35. data/lib/deeprails/models/monitor_retrieve_params.rb +22 -0
  36. data/lib/deeprails/models/monitor_retrieve_response.rb +186 -0
  37. data/lib/deeprails/models/monitor_submit_event_params.rb +124 -0
  38. data/lib/deeprails/models/monitor_submit_event_response.rb +77 -0
  39. data/lib/deeprails/models/monitor_update_params.rb +54 -0
  40. data/lib/deeprails/models/workflow_event_response.rb +57 -0
  41. data/lib/deeprails/models.rb +71 -0
  42. data/lib/deeprails/request_options.rb +77 -0
  43. data/lib/deeprails/resources/defend.rb +162 -0
  44. data/lib/deeprails/resources/evaluate.rb +70 -0
  45. data/lib/deeprails/resources/monitor.rb +130 -0
  46. data/lib/deeprails/version.rb +5 -0
  47. data/lib/deeprails.rb +73 -0
  48. data/manifest.yaml +15 -0
  49. data/rbi/deeprails/client.rbi +55 -0
  50. data/rbi/deeprails/errors.rbi +205 -0
  51. data/rbi/deeprails/file_part.rbi +37 -0
  52. data/rbi/deeprails/internal/transport/base_client.rbi +293 -0
  53. data/rbi/deeprails/internal/transport/pooled_net_requester.rbi +79 -0
  54. data/rbi/deeprails/internal/type/array_of.rbi +104 -0
  55. data/rbi/deeprails/internal/type/base_model.rbi +304 -0
  56. data/rbi/deeprails/internal/type/base_page.rbi +42 -0
  57. data/rbi/deeprails/internal/type/boolean.rbi +58 -0
  58. data/rbi/deeprails/internal/type/converter.rbi +216 -0
  59. data/rbi/deeprails/internal/type/enum.rbi +82 -0
  60. data/rbi/deeprails/internal/type/file_input.rbi +59 -0
  61. data/rbi/deeprails/internal/type/hash_of.rbi +104 -0
  62. data/rbi/deeprails/internal/type/request_parameters.rbi +29 -0
  63. data/rbi/deeprails/internal/type/union.rbi +128 -0
  64. data/rbi/deeprails/internal/type/unknown.rbi +58 -0
  65. data/rbi/deeprails/internal/util.rbi +487 -0
  66. data/rbi/deeprails/internal.rbi +18 -0
  67. data/rbi/deeprails/models/api_response.rbi +204 -0
  68. data/rbi/deeprails/models/defend_create_workflow_params.rbi +270 -0
  69. data/rbi/deeprails/models/defend_response.rbi +198 -0
  70. data/rbi/deeprails/models/defend_retrieve_event_params.rbi +38 -0
  71. data/rbi/deeprails/models/defend_retrieve_workflow_params.rbi +30 -0
  72. data/rbi/deeprails/models/defend_submit_event_params.rbi +170 -0
  73. data/rbi/deeprails/models/defend_update_workflow_params.rbi +107 -0
  74. data/rbi/deeprails/models/evaluate_create_params.rbi +253 -0
  75. data/rbi/deeprails/models/evaluate_retrieve_params.rbi +27 -0
  76. data/rbi/deeprails/models/evaluation.rbi +382 -0
  77. data/rbi/deeprails/models/monitor_create_params.rbi +54 -0
  78. data/rbi/deeprails/models/monitor_retrieve_params.rbi +43 -0
  79. data/rbi/deeprails/models/monitor_retrieve_response.rbi +336 -0
  80. data/rbi/deeprails/models/monitor_submit_event_params.rbi +264 -0
  81. data/rbi/deeprails/models/monitor_submit_event_response.rbi +134 -0
  82. data/rbi/deeprails/models/monitor_update_params.rbi +114 -0
  83. data/rbi/deeprails/models/workflow_event_response.rbi +85 -0
  84. data/rbi/deeprails/models.rbi +33 -0
  85. data/rbi/deeprails/request_options.rbi +59 -0
  86. data/rbi/deeprails/resources/defend.rbi +151 -0
  87. data/rbi/deeprails/resources/evaluate.rbi +66 -0
  88. data/rbi/deeprails/resources/monitor.rbi +114 -0
  89. data/rbi/deeprails/version.rbi +5 -0
  90. data/sig/deeprails/client.rbs +30 -0
  91. data/sig/deeprails/errors.rbs +117 -0
  92. data/sig/deeprails/file_part.rbs +21 -0
  93. data/sig/deeprails/internal/transport/base_client.rbs +131 -0
  94. data/sig/deeprails/internal/transport/pooled_net_requester.rbs +45 -0
  95. data/sig/deeprails/internal/type/array_of.rbs +48 -0
  96. data/sig/deeprails/internal/type/base_model.rbs +102 -0
  97. data/sig/deeprails/internal/type/base_page.rbs +24 -0
  98. data/sig/deeprails/internal/type/boolean.rbs +26 -0
  99. data/sig/deeprails/internal/type/converter.rbs +79 -0
  100. data/sig/deeprails/internal/type/enum.rbs +32 -0
  101. data/sig/deeprails/internal/type/file_input.rbs +25 -0
  102. data/sig/deeprails/internal/type/hash_of.rbs +48 -0
  103. data/sig/deeprails/internal/type/request_parameters.rbs +19 -0
  104. data/sig/deeprails/internal/type/union.rbs +52 -0
  105. data/sig/deeprails/internal/type/unknown.rbs +26 -0
  106. data/sig/deeprails/internal/util.rbs +185 -0
  107. data/sig/deeprails/internal.rbs +9 -0
  108. data/sig/deeprails/models/api_response.rbs +100 -0
  109. data/sig/deeprails/models/defend_create_workflow_params.rbs +98 -0
  110. data/sig/deeprails/models/defend_response.rbs +96 -0
  111. data/sig/deeprails/models/defend_retrieve_event_params.rbs +23 -0
  112. data/sig/deeprails/models/defend_retrieve_workflow_params.rbs +15 -0
  113. data/sig/deeprails/models/defend_submit_event_params.rbs +73 -0
  114. data/sig/deeprails/models/defend_update_workflow_params.rbs +55 -0
  115. data/sig/deeprails/models/evaluate_create_params.rbs +107 -0
  116. data/sig/deeprails/models/evaluate_retrieve_params.rbs +15 -0
  117. data/sig/deeprails/models/evaluation.rbs +189 -0
  118. data/sig/deeprails/models/monitor_create_params.rbs +30 -0
  119. data/sig/deeprails/models/monitor_retrieve_params.rbs +25 -0
  120. data/sig/deeprails/models/monitor_retrieve_response.rbs +167 -0
  121. data/sig/deeprails/models/monitor_submit_event_params.rbs +107 -0
  122. data/sig/deeprails/models/monitor_submit_event_response.rbs +70 -0
  123. data/sig/deeprails/models/monitor_update_params.rbs +55 -0
  124. data/sig/deeprails/models/workflow_event_response.rbs +46 -0
  125. data/sig/deeprails/models.rbs +31 -0
  126. data/sig/deeprails/request_options.rbs +34 -0
  127. data/sig/deeprails/resources/defend.rbs +47 -0
  128. data/sig/deeprails/resources/evaluate.rbs +22 -0
  129. data/sig/deeprails/resources/monitor.rbs +38 -0
  130. data/sig/deeprails/version.rbs +3 -0
  131. metadata +188 -0
@@ -0,0 +1,96 @@
1
+ module Deeprails
2
+ module Models
3
+ type defend_response =
4
+ {
5
+ name: String,
6
+ workflow_id: String,
7
+ created_at: Time,
8
+ description: String,
9
+ improvement_action: Deeprails::Models::DefendResponse::improvement_action?,
10
+ max_retries: Integer,
11
+ modified_at: Time,
12
+ status: Deeprails::Models::DefendResponse::status,
13
+ success_rate: Float
14
+ }
15
+
16
+ class DefendResponse < Deeprails::Internal::Type::BaseModel
17
+ attr_accessor name: String
18
+
19
+ attr_accessor workflow_id: String
20
+
21
+ attr_reader created_at: Time?
22
+
23
+ def created_at=: (Time) -> Time
24
+
25
+ attr_reader description: String?
26
+
27
+ def description=: (String) -> String
28
+
29
+ attr_accessor improvement_action: Deeprails::Models::DefendResponse::improvement_action?
30
+
31
+ attr_reader max_retries: Integer?
32
+
33
+ def max_retries=: (Integer) -> Integer
34
+
35
+ attr_reader modified_at: Time?
36
+
37
+ def modified_at=: (Time) -> Time
38
+
39
+ attr_reader status: Deeprails::Models::DefendResponse::status?
40
+
41
+ def status=: (
42
+ Deeprails::Models::DefendResponse::status
43
+ ) -> Deeprails::Models::DefendResponse::status
44
+
45
+ attr_reader success_rate: Float?
46
+
47
+ def success_rate=: (Float) -> Float
48
+
49
+ def initialize: (
50
+ name: String,
51
+ workflow_id: String,
52
+ ?created_at: Time,
53
+ ?description: String,
54
+ ?improvement_action: Deeprails::Models::DefendResponse::improvement_action?,
55
+ ?max_retries: Integer,
56
+ ?modified_at: Time,
57
+ ?status: Deeprails::Models::DefendResponse::status,
58
+ ?success_rate: Float
59
+ ) -> void
60
+
61
+ def to_hash: -> {
62
+ name: String,
63
+ workflow_id: String,
64
+ created_at: Time,
65
+ description: String,
66
+ improvement_action: Deeprails::Models::DefendResponse::improvement_action?,
67
+ max_retries: Integer,
68
+ modified_at: Time,
69
+ status: Deeprails::Models::DefendResponse::status,
70
+ success_rate: Float
71
+ }
72
+
73
+ type improvement_action = :regenerate | :fixit
74
+
75
+ module ImprovementAction
76
+ extend Deeprails::Internal::Type::Enum
77
+
78
+ REGENERATE: :regenerate
79
+ FIXIT: :fixit
80
+
81
+ def self?.values: -> ::Array[Deeprails::Models::DefendResponse::improvement_action]
82
+ end
83
+
84
+ type status = :archived | :active
85
+
86
+ module Status
87
+ extend Deeprails::Internal::Type::Enum
88
+
89
+ ARCHIVED: :archived
90
+ ACTIVE: :active
91
+
92
+ def self?.values: -> ::Array[Deeprails::Models::DefendResponse::status]
93
+ end
94
+ end
95
+ end
96
+ end
@@ -0,0 +1,23 @@
1
+ module Deeprails
2
+ module Models
3
+ type defend_retrieve_event_params =
4
+ { workflow_id: String } & Deeprails::Internal::Type::request_parameters
5
+
6
+ class DefendRetrieveEventParams < Deeprails::Internal::Type::BaseModel
7
+ extend Deeprails::Internal::Type::RequestParameters::Converter
8
+ include Deeprails::Internal::Type::RequestParameters
9
+
10
+ attr_accessor workflow_id: String
11
+
12
+ def initialize: (
13
+ workflow_id: String,
14
+ ?request_options: Deeprails::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ workflow_id: String,
19
+ request_options: Deeprails::RequestOptions
20
+ }
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,15 @@
1
+ module Deeprails
2
+ module Models
3
+ type defend_retrieve_workflow_params =
4
+ { } & Deeprails::Internal::Type::request_parameters
5
+
6
+ class DefendRetrieveWorkflowParams < Deeprails::Internal::Type::BaseModel
7
+ extend Deeprails::Internal::Type::RequestParameters::Converter
8
+ include Deeprails::Internal::Type::RequestParameters
9
+
10
+ def initialize: (?request_options: Deeprails::request_opts) -> void
11
+
12
+ def to_hash: -> { request_options: Deeprails::RequestOptions }
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,73 @@
1
+ module Deeprails
2
+ module Models
3
+ type defend_submit_event_params =
4
+ {
5
+ model_input: Deeprails::DefendSubmitEventParams::ModelInput,
6
+ model_output: String,
7
+ model_used: String,
8
+ nametag: String,
9
+ run_mode: Deeprails::Models::DefendSubmitEventParams::run_mode
10
+ }
11
+ & Deeprails::Internal::Type::request_parameters
12
+
13
+ class DefendSubmitEventParams < Deeprails::Internal::Type::BaseModel
14
+ extend Deeprails::Internal::Type::RequestParameters::Converter
15
+ include Deeprails::Internal::Type::RequestParameters
16
+
17
+ attr_accessor model_input: Deeprails::DefendSubmitEventParams::ModelInput
18
+
19
+ attr_accessor model_output: String
20
+
21
+ attr_accessor model_used: String
22
+
23
+ attr_accessor nametag: String
24
+
25
+ attr_accessor run_mode: Deeprails::Models::DefendSubmitEventParams::run_mode
26
+
27
+ def initialize: (
28
+ model_input: Deeprails::DefendSubmitEventParams::ModelInput,
29
+ model_output: String,
30
+ model_used: String,
31
+ nametag: String,
32
+ run_mode: Deeprails::Models::DefendSubmitEventParams::run_mode,
33
+ ?request_options: Deeprails::request_opts
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ model_input: Deeprails::DefendSubmitEventParams::ModelInput,
38
+ model_output: String,
39
+ model_used: String,
40
+ nametag: String,
41
+ run_mode: Deeprails::Models::DefendSubmitEventParams::run_mode,
42
+ request_options: Deeprails::RequestOptions
43
+ }
44
+
45
+ type model_input = { user_prompt: String, context: String }
46
+
47
+ class ModelInput < Deeprails::Internal::Type::BaseModel
48
+ attr_accessor user_prompt: String
49
+
50
+ attr_reader context: String?
51
+
52
+ def context=: (String) -> String
53
+
54
+ def initialize: (user_prompt: String, ?context: String) -> void
55
+
56
+ def to_hash: -> { user_prompt: String, context: String }
57
+ end
58
+
59
+ type run_mode = :precision_plus | :precision | :smart | :economy
60
+
61
+ module RunMode
62
+ extend Deeprails::Internal::Type::Enum
63
+
64
+ PRECISION_PLUS: :precision_plus
65
+ PRECISION: :precision
66
+ SMART: :smart
67
+ ECONOMY: :economy
68
+
69
+ def self?.values: -> ::Array[Deeprails::Models::DefendSubmitEventParams::run_mode]
70
+ end
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,55 @@
1
+ module Deeprails
2
+ module Models
3
+ type defend_update_workflow_params =
4
+ {
5
+ description: String,
6
+ name: String,
7
+ type: Deeprails::Models::DefendUpdateWorkflowParams::type_
8
+ }
9
+ & Deeprails::Internal::Type::request_parameters
10
+
11
+ class DefendUpdateWorkflowParams < Deeprails::Internal::Type::BaseModel
12
+ extend Deeprails::Internal::Type::RequestParameters::Converter
13
+ include Deeprails::Internal::Type::RequestParameters
14
+
15
+ attr_reader description: String?
16
+
17
+ def description=: (String) -> String
18
+
19
+ attr_reader name: String?
20
+
21
+ def name=: (String) -> String
22
+
23
+ attr_reader type: Deeprails::Models::DefendUpdateWorkflowParams::type_?
24
+
25
+ def type=: (
26
+ Deeprails::Models::DefendUpdateWorkflowParams::type_
27
+ ) -> Deeprails::Models::DefendUpdateWorkflowParams::type_
28
+
29
+ def initialize: (
30
+ ?description: String,
31
+ ?name: String,
32
+ ?type: Deeprails::Models::DefendUpdateWorkflowParams::type_,
33
+ ?request_options: Deeprails::request_opts
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ description: String,
38
+ name: String,
39
+ type: Deeprails::Models::DefendUpdateWorkflowParams::type_,
40
+ request_options: Deeprails::RequestOptions
41
+ }
42
+
43
+ type type_ = :automatic | :custom
44
+
45
+ module Type
46
+ extend Deeprails::Internal::Type::Enum
47
+
48
+ AUTOMATIC: :automatic
49
+ CUSTOM: :custom
50
+
51
+ def self?.values: -> ::Array[Deeprails::Models::DefendUpdateWorkflowParams::type_]
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,107 @@
1
+ module Deeprails
2
+ module Models
3
+ type evaluate_create_params =
4
+ {
5
+ model_input: Deeprails::EvaluateCreateParams::ModelInput,
6
+ model_output: String,
7
+ run_mode: Deeprails::Models::EvaluateCreateParams::run_mode,
8
+ guardrail_metrics: ::Array[Deeprails::Models::EvaluateCreateParams::guardrail_metric],
9
+ model_used: String,
10
+ nametag: String
11
+ }
12
+ & Deeprails::Internal::Type::request_parameters
13
+
14
+ class EvaluateCreateParams < Deeprails::Internal::Type::BaseModel
15
+ extend Deeprails::Internal::Type::RequestParameters::Converter
16
+ include Deeprails::Internal::Type::RequestParameters
17
+
18
+ attr_accessor model_input: Deeprails::EvaluateCreateParams::ModelInput
19
+
20
+ attr_accessor model_output: String
21
+
22
+ attr_accessor run_mode: Deeprails::Models::EvaluateCreateParams::run_mode
23
+
24
+ attr_reader guardrail_metrics: ::Array[Deeprails::Models::EvaluateCreateParams::guardrail_metric]?
25
+
26
+ def guardrail_metrics=: (
27
+ ::Array[Deeprails::Models::EvaluateCreateParams::guardrail_metric]
28
+ ) -> ::Array[Deeprails::Models::EvaluateCreateParams::guardrail_metric]
29
+
30
+ attr_reader model_used: String?
31
+
32
+ def model_used=: (String) -> String
33
+
34
+ attr_reader nametag: String?
35
+
36
+ def nametag=: (String) -> String
37
+
38
+ def initialize: (
39
+ model_input: Deeprails::EvaluateCreateParams::ModelInput,
40
+ model_output: String,
41
+ run_mode: Deeprails::Models::EvaluateCreateParams::run_mode,
42
+ ?guardrail_metrics: ::Array[Deeprails::Models::EvaluateCreateParams::guardrail_metric],
43
+ ?model_used: String,
44
+ ?nametag: String,
45
+ ?request_options: Deeprails::request_opts
46
+ ) -> void
47
+
48
+ def to_hash: -> {
49
+ model_input: Deeprails::EvaluateCreateParams::ModelInput,
50
+ model_output: String,
51
+ run_mode: Deeprails::Models::EvaluateCreateParams::run_mode,
52
+ guardrail_metrics: ::Array[Deeprails::Models::EvaluateCreateParams::guardrail_metric],
53
+ model_used: String,
54
+ nametag: String,
55
+ request_options: Deeprails::RequestOptions
56
+ }
57
+
58
+ type model_input = { user_prompt: String, context: String }
59
+
60
+ class ModelInput < Deeprails::Internal::Type::BaseModel
61
+ attr_accessor user_prompt: String
62
+
63
+ attr_reader context: String?
64
+
65
+ def context=: (String) -> String
66
+
67
+ def initialize: (user_prompt: String, ?context: String) -> void
68
+
69
+ def to_hash: -> { user_prompt: String, context: String }
70
+ end
71
+
72
+ type run_mode = :precision_plus | :precision | :smart | :economy
73
+
74
+ module RunMode
75
+ extend Deeprails::Internal::Type::Enum
76
+
77
+ PRECISION_PLUS: :precision_plus
78
+ PRECISION: :precision
79
+ SMART: :smart
80
+ ECONOMY: :economy
81
+
82
+ def self?.values: -> ::Array[Deeprails::Models::EvaluateCreateParams::run_mode]
83
+ end
84
+
85
+ type guardrail_metric =
86
+ :correctness
87
+ | :completeness
88
+ | :instruction_adherence
89
+ | :context_adherence
90
+ | :ground_truth_adherence
91
+ | :comprehensive_safety
92
+
93
+ module GuardrailMetric
94
+ extend Deeprails::Internal::Type::Enum
95
+
96
+ CORRECTNESS: :correctness
97
+ COMPLETENESS: :completeness
98
+ INSTRUCTION_ADHERENCE: :instruction_adherence
99
+ CONTEXT_ADHERENCE: :context_adherence
100
+ GROUND_TRUTH_ADHERENCE: :ground_truth_adherence
101
+ COMPREHENSIVE_SAFETY: :comprehensive_safety
102
+
103
+ def self?.values: -> ::Array[Deeprails::Models::EvaluateCreateParams::guardrail_metric]
104
+ end
105
+ end
106
+ end
107
+ end
@@ -0,0 +1,15 @@
1
+ module Deeprails
2
+ module Models
3
+ type evaluate_retrieve_params =
4
+ { } & Deeprails::Internal::Type::request_parameters
5
+
6
+ class EvaluateRetrieveParams < Deeprails::Internal::Type::BaseModel
7
+ extend Deeprails::Internal::Type::RequestParameters::Converter
8
+ include Deeprails::Internal::Type::RequestParameters
9
+
10
+ def initialize: (?request_options: Deeprails::request_opts) -> void
11
+
12
+ def to_hash: -> { request_options: Deeprails::RequestOptions }
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,189 @@
1
+ module Deeprails
2
+ module Models
3
+ type evaluation =
4
+ {
5
+ eval_id: String,
6
+ evaluation_status: Deeprails::Models::Evaluation::evaluation_status,
7
+ model_input: Deeprails::Evaluation::ModelInput,
8
+ model_output: String,
9
+ run_mode: Deeprails::Models::Evaluation::run_mode,
10
+ created_at: Time,
11
+ end_timestamp: Time,
12
+ error_message: String,
13
+ error_timestamp: Time,
14
+ evaluation_result: ::Hash[Symbol, top],
15
+ evaluation_total_cost: Float,
16
+ guardrail_metrics: ::Array[Deeprails::Models::Evaluation::guardrail_metric],
17
+ model_used: String,
18
+ modified_at: Time,
19
+ nametag: String,
20
+ progress: Integer,
21
+ start_timestamp: Time
22
+ }
23
+
24
+ class Evaluation < Deeprails::Internal::Type::BaseModel
25
+ attr_accessor eval_id: String
26
+
27
+ attr_accessor evaluation_status: Deeprails::Models::Evaluation::evaluation_status
28
+
29
+ attr_accessor model_input: Deeprails::Evaluation::ModelInput
30
+
31
+ attr_accessor model_output: String
32
+
33
+ attr_accessor run_mode: Deeprails::Models::Evaluation::run_mode
34
+
35
+ attr_reader created_at: Time?
36
+
37
+ def created_at=: (Time) -> Time
38
+
39
+ attr_reader end_timestamp: Time?
40
+
41
+ def end_timestamp=: (Time) -> Time
42
+
43
+ attr_reader error_message: String?
44
+
45
+ def error_message=: (String) -> String
46
+
47
+ attr_reader error_timestamp: Time?
48
+
49
+ def error_timestamp=: (Time) -> Time
50
+
51
+ attr_reader evaluation_result: ::Hash[Symbol, top]?
52
+
53
+ def evaluation_result=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
54
+
55
+ attr_reader evaluation_total_cost: Float?
56
+
57
+ def evaluation_total_cost=: (Float) -> Float
58
+
59
+ attr_reader guardrail_metrics: ::Array[Deeprails::Models::Evaluation::guardrail_metric]?
60
+
61
+ def guardrail_metrics=: (
62
+ ::Array[Deeprails::Models::Evaluation::guardrail_metric]
63
+ ) -> ::Array[Deeprails::Models::Evaluation::guardrail_metric]
64
+
65
+ attr_reader model_used: String?
66
+
67
+ def model_used=: (String) -> String
68
+
69
+ attr_reader modified_at: Time?
70
+
71
+ def modified_at=: (Time) -> Time
72
+
73
+ attr_reader nametag: String?
74
+
75
+ def nametag=: (String) -> String
76
+
77
+ attr_reader progress: Integer?
78
+
79
+ def progress=: (Integer) -> Integer
80
+
81
+ attr_reader start_timestamp: Time?
82
+
83
+ def start_timestamp=: (Time) -> Time
84
+
85
+ def initialize: (
86
+ eval_id: String,
87
+ evaluation_status: Deeprails::Models::Evaluation::evaluation_status,
88
+ model_input: Deeprails::Evaluation::ModelInput,
89
+ model_output: String,
90
+ run_mode: Deeprails::Models::Evaluation::run_mode,
91
+ ?created_at: Time,
92
+ ?end_timestamp: Time,
93
+ ?error_message: String,
94
+ ?error_timestamp: Time,
95
+ ?evaluation_result: ::Hash[Symbol, top],
96
+ ?evaluation_total_cost: Float,
97
+ ?guardrail_metrics: ::Array[Deeprails::Models::Evaluation::guardrail_metric],
98
+ ?model_used: String,
99
+ ?modified_at: Time,
100
+ ?nametag: String,
101
+ ?progress: Integer,
102
+ ?start_timestamp: Time
103
+ ) -> void
104
+
105
+ def to_hash: -> {
106
+ eval_id: String,
107
+ evaluation_status: Deeprails::Models::Evaluation::evaluation_status,
108
+ model_input: Deeprails::Evaluation::ModelInput,
109
+ model_output: String,
110
+ run_mode: Deeprails::Models::Evaluation::run_mode,
111
+ created_at: Time,
112
+ end_timestamp: Time,
113
+ error_message: String,
114
+ error_timestamp: Time,
115
+ evaluation_result: ::Hash[Symbol, top],
116
+ evaluation_total_cost: Float,
117
+ guardrail_metrics: ::Array[Deeprails::Models::Evaluation::guardrail_metric],
118
+ model_used: String,
119
+ modified_at: Time,
120
+ nametag: String,
121
+ progress: Integer,
122
+ start_timestamp: Time
123
+ }
124
+
125
+ type evaluation_status =
126
+ :in_progress | :completed | :canceled | :queued | :failed
127
+
128
+ module EvaluationStatus
129
+ extend Deeprails::Internal::Type::Enum
130
+
131
+ IN_PROGRESS: :in_progress
132
+ COMPLETED: :completed
133
+ CANCELED: :canceled
134
+ QUEUED: :queued
135
+ FAILED: :failed
136
+
137
+ def self?.values: -> ::Array[Deeprails::Models::Evaluation::evaluation_status]
138
+ end
139
+
140
+ type model_input = { user_prompt: String, context: String }
141
+
142
+ class ModelInput < Deeprails::Internal::Type::BaseModel
143
+ attr_accessor user_prompt: String
144
+
145
+ attr_reader context: String?
146
+
147
+ def context=: (String) -> String
148
+
149
+ def initialize: (user_prompt: String, ?context: String) -> void
150
+
151
+ def to_hash: -> { user_prompt: String, context: String }
152
+ end
153
+
154
+ type run_mode = :precision_plus | :precision | :smart | :economy
155
+
156
+ module RunMode
157
+ extend Deeprails::Internal::Type::Enum
158
+
159
+ PRECISION_PLUS: :precision_plus
160
+ PRECISION: :precision
161
+ SMART: :smart
162
+ ECONOMY: :economy
163
+
164
+ def self?.values: -> ::Array[Deeprails::Models::Evaluation::run_mode]
165
+ end
166
+
167
+ type guardrail_metric =
168
+ :correctness
169
+ | :completeness
170
+ | :instruction_adherence
171
+ | :context_adherence
172
+ | :ground_truth_adherence
173
+ | :comprehensive_safety
174
+
175
+ module GuardrailMetric
176
+ extend Deeprails::Internal::Type::Enum
177
+
178
+ CORRECTNESS: :correctness
179
+ COMPLETENESS: :completeness
180
+ INSTRUCTION_ADHERENCE: :instruction_adherence
181
+ CONTEXT_ADHERENCE: :context_adherence
182
+ GROUND_TRUTH_ADHERENCE: :ground_truth_adherence
183
+ COMPREHENSIVE_SAFETY: :comprehensive_safety
184
+
185
+ def self?.values: -> ::Array[Deeprails::Models::Evaluation::guardrail_metric]
186
+ end
187
+ end
188
+ end
189
+ end
@@ -0,0 +1,30 @@
1
+ module Deeprails
2
+ module Models
3
+ type monitor_create_params =
4
+ { name: String, description: String }
5
+ & Deeprails::Internal::Type::request_parameters
6
+
7
+ class MonitorCreateParams < Deeprails::Internal::Type::BaseModel
8
+ extend Deeprails::Internal::Type::RequestParameters::Converter
9
+ include Deeprails::Internal::Type::RequestParameters
10
+
11
+ attr_accessor name: String
12
+
13
+ attr_reader description: String?
14
+
15
+ def description=: (String) -> String
16
+
17
+ def initialize: (
18
+ name: String,
19
+ ?description: String,
20
+ ?request_options: Deeprails::request_opts
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ name: String,
25
+ description: String,
26
+ request_options: Deeprails::RequestOptions
27
+ }
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,25 @@
1
+ module Deeprails
2
+ module Models
3
+ type monitor_retrieve_params =
4
+ { limit: Integer } & Deeprails::Internal::Type::request_parameters
5
+
6
+ class MonitorRetrieveParams < Deeprails::Internal::Type::BaseModel
7
+ extend Deeprails::Internal::Type::RequestParameters::Converter
8
+ include Deeprails::Internal::Type::RequestParameters
9
+
10
+ attr_reader limit: Integer?
11
+
12
+ def limit=: (Integer) -> Integer
13
+
14
+ def initialize: (
15
+ ?limit: Integer,
16
+ ?request_options: Deeprails::request_opts
17
+ ) -> void
18
+
19
+ def to_hash: -> {
20
+ limit: Integer,
21
+ request_options: Deeprails::RequestOptions
22
+ }
23
+ end
24
+ end
25
+ end