This commit is contained in:
@@ -161,6 +161,15 @@ $result = ai_backend_call_and_charge($pdo, $config, $user, $systemPrompt, $userC
|
||||
|
||||
// Erst NACH der Abrechnung validieren: die Token wurden real verbraucht, das wird auch dann
|
||||
// verrechnet, wenn die KI kein valides JSON geliefert hat (siehe Planungsdokument).
|
||||
if (($result['stopReason'] ?? null) === 'max_tokens') {
|
||||
ai_backend_fail(502,
|
||||
'Die KI-Antwort wurde am Ausgabelimit von ' . $config['max_output_tokens'] .
|
||||
' Tokens abgeschnitten. Bitte den Umfang der Anfrage verkleinern oder das Serverlimit erhöhen.', [
|
||||
'errorCode' => 'output_limit_reached',
|
||||
'rawResponse' => $result['content'],
|
||||
]);
|
||||
}
|
||||
|
||||
$parsed = ai_backend_decode_json_response($result['content']);
|
||||
if (!is_array($parsed) || !isset($parsed['lessons']) || !is_array($parsed['lessons'])) {
|
||||
// Die bezahlte Modellantwort nicht wegwerfen: Der Desktop-Client kann sie in einem
|
||||
|
||||
Reference in New Issue
Block a user