safetykit 0.56.0 → 0.58.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.
@@ -15,46 +15,46 @@ module SafetyKit
15
15
  sig { returns(String) }
16
16
  attr_accessor :content_id
17
17
 
18
- # Per-policy results for the submitted content.
19
- sig do
20
- returns(T::Array[SafetyKit::Models::ContentCreateResponse::Policy])
21
- end
22
- attr_accessor :policies
23
-
24
- # Reference set matches found for the submitted content.
18
+ # Per-label results for the submitted content.
25
19
  sig do
26
20
  returns(
27
- T::Array[SafetyKit::Models::ContentCreateResponse::ReferenceSetMatch]
21
+ T::Array[SafetyKit::Models::ContentCreateResponse::Label::Variants]
28
22
  )
29
23
  end
30
- attr_accessor :reference_set_matches
24
+ attr_accessor :labels
31
25
 
32
26
  # The user_id from the request.
33
27
  sig { returns(String) }
34
28
  attr_accessor :user_id
35
29
 
30
+ # The API version that served this request.
31
+ sig { returns(String) }
32
+ attr_accessor :version
33
+
36
34
  # Synchronous classification result for the submitted content.
37
35
  sig do
38
36
  params(
39
37
  content_id: String,
40
- policies:
41
- T::Array[SafetyKit::Models::ContentCreateResponse::Policy::OrHash],
42
- reference_set_matches:
38
+ labels:
43
39
  T::Array[
44
- SafetyKit::Models::ContentCreateResponse::ReferenceSetMatch::OrHash
40
+ T.any(
41
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::OrHash,
42
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::OrHash
43
+ )
45
44
  ],
46
- user_id: String
45
+ user_id: String,
46
+ version: String
47
47
  ).returns(T.attached_class)
48
48
  end
49
49
  def self.new(
50
50
  # SafetyKit identifier for the classified content.
51
51
  content_id:,
52
- # Per-policy results for the submitted content.
53
- policies:,
54
- # Reference set matches found for the submitted content.
55
- reference_set_matches:,
52
+ # Per-label results for the submitted content.
53
+ labels:,
56
54
  # The user_id from the request.
57
- user_id:
55
+ user_id:,
56
+ # The API version that served this request.
57
+ version:
58
58
  )
59
59
  end
60
60
 
@@ -62,210 +62,463 @@ module SafetyKit
62
62
  override.returns(
63
63
  {
64
64
  content_id: String,
65
- policies:
66
- T::Array[SafetyKit::Models::ContentCreateResponse::Policy],
67
- reference_set_matches:
65
+ labels:
68
66
  T::Array[
69
- SafetyKit::Models::ContentCreateResponse::ReferenceSetMatch
67
+ SafetyKit::Models::ContentCreateResponse::Label::Variants
70
68
  ],
71
- user_id: String
69
+ user_id: String,
70
+ version: String
72
71
  }
73
72
  )
74
73
  end
75
74
  def to_hash
76
75
  end
77
76
 
78
- class Policy < SafetyKit::Internal::Type::BaseModel
79
- OrHash =
77
+ # Result for one label evaluated against the submitted content.
78
+ module Label
79
+ extend SafetyKit::Internal::Type::Union
80
+
81
+ Variants =
80
82
  T.type_alias do
81
83
  T.any(
82
- SafetyKit::Models::ContentCreateResponse::Policy,
83
- SafetyKit::Internal::AnyHash
84
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0,
85
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1
84
86
  )
85
87
  end
86
88
 
87
- # Whether the submitted content violates the policy.
88
- sig do
89
- returns(
90
- SafetyKit::Models::ContentCreateResponse::Policy::Decision::TaggedSymbol
91
- )
92
- end
93
- attr_accessor :decision
89
+ class UnionMember0 < SafetyKit::Internal::Type::BaseModel
90
+ OrHash =
91
+ T.type_alias do
92
+ T.any(
93
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0,
94
+ SafetyKit::Internal::AnyHash
95
+ )
96
+ end
94
97
 
