From bdd2f6fa0f1678d906c5a4d6986ba760a3c0628f Mon Sep 17 00:00:00 2001 From: Benjamin Admin Date: Mon, 23 Mar 2026 08:50:45 +0100 Subject: [PATCH] fix: cap Anthropic max_tokens to 16384 for Pass 0b batches Previous formula (batch_size * 1500) exceeded Claude's 16K output limit for batch_size > 10, causing API failures and Ollama fallback. New formula: min(16384, max(4096, batch_size * 500)) Co-Authored-By: Claude Opus 4.6 --- backend-compliance/compliance/services/decomposition_pass.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend-compliance/compliance/services/decomposition_pass.py b/backend-compliance/compliance/services/decomposition_pass.py index b0d9ef7..d6752ba 100644 --- a/backend-compliance/compliance/services/decomposition_pass.py +++ b/backend-compliance/compliance/services/decomposition_pass.py @@ -1101,7 +1101,7 @@ class DecompositionPass: llm_response = await _llm_anthropic( prompt=prompt, system_prompt=_PASS0B_SYSTEM_PROMPT, - max_tokens=max(8192, len(batch) * 1500), + max_tokens=min(16384, max(4096, len(batch) * 500)), ) stats["llm_calls"] += 1 results_by_id = _parse_json_object(llm_response)