diff --git a/backend/services/fit.py b/backend/services/fit.py index 8ddd44a..30fce7d 100644 --- a/backend/services/fit.py +++ b/backend/services/fit.py @@ -81,7 +81,9 @@ def max_ctx_in_budget(params_b: float, quant: str, budget_gb: float) -> int: ctx_budget = budget_gb - weights if ctx_budget <= 0: return 2048 - per_8k = (max(params_b, 7) / 7) * 0.8 + # KV pro 8k — EXAKTE Inverse von estimate_memory_gb (sqrt, kalibriert an + # Hermes-14B@128K≈19GB). Vorher linear → für große Modelle viel zu konservativ. + per_8k = (max(params_b, 7) / 7) ** 0.5 * 0.84 raw_ctx = (ctx_budget / per_8k) * 8192 best = _NICE_CTX[0] for c in _NICE_CTX: