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.
- checksums.yaml +7 -0
- data/.ignore +2 -0
- data/CHANGELOG.md +18 -0
- data/README.md +273 -0
- data/SECURITY.md +27 -0
- data/lib/deeprails/client.rb +82 -0
- data/lib/deeprails/errors.rb +228 -0
- data/lib/deeprails/file_part.rb +58 -0
- data/lib/deeprails/internal/transport/base_client.rb +567 -0
- data/lib/deeprails/internal/transport/pooled_net_requester.rb +198 -0
- data/lib/deeprails/internal/type/array_of.rb +168 -0
- data/lib/deeprails/internal/type/base_model.rb +531 -0
- data/lib/deeprails/internal/type/base_page.rb +55 -0
- data/lib/deeprails/internal/type/boolean.rb +77 -0
- data/lib/deeprails/internal/type/converter.rb +327 -0
- data/lib/deeprails/internal/type/enum.rb +131 -0
- data/lib/deeprails/internal/type/file_input.rb +111 -0
- data/lib/deeprails/internal/type/hash_of.rb +188 -0
- data/lib/deeprails/internal/type/request_parameters.rb +42 -0
- data/lib/deeprails/internal/type/union.rb +237 -0
- data/lib/deeprails/internal/type/unknown.rb +81 -0
- data/lib/deeprails/internal/util.rb +915 -0
- data/lib/deeprails/internal.rb +20 -0
- data/lib/deeprails/models/api_response.rb +119 -0
- data/lib/deeprails/models/defend_create_workflow_params.rb +132 -0
- data/lib/deeprails/models/defend_response.rb +123 -0
- data/lib/deeprails/models/defend_retrieve_event_params.rb +20 -0
- data/lib/deeprails/models/defend_retrieve_workflow_params.rb +14 -0
- data/lib/deeprails/models/defend_submit_event_params.rb +98 -0
- data/lib/deeprails/models/defend_update_workflow_params.rb +49 -0
- data/lib/deeprails/models/evaluate_create_params.rb +123 -0
- data/lib/deeprails/models/evaluate_retrieve_params.rb +14 -0
- data/lib/deeprails/models/evaluation.rb +225 -0
- data/lib/deeprails/models/monitor_create_params.rb +30 -0
- data/lib/deeprails/models/monitor_retrieve_params.rb +22 -0
- data/lib/deeprails/models/monitor_retrieve_response.rb +186 -0
- data/lib/deeprails/models/monitor_submit_event_params.rb +124 -0
- data/lib/deeprails/models/monitor_submit_event_response.rb +77 -0
- data/lib/deeprails/models/monitor_update_params.rb +54 -0
- data/lib/deeprails/models/workflow_event_response.rb +57 -0
- data/lib/deeprails/models.rb +71 -0
- data/lib/deeprails/request_options.rb +77 -0
- data/lib/deeprails/resources/defend.rb +162 -0
- data/lib/deeprails/resources/evaluate.rb +70 -0
- data/lib/deeprails/resources/monitor.rb +130 -0
- data/lib/deeprails/version.rb +5 -0
- data/lib/deeprails.rb +73 -0
- data/manifest.yaml +15 -0
- data/rbi/deeprails/client.rbi +55 -0
- data/rbi/deeprails/errors.rbi +205 -0
- data/rbi/deeprails/file_part.rbi +37 -0
- data/rbi/deeprails/internal/transport/base_client.rbi +293 -0
- data/rbi/deeprails/internal/transport/pooled_net_requester.rbi +79 -0
- data/rbi/deeprails/internal/type/array_of.rbi +104 -0
- data/rbi/deeprails/internal/type/base_model.rbi +304 -0
- data/rbi/deeprails/internal/type/base_page.rbi +42 -0
- data/rbi/deeprails/internal/type/boolean.rbi +58 -0
- data/rbi/deeprails/internal/type/converter.rbi +216 -0
- data/rbi/deeprails/internal/type/enum.rbi +82 -0
- data/rbi/deeprails/internal/type/file_input.rbi +59 -0
- data/rbi/deeprails/internal/type/hash_of.rbi +104 -0
- data/rbi/deeprails/internal/type/request_parameters.rbi +29 -0
- data/rbi/deeprails/internal/type/union.rbi +128 -0
- data/rbi/deeprails/internal/type/unknown.rbi +58 -0
- data/rbi/deeprails/internal/util.rbi +487 -0
- data/rbi/deeprails/internal.rbi +18 -0
- data/rbi/deeprails/models/api_response.rbi +204 -0
- data/rbi/deeprails/models/defend_create_workflow_params.rbi +270 -0
- data/rbi/deeprails/models/defend_response.rbi +198 -0
- data/rbi/deeprails/models/defend_retrieve_event_params.rbi +38 -0
- data/rbi/deeprails/models/defend_retrieve_workflow_params.rbi +30 -0
- data/rbi/deeprails/models/defend_submit_event_params.rbi +170 -0
- data/rbi/deeprails/models/defend_update_workflow_params.rbi +107 -0
- data/rbi/deeprails/models/evaluate_create_params.rbi +253 -0
- data/rbi/deeprails/models/evaluate_retrieve_params.rbi +27 -0
- data/rbi/deeprails/models/evaluation.rbi +382 -0
- data/rbi/deeprails/models/monitor_create_params.rbi +54 -0
- data/rbi/deeprails/models/monitor_retrieve_params.rbi +43 -0
- data/rbi/deeprails/models/monitor_retrieve_response.rbi +336 -0
- data/rbi/deeprails/models/monitor_submit_event_params.rbi +264 -0
- data/rbi/deeprails/models/monitor_submit_event_response.rbi +134 -0
- data/rbi/deeprails/models/monitor_update_params.rbi +114 -0
- data/rbi/deeprails/models/workflow_event_response.rbi +85 -0
- data/rbi/deeprails/models.rbi +33 -0
- data/rbi/deeprails/request_options.rbi +59 -0
- data/rbi/deeprails/resources/defend.rbi +151 -0
- data/rbi/deeprails/resources/evaluate.rbi +66 -0
- data/rbi/deeprails/resources/monitor.rbi +114 -0
- data/rbi/deeprails/version.rbi +5 -0
- data/sig/deeprails/client.rbs +30 -0
- data/sig/deeprails/errors.rbs +117 -0
- data/sig/deeprails/file_part.rbs +21 -0
- data/sig/deeprails/internal/transport/base_client.rbs +131 -0
- data/sig/deeprails/internal/transport/pooled_net_requester.rbs +45 -0
- data/sig/deeprails/internal/type/array_of.rbs +48 -0
- data/sig/deeprails/internal/type/base_model.rbs +102 -0
- data/sig/deeprails/internal/type/base_page.rbs +24 -0
- data/sig/deeprails/internal/type/boolean.rbs +26 -0
- data/sig/deeprails/internal/type/converter.rbs +79 -0
- data/sig/deeprails/internal/type/enum.rbs +32 -0
- data/sig/deeprails/internal/type/file_input.rbs +25 -0
- data/sig/deeprails/internal/type/hash_of.rbs +48 -0
- data/sig/deeprails/internal/type/request_parameters.rbs +19 -0
- data/sig/deeprails/internal/type/union.rbs +52 -0
- data/sig/deeprails/internal/type/unknown.rbs +26 -0
- data/sig/deeprails/internal/util.rbs +185 -0
- data/sig/deeprails/internal.rbs +9 -0
- data/sig/deeprails/models/api_response.rbs +100 -0
- data/sig/deeprails/models/defend_create_workflow_params.rbs +98 -0
- data/sig/deeprails/models/defend_response.rbs +96 -0
- data/sig/deeprails/models/defend_retrieve_event_params.rbs +23 -0
- data/sig/deeprails/models/defend_retrieve_workflow_params.rbs +15 -0
- data/sig/deeprails/models/defend_submit_event_params.rbs +73 -0
- data/sig/deeprails/models/defend_update_workflow_params.rbs +55 -0
- data/sig/deeprails/models/evaluate_create_params.rbs +107 -0
- data/sig/deeprails/models/evaluate_retrieve_params.rbs +15 -0
- data/sig/deeprails/models/evaluation.rbs +189 -0
- data/sig/deeprails/models/monitor_create_params.rbs +30 -0
- data/sig/deeprails/models/monitor_retrieve_params.rbs +25 -0
- data/sig/deeprails/models/monitor_retrieve_response.rbs +167 -0
- data/sig/deeprails/models/monitor_submit_event_params.rbs +107 -0
- data/sig/deeprails/models/monitor_submit_event_response.rbs +70 -0
- data/sig/deeprails/models/monitor_update_params.rbs +55 -0
- data/sig/deeprails/models/workflow_event_response.rbs +46 -0
- data/sig/deeprails/models.rbs +31 -0
- data/sig/deeprails/request_options.rbs +34 -0
- data/sig/deeprails/resources/defend.rbs +47 -0
- data/sig/deeprails/resources/evaluate.rbs +22 -0
- data/sig/deeprails/resources/monitor.rbs +38 -0
- data/sig/deeprails/version.rbs +3 -0
- metadata +188 -0
@@ -0,0 +1,382 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module Deeprails
|
4
|
+
module Models
|
5
|
+
class Evaluation < Deeprails::Internal::Type::BaseModel
|
6
|
+
OrHash =
|
7
|
+
T.type_alias do
|
8
|
+
T.any(Deeprails::Evaluation, Deeprails::Internal::AnyHash)
|
9
|
+
end
|
10
|
+
|
11
|
+
# A unique evaluation ID.
|
12
|
+
sig { returns(String) }
|
13
|
+
attr_accessor :eval_id
|
14
|
+
|
15
|
+
# Status of the evaluation.
|
16
|
+
sig { returns(Deeprails::Evaluation::EvaluationStatus::TaggedSymbol) }
|
17
|
+
attr_accessor :evaluation_status
|
18
|
+
|
19
|
+
# A dictionary of inputs sent to the LLM to generate output. The dictionary must
|
20
|
+
# contain a `user_prompt` field and an optional `context` field. Additional
|
21
|
+
# properties are allowed.
|
22
|
+
sig { returns(Deeprails::Evaluation::ModelInput) }
|
23
|
+
attr_reader :model_input
|
24
|
+
|
25
|
+
sig do
|
26
|
+
params(model_input: Deeprails::Evaluation::ModelInput::OrHash).void
|
27
|
+
end
|
28
|
+
attr_writer :model_input
|
29
|
+
|
30
|
+
# Output generated by the LLM to be evaluated.
|
31
|
+
sig { returns(String) }
|
32
|
+
attr_accessor :model_output
|
33
|
+
|
34
|
+
# Run mode for the evaluation. The run mode allows the user to optimize for speed,
|
35
|
+
# accuracy, and cost by determining which models are used to evaluate the event.
|
36
|
+
sig { returns(Deeprails::Evaluation::RunMode::TaggedSymbol) }
|
37
|
+
attr_accessor :run_mode
|
38
|
+
|
39
|
+
# The time the evaluation was created in UTC.
|
40
|
+
sig { returns(T.nilable(Time)) }
|
41
|
+
attr_reader :created_at
|
42
|
+
|
43
|
+
sig { params(created_at: Time).void }
|
44
|
+
attr_writer :created_at
|
45
|
+
|
46
|
+
# The time the evaluation completed in UTC.
|
47
|
+
sig { returns(T.nilable(Time)) }
|
48
|
+
attr_reader :end_timestamp
|
49
|
+
|
50
|
+
sig { params(end_timestamp: Time).void }
|
51
|
+
attr_writer :end_timestamp
|
52
|
+
|
53
|
+
# Description of the error causing the evaluation to fail, if any.
|
54
|
+
sig { returns(T.nilable(String)) }
|
55
|
+
attr_reader :error_message
|
56
|
+
|
57
|
+
sig { params(error_message: String).void }
|
58
|
+
attr_writer :error_message
|
59
|
+
|
60
|
+
# The time the error causing the evaluation to fail was recorded.
|
61
|
+
sig { returns(T.nilable(Time)) }
|
62
|
+
attr_reader :error_timestamp
|
63
|
+
|
64
|
+
sig { params(error_timestamp: Time).void }
|
65
|
+
attr_writer :error_timestamp
|
66
|
+
|
67
|
+
# Evaluation result consisting of average scores and rationales for each of the
|
68
|
+
# evaluated guardrail metrics.
|
69
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
70
|
+
attr_reader :evaluation_result
|
71
|
+
|
72
|
+
sig { params(evaluation_result: T::Hash[Symbol, T.anything]).void }
|
73
|
+
attr_writer :evaluation_result
|
74
|
+
|
75
|
+
# Total cost of the evaluation.
|
76
|
+
sig { returns(T.nilable(Float)) }
|
77
|
+
attr_reader :evaluation_total_cost
|
78
|
+
|
79
|
+
sig { params(evaluation_total_cost: Float).void }
|
80
|
+
attr_writer :evaluation_total_cost
|
81
|
+
|
82
|
+
# An array of guardrail metrics that the model input and output pair will be
|
83
|
+
# evaluated on.
|
84
|
+
sig do
|
85
|
+
returns(
|
86
|
+
T.nilable(
|
87
|
+
T::Array[Deeprails::Evaluation::GuardrailMetric::TaggedSymbol]
|
88
|
+
)
|
89
|
+
)
|
90
|
+
end
|
91
|
+
attr_reader :guardrail_metrics
|
92
|
+
|
93
|
+
sig do
|
94
|
+
params(
|
95
|
+
guardrail_metrics:
|
96
|
+
T::Array[Deeprails::Evaluation::GuardrailMetric::OrSymbol]
|
97
|
+
).void
|
98
|
+
end
|
99
|
+
attr_writer :guardrail_metrics
|
100
|
+
|
101
|
+
# Model ID used to generate the output, like `gpt-4o` or `o3`.
|
102
|
+
sig { returns(T.nilable(String)) }
|
103
|
+
attr_reader :model_used
|
104
|
+
|
105
|
+
sig { params(model_used: String).void }
|
106
|
+
attr_writer :model_used
|
107
|
+
|
108
|
+
# The most recent time the evaluation was modified in UTC.
|
109
|
+
sig { returns(T.nilable(Time)) }
|
110
|
+
attr_reader :modified_at
|
111
|
+
|
112
|
+
sig { params(modified_at: Time).void }
|
113
|
+
attr_writer :modified_at
|
114
|
+
|
115
|
+
# An optional, user-defined tag for the evaluation.
|
116
|
+
sig { returns(T.nilable(String)) }
|
117
|
+
attr_reader :nametag
|
118
|
+
|
119
|
+
sig { params(nametag: String).void }
|
120
|
+
attr_writer :nametag
|
121
|
+
|
122
|
+
# Evaluation progress. Values range between 0 and 100; 100 corresponds to a
|
123
|
+
# completed `evaluation_status`.
|
124
|
+
sig { returns(T.nilable(Integer)) }
|
125
|
+
attr_reader :progress
|
126
|
+
|
127
|
+
sig { params(progress: Integer).void }
|
128
|
+
attr_writer :progress
|
129
|
+
|
130
|
+
# The time the evaluation started in UTC.
|
131
|
+
sig { returns(T.nilable(Time)) }
|
132
|
+
attr_reader :start_timestamp
|
133
|
+
|
134
|
+
sig { params(start_timestamp: Time).void }
|
135
|
+
attr_writer :start_timestamp
|
136
|
+
|
137
|
+
sig do
|
138
|
+
params(
|
139
|
+
eval_id: String,
|
140
|
+
evaluation_status: Deeprails::Evaluation::EvaluationStatus::OrSymbol,
|
141
|
+
model_input: Deeprails::Evaluation::ModelInput::OrHash,
|
142
|
+
model_output: String,
|
143
|
+
run_mode: Deeprails::Evaluation::RunMode::OrSymbol,
|
144
|
+
created_at: Time,
|
145
|
+
end_timestamp: Time,
|
146
|
+
error_message: String,
|
147
|
+
error_timestamp: Time,
|
148
|
+
evaluation_result: T::Hash[Symbol, T.anything],
|
149
|
+
evaluation_total_cost: Float,
|
150
|
+
guardrail_metrics:
|
151
|
+
T::Array[Deeprails::Evaluation::GuardrailMetric::OrSymbol],
|
152
|
+
model_used: String,
|
153
|
+
modified_at: Time,
|
154
|
+
nametag: String,
|
155
|
+
progress: Integer,
|
156
|
+
start_timestamp: Time
|
157
|
+
).returns(T.attached_class)
|
158
|
+
end
|
159
|
+
def self.new(
|
160
|
+
# A unique evaluation ID.
|
161
|
+
eval_id:,
|
162
|
+
# Status of the evaluation.
|
163
|
+
evaluation_status:,
|
164
|
+
# A dictionary of inputs sent to the LLM to generate output. The dictionary must
|
165
|
+
# contain a `user_prompt` field and an optional `context` field. Additional
|
166
|
+
# properties are allowed.
|
167
|
+
model_input:,
|
168
|
+
# Output generated by the LLM to be evaluated.
|
169
|
+
model_output:,
|
170
|
+
# Run mode for the evaluation. The run mode allows the user to optimize for speed,
|
171
|
+
# accuracy, and cost by determining which models are used to evaluate the event.
|
172
|
+
run_mode:,
|
173
|
+
# The time the evaluation was created in UTC.
|
174
|
+
created_at: nil,
|
175
|
+
# The time the evaluation completed in UTC.
|
176
|
+
end_timestamp: nil,
|
177
|
+
# Description of the error causing the evaluation to fail, if any.
|
178
|
+
error_message: nil,
|
179
|
+
# The time the error causing the evaluation to fail was recorded.
|
180
|
+
error_timestamp: nil,
|
181
|
+
# Evaluation result consisting of average scores and rationales for each of the
|
182
|
+
# evaluated guardrail metrics.
|
183
|
+
evaluation_result: nil,
|
184
|
+
# Total cost of the evaluation.
|
185
|
+
evaluation_total_cost: nil,
|
186
|
+
# An array of guardrail metrics that the model input and output pair will be
|
187
|
+
# evaluated on.
|
188
|
+
guardrail_metrics: nil,
|
189
|
+
# Model ID used to generate the output, like `gpt-4o` or `o3`.
|
190
|
+
model_used: nil,
|
191
|
+
# The most recent time the evaluation was modified in UTC.
|
192
|
+
modified_at: nil,
|
193
|
+
# An optional, user-defined tag for the evaluation.
|
194
|
+
nametag: nil,
|
195
|
+
# Evaluation progress. Values range between 0 and 100; 100 corresponds to a
|
196
|
+
# completed `evaluation_status`.
|
197
|
+
progress: nil,
|
198
|
+
# The time the evaluation started in UTC.
|
199
|
+
start_timestamp: nil
|
200
|
+
)
|
201
|
+
end
|
202
|
+
|
203
|
+
sig do
|
204
|
+
override.returns(
|
205
|
+
{
|
206
|
+
eval_id: String,
|
207
|
+
evaluation_status:
|
208
|
+
Deeprails::Evaluation::EvaluationStatus::TaggedSymbol,
|
209
|
+
model_input: Deeprails::Evaluation::ModelInput,
|
210
|
+
model_output: String,
|
211
|
+
run_mode: Deeprails::Evaluation::RunMode::TaggedSymbol,
|
212
|
+
created_at: Time,
|
213
|
+
end_timestamp: Time,
|
214
|
+
error_message: String,
|
215
|
+
error_timestamp: Time,
|
216
|
+
evaluation_result: T::Hash[Symbol, T.anything],
|
217
|
+
evaluation_total_cost: Float,
|
218
|
+
guardrail_metrics:
|
219
|
+
T::Array[Deeprails::Evaluation::GuardrailMetric::TaggedSymbol],
|
220
|
+
model_used: String,
|
221
|
+
modified_at: Time,
|
222
|
+
nametag: String,
|
223
|
+
progress: Integer,
|
224
|
+
start_timestamp: Time
|
225
|
+
}
|
226
|
+
)
|
227
|
+
end
|
228
|
+
def to_hash
|
229
|
+
end
|
230
|
+
|
231
|
+
# Status of the evaluation.
|
232
|
+
module EvaluationStatus
|
233
|
+
extend Deeprails::Internal::Type::Enum
|
234
|
+
|
235
|
+
TaggedSymbol =
|
236
|
+
T.type_alias do
|
237
|
+
T.all(Symbol, Deeprails::Evaluation::EvaluationStatus)
|
238
|
+
end
|
239
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
240
|
+
|
241
|
+
IN_PROGRESS =
|
242
|
+
T.let(
|
243
|
+
:in_progress,
|
244
|
+
Deeprails::Evaluation::EvaluationStatus::TaggedSymbol
|
245
|
+
)
|
246
|
+
COMPLETED =
|
247
|
+
T.let(
|
248
|
+
:completed,
|
249
|
+
Deeprails::Evaluation::EvaluationStatus::TaggedSymbol
|
250
|
+
)
|
251
|
+
CANCELED =
|
252
|
+
T.let(
|
253
|
+
:canceled,
|
254
|
+
Deeprails::Evaluation::EvaluationStatus::TaggedSymbol
|
255
|
+
)
|
256
|
+
QUEUED =
|
257
|
+
T.let(:queued, Deeprails::Evaluation::EvaluationStatus::TaggedSymbol)
|
258
|
+
FAILED =
|
259
|
+
T.let(:failed, Deeprails::Evaluation::EvaluationStatus::TaggedSymbol)
|
260
|
+
|
261
|
+
sig do
|
262
|
+
override.returns(
|
263
|
+
T::Array[Deeprails::Evaluation::EvaluationStatus::TaggedSymbol]
|
264
|
+
)
|
265
|
+
end
|
266
|
+
def self.values
|
267
|
+
end
|
268
|
+
end
|
269
|
+
|
270
|
+
class ModelInput < Deeprails::Internal::Type::BaseModel
|
271
|
+
OrHash =
|
272
|
+
T.type_alias do
|
273
|
+
T.any(
|
274
|
+
Deeprails::Evaluation::ModelInput,
|
275
|
+
Deeprails::Internal::AnyHash
|
276
|
+
)
|
277
|
+
end
|
278
|
+
|
279
|
+
# The user prompt used to generate the output.
|
280
|
+
sig { returns(String) }
|
281
|
+
attr_accessor :user_prompt
|
282
|
+
|
283
|
+
# Optional context supplied to the LLM when generating the output.
|
284
|
+
sig { returns(T.nilable(String)) }
|
285
|
+
attr_reader :context
|
286
|
+
|
287
|
+
sig { params(context: String).void }
|
288
|
+
attr_writer :context
|
289
|
+
|
290
|
+
# A dictionary of inputs sent to the LLM to generate output. The dictionary must
|
291
|
+
# contain a `user_prompt` field and an optional `context` field. Additional
|
292
|
+
# properties are allowed.
|
293
|
+
sig do
|
294
|
+
params(user_prompt: String, context: String).returns(T.attached_class)
|
295
|
+
end
|
296
|
+
def self.new(
|
297
|
+
# The user prompt used to generate the output.
|
298
|
+
user_prompt:,
|
299
|
+
# Optional context supplied to the LLM when generating the output.
|
300
|
+
context: nil
|
301
|
+
)
|
302
|
+
end
|
303
|
+
|
304
|
+
sig { override.returns({ user_prompt: String, context: String }) }
|
305
|
+
def to_hash
|
306
|
+
end
|
307
|
+
end
|
308
|
+
|
309
|
+
# Run mode for the evaluation. The run mode allows the user to optimize for speed,
|
310
|
+
# accuracy, and cost by determining which models are used to evaluate the event.
|
311
|
+
module RunMode
|
312
|
+
extend Deeprails::Internal::Type::Enum
|
313
|
+
|
314
|
+
TaggedSymbol =
|
315
|
+
T.type_alias { T.all(Symbol, Deeprails::Evaluation::RunMode) }
|
316
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
317
|
+
|
318
|
+
PRECISION_PLUS =
|
319
|
+
T.let(:precision_plus, Deeprails::Evaluation::RunMode::TaggedSymbol)
|
320
|
+
PRECISION =
|
321
|
+
T.let(:precision, Deeprails::Evaluation::RunMode::TaggedSymbol)
|
322
|
+
SMART = T.let(:smart, Deeprails::Evaluation::RunMode::TaggedSymbol)
|
323
|
+
ECONOMY = T.let(:economy, Deeprails::Evaluation::RunMode::TaggedSymbol)
|
324
|
+
|
325
|
+
sig do
|
326
|
+
override.returns(
|
327
|
+
T::Array[Deeprails::Evaluation::RunMode::TaggedSymbol]
|
328
|
+
)
|
329
|
+
end
|
330
|
+
def self.values
|
331
|
+
end
|
332
|
+
end
|
333
|
+
|
334
|
+
module GuardrailMetric
|
335
|
+
extend Deeprails::Internal::Type::Enum
|
336
|
+
|
337
|
+
TaggedSymbol =
|
338
|
+
T.type_alias { T.all(Symbol, Deeprails::Evaluation::GuardrailMetric) }
|
339
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
340
|
+
|
341
|
+
CORRECTNESS =
|
342
|
+
T.let(
|
343
|
+
:correctness,
|
344
|
+
Deeprails::Evaluation::GuardrailMetric::TaggedSymbol
|
345
|
+
)
|
346
|
+
COMPLETENESS =
|
347
|
+
T.let(
|
348
|
+
:completeness,
|
349
|
+
Deeprails::Evaluation::GuardrailMetric::TaggedSymbol
|
350
|
+
)
|
351
|
+
INSTRUCTION_ADHERENCE =
|
352
|
+
T.let(
|
353
|
+
:instruction_adherence,
|
354
|
+
Deeprails::Evaluation::GuardrailMetric::TaggedSymbol
|
355
|
+
)
|
356
|
+
CONTEXT_ADHERENCE =
|
357
|
+
T.let(
|
358
|
+
:context_adherence,
|
359
|
+
Deeprails::Evaluation::GuardrailMetric::TaggedSymbol
|
360
|
+
)
|
361
|
+
GROUND_TRUTH_ADHERENCE =
|
362
|
+
T.let(
|
363
|
+
:ground_truth_adherence,
|
364
|
+
Deeprails::Evaluation::GuardrailMetric::TaggedSymbol
|
365
|
+
)
|
366
|
+
COMPREHENSIVE_SAFETY =
|
367
|
+
T.let(
|
368
|
+
:comprehensive_safety,
|
369
|
+
Deeprails::Evaluation::GuardrailMetric::TaggedSymbol
|
370
|
+
)
|
371
|
+
|
372
|
+
sig do
|
373
|
+
override.returns(
|
374
|
+
T::Array[Deeprails::Evaluation::GuardrailMetric::TaggedSymbol]
|
375
|
+
)
|
376
|
+
end
|
377
|
+
def self.values
|
378
|
+
end
|
379
|
+
end
|
380
|
+
end
|
381
|
+
end
|
382
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module Deeprails
|
4
|
+
module Models
|
5
|
+
class MonitorCreateParams < Deeprails::Internal::Type::BaseModel
|
6
|
+
extend Deeprails::Internal::Type::RequestParameters::Converter
|
7
|
+
include Deeprails::Internal::Type::RequestParameters
|
8
|
+
|
9
|
+
OrHash =
|
10
|
+
T.type_alias do
|
11
|
+
T.any(Deeprails::MonitorCreateParams, Deeprails::Internal::AnyHash)
|
12
|
+
end
|
13
|
+
|
14
|
+
# Name of the new monitor.
|
15
|
+
sig { returns(String) }
|
16
|
+
attr_accessor :name
|
17
|
+
|
18
|
+
# Description of the new monitor.
|
19
|
+
sig { returns(T.nilable(String)) }
|
20
|
+
attr_reader :description
|
21
|
+
|
22
|
+
sig { params(description: String).void }
|
23
|
+
attr_writer :description
|
24
|
+
|
25
|
+
sig do
|
26
|
+
params(
|
27
|
+
name: String,
|
28
|
+
description: String,
|
29
|
+
request_options: Deeprails::RequestOptions::OrHash
|
30
|
+
).returns(T.attached_class)
|
31
|
+
end
|
32
|
+
def self.new(
|
33
|
+
# Name of the new monitor.
|
34
|
+
name:,
|
35
|
+
# Description of the new monitor.
|
36
|
+
description: nil,
|
37
|
+
request_options: {}
|
38
|
+
)
|
39
|
+
end
|
40
|
+
|
41
|
+
sig do
|
42
|
+
override.returns(
|
43
|
+
{
|
44
|
+
name: String,
|
45
|
+
description: String,
|
46
|
+
request_options: Deeprails::RequestOptions
|
47
|
+
}
|
48
|
+
)
|
49
|
+
end
|
50
|
+
def to_hash
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module Deeprails
|
4
|
+
module Models
|
5
|
+
class MonitorRetrieveParams < Deeprails::Internal::Type::BaseModel
|
6
|
+
extend Deeprails::Internal::Type::RequestParameters::Converter
|
7
|
+
include Deeprails::Internal::Type::RequestParameters
|
8
|
+
|
9
|
+
OrHash =
|
10
|
+
T.type_alias do
|
11
|
+
T.any(Deeprails::MonitorRetrieveParams, Deeprails::Internal::AnyHash)
|
12
|
+
end
|
13
|
+
|
14
|
+
# Limit the returned events associated with this monitor. Defaults to 10.
|
15
|
+
sig { returns(T.nilable(Integer)) }
|
16
|
+
attr_reader :limit
|
17
|
+
|
18
|
+
sig { params(limit: Integer).void }
|
19
|
+
attr_writer :limit
|
20
|
+
|
21
|
+
sig do
|
22
|
+
params(
|
23
|
+
limit: Integer,
|
24
|
+
request_options: Deeprails::RequestOptions::OrHash
|
25
|
+
).returns(T.attached_class)
|
26
|
+
end
|
27
|
+
def self.new(
|
28
|
+
# Limit the returned events associated with this monitor. Defaults to 10.
|
29
|
+
limit: nil,
|
30
|
+
request_options: {}
|
31
|
+
)
|
32
|
+
end
|
33
|
+
|
34
|
+
sig do
|
35
|
+
override.returns(
|
36
|
+
{ limit: Integer, request_options: Deeprails::RequestOptions }
|
37
|
+
)
|
38
|
+
end
|
39
|
+
def to_hash
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|