95
- # Escalation outcome for this policy.
96
- sig do
97
- returns(
98
- SafetyKit::Models::ContentCreateResponse::Policy::Escalation::TaggedSymbol
99
- )
100
- end
101
- attr_accessor :escalation
98
+ # Whether the submitted content matches the label.
99
+ sig do
100
+ returns(
101
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Decision::TaggedSymbol
102
+ )
103
+ end
104
+ attr_accessor :decision
102
105
 
103
- # Identifier of the policy.
104
- sig { returns(String) }
105
- attr_accessor :policy_id
106
+ # Escalation outcome for this label.
107
+ sig do
108
+ returns(
109
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Escalation::TaggedSymbol
110
+ )
111
+ end
112
+ attr_accessor :escalation
106
113
 
107
- # Policy score between 0 and 1. Higher means more likely violating.
108
- sig { returns(Float) }
109
- attr_accessor :score
114
+ # Label identifier.
115
+ sig { returns(String) }
116
+ attr_accessor :label
110
117
 
111
- # Version of the policy.
112
- sig { returns(String) }
113
- attr_accessor :version
118
+ # Classifier score between 0 and 1. Higher means more likely matching. Null when
119
+ # no classifier scored the label.
120
+ sig { returns(T.nilable(Float)) }
121
+ attr_accessor :score
114
122
 
115
- # Result for one policy evaluated against the submitted content.
116
- sig do
117
- params(
118
- decision:
119
- SafetyKit::Models::ContentCreateResponse::Policy::Decision::OrSymbol,
120
- escalation:
121
- SafetyKit::Models::ContentCreateResponse::Policy::Escalation::OrSymbol,
122
- policy_id: String,
123
- score: Float,
124
- version: String
125
- ).returns(T.attached_class)
126
- end
127
- def self.new(
128
- # Whether the submitted content violates the policy.
129
- decision:,
130
- # Escalation outcome for this policy.
131
- escalation:,
132
- # Identifier of the policy.
133
- policy_id:,
134
- # Policy score between 0 and 1. Higher means more likely violating.
135
- score:,
136
- # Version of the policy.
137
- version:
138
- )
139
- end
123
+ sig do
124
+ returns(
125
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Type::TaggedSymbol
126
+ )
127
+ end
128
+ attr_accessor :type
140
129
 
