completion-kit 0.28.4 → 0.28.5
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
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4206f8709997fb6c2e5055bcf2f201eda59d4de2c7c3ef15fc7f98dac4f92a21
|
|
4
|
+
data.tar.gz: 83e6756cc1f5ed0606d01f7e269e7157146a9efe539c7550f4dd33ace35914b0
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8edabb8604bbee9c38c9cf070add0732592c8392f686f8f224c8ca82cd7aef1d3a581011f41da48eb7cbd3cd0bd26a0331002483843183cf62e4167ea408689c
|
|
7
|
+
data.tar.gz: 2afb4955b727b0bca04939e4d2ce2a6fd61b25e66e3bbe843b39e48ca0a81be30fd845369b30c39b7c17d71d7029d947eb3221d78ca9f0f1faeba9e8eab0a179
|
|
@@ -16,7 +16,7 @@ module CompletionKit
|
|
|
16
16
|
@responses_total = @run.responses.count
|
|
17
17
|
@responses_per_page = RESPONSES_PER_PAGE
|
|
18
18
|
@responses_total_pages = [(@responses_total.to_f / RESPONSES_PER_PAGE).ceil, 1].max
|
|
19
|
-
@responses_page = params[:page].to_i.clamp(1, @responses_total_pages)
|
|
19
|
+
@responses_page = params[:page].to_s.to_i.clamp(1, @responses_total_pages)
|
|
20
20
|
@responses_offset = (@responses_page - 1) * RESPONSES_PER_PAGE
|
|
21
21
|
@responses = ordered_responses_relation(@run, params[:sort])
|
|
22
22
|
.includes(:reviews)
|
|
@@ -18,7 +18,7 @@ module CompletionKit
|
|
|
18
18
|
discard_on ActiveJob::DeserializationError
|
|
19
19
|
|
|
20
20
|
rescue_from(StandardError) do |error|
|
|
21
|
-
|
|
21
|
+
unless error.is_a?(CompletionKit::ModelDiscoveryService::DiscoveryError)
|
|
22
22
|
Rails.error.report(error, handled: true, context: { job: self.class.name, provider_credential_id: arguments.first })
|
|
23
23
|
end
|
|
24
24
|
credential = ProviderCredential.find_by(id: arguments.first)
|
|
@@ -63,9 +63,19 @@ module CompletionKit
|
|
|
63
63
|
return nil if body.blank?
|
|
64
64
|
data = JSON.parse(body)
|
|
65
65
|
err = data["error"]
|
|
66
|
-
(err.is_a?(Hash) && err["message"]) || data["message"] || (err.is_a?(String) && err) || nil
|
|
66
|
+
message = (err.is_a?(Hash) && err["message"]) || data["message"] || (err.is_a?(String) && err) || nil
|
|
67
|
+
redact_secrets(message)
|
|
67
68
|
rescue JSON::ParserError
|
|
68
|
-
body.to_s.truncate(200)
|
|
69
|
+
redact_secrets(body.to_s.truncate(200))
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
def redact_secrets(text)
|
|
73
|
+
return text if text.blank?
|
|
74
|
+
redacted = text.to_s
|
|
75
|
+
redacted = redacted.gsub(@api_key, "[REDACTED]") if @api_key.present?
|
|
76
|
+
redacted = redacted.gsub(/\bsk-[A-Za-z0-9_-]{6,}/, "[REDACTED]")
|
|
77
|
+
redacted = redacted.gsub(/\bBearer\s+\S+/i, "Bearer [REDACTED]")
|
|
78
|
+
redacted.gsub(/(API key provided:\s*)\S+/i, '\1[REDACTED]')
|
|
69
79
|
end
|
|
70
80
|
|
|
71
81
|
def fetch_openai_models
|
|
@@ -336,11 +346,11 @@ module CompletionKit
|
|
|
336
346
|
end
|
|
337
347
|
else
|
|
338
348
|
model.supports_generation = false
|
|
339
|
-
model.generation_error = "#{response.status} - #{response.body.truncate(500)}"
|
|
349
|
+
model.generation_error = redact_secrets("#{response.status} - #{response.body.truncate(500)}")
|
|
340
350
|
end
|
|
341
351
|
rescue StandardError => e
|
|
342
352
|
model.supports_generation = false
|
|
343
|
-
model.generation_error = e.message
|
|
353
|
+
model.generation_error = redact_secrets(e.message)
|
|
344
354
|
end
|
|
345
355
|
|
|
346
356
|
def probe_judging(model)
|
|
@@ -364,11 +374,11 @@ module CompletionKit
|
|
|
364
374
|
end
|
|
365
375
|
else
|
|
366
376
|
model.supports_judging = false
|
|
367
|
-
model.judging_error = "#{response.status} - #{response.body.truncate(500)}"
|
|
377
|
+
model.judging_error = redact_secrets("#{response.status} - #{response.body.truncate(500)}")
|
|
368
378
|
end
|
|
369
379
|
rescue StandardError => e
|
|
370
380
|
model.supports_judging = false
|
|
371
|
-
model.judging_error = e.message
|
|
381
|
+
model.judging_error = redact_secrets(e.message)
|
|
372
382
|
end
|
|
373
383
|
|
|
374
384
|
OPENAI_REASONING_PROBE_BUDGET = 65_536
|