From aede207fda90beb291c82eec52a2a2fba57c2e2b Mon Sep 17 00:00:00 2001 From: "Darya.Rovdo" Date: Mon, 14 Jul 2025 01:29:26 +0200 Subject: [PATCH] [daemon] LLM-17397 Calculate number of words instead of characters GitOrigin-RevId: 03ccc199db0fe9c49aa02ddfacd78813fb3a1ab2 --- .../core/src/com/intellij/cce/metric/RangeMetrics.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/evaluation-plugin/core/src/com/intellij/cce/metric/RangeMetrics.kt b/plugins/evaluation-plugin/core/src/com/intellij/cce/metric/RangeMetrics.kt index bf42a080304b..fa08ae541628 100644 --- a/plugins/evaluation-plugin/core/src/com/intellij/cce/metric/RangeMetrics.kt +++ b/plugins/evaluation-plugin/core/src/com/intellij/cce/metric/RangeMetrics.kt @@ -142,13 +142,13 @@ class NegativeIOURecallMetric : RecallRangeMetricBase(), IOUScorer, NegativeExam override val description: String = "Sum of IoU between predicted & negative reference range divided by total number of negative reference ranges" } -class PositiveMatchedTextLengthMetric : RangeMetricBase(), PositiveExamplesRangeFilter { - override val name = "Positive Matched Text Length" - override val description: String = "Length of predicted text within matched predicted & reference ranges" +class PositiveMatchedNumWordsMetric : RangeMetricBase(), PositiveExamplesRangeFilter { + override val name = "Positive Matched Num Words" + override val description: String = "Number of words in predicted text within matched predicted & reference ranges" override fun calculateMetric(matchedRanges: Map, predictedSize: Int, referenceSize: Int, fileSample: Sample) { matchedRanges.forEach { (predicted, _) -> - val score = predicted.text.length.toDouble() + val score = predicted.text.split("\\s+".toRegex()).size.toDouble() fileSample.add(score) coreSample.add(score) }