141
- sig do
142
- override.returns(
143
- {
130
+ sig do
131
+ params(
144
132
  decision:
145
- SafetyKit::Models::ContentCreateResponse::Policy::Decision::TaggedSymbol,
133
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Decision::OrSymbol,
146
134
  escalation:
147
- SafetyKit::Models::ContentCreateResponse::Policy::Escalation::TaggedSymbol,
148
- policy_id: String,
149
- score: Float,
150
- version: String
151
- }
135
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Escalation::OrSymbol,
136
+ label: String,
137
+ score: T.nilable(Float),
138
+ type:
139
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Type::OrSymbol
140
+ ).returns(T.attached_class)
141
+ end
142
+ def self.new(
143
+ # Whether the submitted content matches the label.
144
+ decision:,
145
+ # Escalation outcome for this label.
146
+ escalation:,
147
+ # Label identifier.
148
+ label:,
149
+ # Classifier score between 0 and 1. Higher means more likely matching. Null when
150
+ # no classifier scored the label.
151
+ score:,
152
+ type:
152
153
  )
153
- end
154
- def to_hash
155
- end
154
+ end
155
+
156
+ sig do
157
+ override.returns(
158
+ {
159
+ decision:
160
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Decision::TaggedSymbol,
161
+ escalation:
162
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Escalation::TaggedSymbol,
163
+ label: String,
164
+ score: T.nilable(Float),
165
+ type:
166
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Type::TaggedSymbol
167
+ }
168
+ )
169
+ end
170
+ def to_hash
171
+ end
156
172
 
157
- # Whether the submitted content violates the policy.
158
- module Decision
159
- extend SafetyKit::Internal::Type::Enum
173
+ # Whether the submitted content matches the label.
174
+ module Decision
175
+ extend SafetyKit::Internal::Type::Enum
160
176
 
161
- TaggedSymbol =
162
- T.type_alias do
163
- T.all(
164
- Symbol,
165
- SafetyKit::Models::ContentCreateResponse::Policy::Decision
177
+ TaggedSymbol =
178
+ T.type_alias do
179
+ T.all(
180
+ Symbol,
181
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Decision
182
+ )
183
+ end
184
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
185
+
186
+ MATCH =
187
+ T.let(
188
+ :match,
189
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Decision::TaggedSymbol
190
+ )
191
+ NOT_MATCH =
192
+ T.let(
193
+ :not_match,
194
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Decision::TaggedSymbol
195
+ )
196
+ REVIEW =
197
+ T.let(
198
+ :review,
199
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Decision::TaggedSymbol
200
+ )
201
+
202
+ sig do
203
+ override.returns(
204
+ T::Array[
205
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Decision::TaggedSymbol
206
+ ]
166
207
  )
167
208
  end
168
- OrSymbol = T.type_alias { T.any(Symbol, String) }
209
+ def self.values
210
+ end
211
+ end
169
212
 
170
- MATCH =
171
- T.let(
172
- :match,
173
- SafetyKit::Models::ContentCreateResponse::Policy::Decision::TaggedSymbol
174
- )
175
- NOT_MATCH =
176
- T.let(
177
- :not_match,
178
- SafetyKit::Models::ContentCreateResponse::Policy::Decision::TaggedSymbol
179
- )
180
- REVIEW =
181
- T.let(
182
- :review,
183
- SafetyKit::Models::ContentCreateResponse::Policy::Decision::TaggedSymbol
184
- )
213
+ # Escalation outcome for this label.
214
+ module Escalation
215
+ extend SafetyKit::Internal::Type::Enum
185
216
 
186
- sig do
187
- override.returns(
188
- T::Array[
189
- SafetyKit::Models::ContentCreateResponse::Policy::Decision::TaggedSymbol
190
- ]
191
- )
217
+ TaggedSymbol =
218
+ T.type_alias do
219
+ T.all(
220
+ Symbol,
221
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Escalation
222
+ )
223
+ end
224
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
225
+
226
+ NONE =
227
+ T.let(
228
+ :none,
229
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Escalation::TaggedSymbol
230
+ )
231
+ COMPLETED =
232
+ T.let(
233
+ :completed,
234
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Escalation::TaggedSymbol
235
+ )
236
+ ERROR =
237
+ T.let(
238
+ :error,
239
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Escalation::TaggedSymbol
240
+ )
241
+
242
+ sig do
243
+ override.returns(
244
+ T::Array[
245
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Escalation::TaggedSymbol
246
+ ]
247
+ )
248
+ end
249
+ def self.values
250
+ end
192
251
  end
193
- def self.values
252
+
253
+ module Type
254
+ extend SafetyKit::Internal::Type::Enum
255
+
256
+ TaggedSymbol =
257
+ T.type_alias do
258
+ T.all(
259
+ Symbol,
260
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Type
261
+ )
262
+ end
263
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
264
+
265
+ CLASSIFIER =
266
+ T.let(
267
+ :classifier,
268
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Type::TaggedSymbol
269
+ )
270
+
271
+ sig do
272
+ override.returns(
273
+ T::Array[
274
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember0::Type::TaggedSymbol
275
+ ]
276
+ )
277
+ end
278
+ def self.values
279
+ end
194
280
  end
195
281
  end
196
282
 
197
- # Escalation outcome for this policy.
198
- module Escalation
199
- extend SafetyKit::Internal::Type::Enum
200
-
201
- TaggedSymbol =
283
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
284
+ OrHash =
202
285
  T.type_alias do
203
- T.all(
204
- Symbol,
205
- SafetyKit::Models::ContentCreateResponse::Policy::Escalation
286
+ T.any(
287
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1,
288
+ SafetyKit::Internal::AnyHash
206
289
  )
207
290
  end
208
- OrSymbol = T.type_alias { T.any(Symbol, String) }
209
291
 
210
- NONE =
211
- T.let(
212
- :none,
213
- SafetyKit::Models::ContentCreateResponse::Policy::Escalation::TaggedSymbol
292
+ # Whether the submitted content matches the label.
293
+ sig do
294
+ returns(
295
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Decision::TaggedSymbol
214
296
  )
215
- COMPLETED =
216
- T.let(
217
- :completed,
218
- SafetyKit::Models::ContentCreateResponse::Policy::Escalation::TaggedSymbol
297
+ end
298
+ attr_accessor :decision
299
+
300
+ # Escalation outcome for this label.
301
+ sig do
302
+ returns(
303
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Escalation::TaggedSymbol
219
304
  )
220
- ERROR =
221
- T.let(
222
- :error,
223
- SafetyKit::Models::ContentCreateResponse::Policy::Escalation::TaggedSymbol
305
+ end
306
+ attr_accessor :escalation
307
+
308
+ sig do
309
+ returns(
310
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Label::TaggedSymbol
224
311
  )
312
+ end
313
+ attr_accessor :label
314
+
315
+ # Similarity between the submitted content and the matched entry.
316
+ sig { returns(Float) }
317
+ attr_accessor :score
318
+
319
+ # Identifier of the matched reference set.
320
+ sig { returns(String) }
321
+ attr_accessor :set_id
225
322
 
226
323
  sig do
227
- override.returns(
228
- T::Array[
229
- SafetyKit::Models::ContentCreateResponse::Policy::Escalation::TaggedSymbol
230
- ]
324
+ returns(
325
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Type::TaggedSymbol
231
326
  )
232
327
  end
233
- def self.values
328
+ attr_accessor :type
329
+
330
+ sig do
331
+ params(
332
+ decision:
333
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Decision::OrSymbol,
334
+ escalation:
335
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Escalation::OrSymbol,
336
+ label:
337
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Label::OrSymbol,
338
+ score: Float,
339
+ set_id: String,
340
+ type:
341
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Type::OrSymbol
342
+ ).returns(T.attached_class)
343
+ end
344
+ def self.new(
345
+ # Whether the submitted content matches the label.
346
+ decision:,
347
+ # Escalation outcome for this label.
348
+ escalation:,
349
+ label:,
350
+ # Similarity between the submitted content and the matched entry.
351
+ score:,
352
+ # Identifier of the matched reference set.
353
+ set_id:,
354
+ type:
355
+ )
234
356
  end
235
- end
236
- end
237
357
 
238
- class ReferenceSetMatch < SafetyKit::Internal::Type::BaseModel
239
- OrHash =
240
- T.type_alias do
241
- T.any(
242
- SafetyKit::Models::ContentCreateResponse::ReferenceSetMatch,
243
- SafetyKit::Internal::AnyHash
358
+ sig do
359
+ override.returns(
360
+ {
361
+ decision:
362
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Decision::TaggedSymbol,
363
+ escalation:
364
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Escalation::TaggedSymbol,
365
+ label:
366
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Label::TaggedSymbol,
367
+ score: Float,
368
+ set_id: String,
369
+ type:
370
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Type::TaggedSymbol
371
+ }
244
372
  )
245
373
  end
374
+ def to_hash
375
+ end
246
376
 
247
- # Identifier of the matched reference set.
248
- sig { returns(String) }
249
- attr_accessor :set_id
377
+ # Whether the submitted content matches the label.
378
+ module Decision
379
+ extend SafetyKit::Internal::Type::Enum
250
380
 
251
- # Similarity between the submitted content and the matched reference set entry.
252
- sig { returns(Float) }
253
- attr_accessor :similarity
381
+ TaggedSymbol =
382
+ T.type_alias do
383
+ T.all(
384
+ Symbol,
385
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Decision
386
+ )
387
+ end
388
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
254
389
 
255
- # Reference set match found for the submitted content.
256
- sig do
257
- params(set_id: String, similarity: Float).returns(T.attached_class)
258
- end
259
- def self.new(
260
- # Identifier of the matched reference set.
261
- set_id:,
262
- # Similarity between the submitted content and the matched reference set entry.
263
- similarity:
264
- )
390
+ MATCH =
391
+ T.let(
392
+ :match,
393
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Decision::TaggedSymbol
394
+ )
395
+ NOT_MATCH =
396
+ T.let(
397
+ :not_match,
398
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Decision::TaggedSymbol
399
+ )
400
+ REVIEW =
401
+ T.let(
402
+ :review,
403
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Decision::TaggedSymbol
404
+ )
405
+
406
+ sig do
407
+ override.returns(
408
+ T::Array[
409
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Decision::TaggedSymbol
410
+ ]
411
+ )
412
+ end
413
+ def self.values
414
+ end
415
+ end
416
+
417
+ # Escalation outcome for this label.
418
+ module Escalation
419
+ extend SafetyKit::Internal::Type::Enum
420
+
421
+ TaggedSymbol =
422
+ T.type_alias do
423
+ T.all(
424
+ Symbol,
425
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Escalation
426
+ )
427
+ end
428
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
429
+
430
+ NONE =
431
+ T.let(
432
+ :none,
433
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Escalation::TaggedSymbol
434
+ )
435
+ COMPLETED =
436
+ T.let(
437
+ :completed,
438
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Escalation::TaggedSymbol
439
+ )
440
+ ERROR =
441
+ T.let(
442
+ :error,
443
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Escalation::TaggedSymbol
444
+ )
445
+
446
+ sig do
447
+ override.returns(
448
+ T::Array[
449
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Escalation::TaggedSymbol
450
+ ]
451
+ )
452
+ end
453
+ def self.values
454
+ end
455
+ end
456
+
457
+ module Label
458
+ extend SafetyKit::Internal::Type::Enum
459
+
460
+ TaggedSymbol =
461
+ T.type_alias do
462
+ T.all(
463
+ Symbol,
464
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Label
465
+ )
466
+ end
467
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
468
+
469
+ REFERENCE_SET_MATCH =
470
+ T.let(
471
+ :reference_set_match,
472
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Label::TaggedSymbol
473
+ )
474
+
475
+ sig do
476
+ override.returns(
477
+ T::Array[
478
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Label::TaggedSymbol
479
+ ]
480
+ )
481
+ end
482
+ def self.values
483
+ end
484
+ end
485
+
486
+ module Type
487
+ extend SafetyKit::Internal::Type::Enum
488
+
489
+ TaggedSymbol =
490
+ T.type_alias do
491
+ T.all(
492
+ Symbol,
493
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Type
494
+ )
495
+ end
496
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
497
+
498
+ SIMILARITY =
499
+ T.let(
500
+ :similarity,
501
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Type::TaggedSymbol
502
+ )
503
+
504
+ sig do
505
+ override.returns(
506
+ T::Array[
507
+ SafetyKit::Models::ContentCreateResponse::Label::UnionMember1::Type::TaggedSymbol
508
+ ]
509
+ )
510
+ end
511
+ def self.values
512
+ end
513
+ end
265
514
  end
266
515
 
267
- sig { override.returns({ set_id: String, similarity: Float }) }
268
- def to_hash
516
+ sig do
517
+ override.returns(
518
+ T::Array[SafetyKit::Models::ContentCreateResponse::Label::Variants]
519
+ )
520
+ end
521
+ def self.variants
269
522
  end
270
523
  end
271
524
  end