Changes
This commit is contained in:
@@ -709,13 +709,27 @@ PROMPT;
|
||||
}
|
||||
|
||||
/**
|
||||
* 将模型输出的 confidence 吸附到固定档位,并与 is_match 规则对齐
|
||||
* 与 buildReferenceCheckSystemPrompt3 一致的 confidence 档位
|
||||
*/
|
||||
private function getReferenceCheckConfidenceBands($isMatch)
|
||||
{
|
||||
return $isMatch
|
||||
? [0.65, 0.78, 0.85, 0.92, 0.98]
|
||||
: [0.15, 0.25, 0.35, 0.45];
|
||||
}
|
||||
|
||||
/**
|
||||
* 将模型输出的 confidence 吸附到合法档位(如 0.95 → 0.92,0.75 → 0.78)
|
||||
*/
|
||||
private function snapReferenceCheckConfidence($confidence, $isMatch)
|
||||
{
|
||||
$matchBands = [0.75, 0.85, 0.95];
|
||||
$mismatchBands = [0.15, 0.25, 0.35];
|
||||
$bands = $isMatch ? $matchBands : $mismatchBands;
|
||||
$bands = $this->getReferenceCheckConfidenceBands($isMatch);
|
||||
|
||||
foreach ($bands as $band) {
|
||||
if (abs($confidence - $band) < 0.001) {
|
||||
return $band;
|
||||
}
|
||||
}
|
||||
|
||||
$nearest = $bands[0];
|
||||
$minDiff = abs($confidence - $nearest);
|
||||
@@ -726,6 +740,7 @@ PROMPT;
|
||||
$nearest = $band;
|
||||
}
|
||||
}
|
||||
|
||||
return $nearest;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user