限制 111 fallback context 大小
All checks were successful
CD Pipeline / deploy (push) Successful in 1m10s

This commit is contained in:
OoO
2026-05-21 12:44:25 +08:00
committed by AiderHeal Bot
parent 8e4d7d306e
commit c329d96dff
7 changed files with 22 additions and 3 deletions

View File

@@ -244,6 +244,7 @@ def test_111_fallback_downgrades_heavy_model_and_shortens_keep_alive(monkeypatch
monkeypatch.setattr(oss, "FALLBACK_111_MODEL", "qwen2.5:7b-instruct")
monkeypatch.setattr(oss, "FALLBACK_111_KEEP_ALIVE", "5m")
monkeypatch.setattr(oss, "FALLBACK_111_MAX_TIMEOUT", 45)
monkeypatch.setattr(oss, "FALLBACK_111_NUM_CTX", 4096)
monkeypatch.setattr(oss, "FALLBACK_111_MODEL_PATTERNS", ("qwen3:14b",))
fake_resp = MagicMock(status_code=200)
@@ -261,6 +262,7 @@ def test_111_fallback_downgrades_heavy_model_and_shortens_keep_alive(monkeypatch
payload = mock_post.call_args.kwargs["json"]
assert payload["model"] == "qwen2.5:7b-instruct"
assert payload["keep_alive"] == "5m"
assert payload["options"]["num_ctx"] == 4096
assert mock_post.call_args.kwargs["timeout"] == 45
assert resp.model == "qwen2.5:7b-instruct"
@@ -271,6 +273,7 @@ def test_111_fallback_keeps_light_model_but_caps_timeout(monkeypatch):
monkeypatch.setattr(oss, "FALLBACK_111_KEEP_ALIVE", "5m")
monkeypatch.setattr(oss, "FALLBACK_111_MAX_TIMEOUT", 45)
monkeypatch.setattr(oss, "FALLBACK_111_NUM_CTX", 4096)
svc = oss.OllamaService(host="http://192.168.0.111:11434", model="llama3.2:latest")
with patch("services.ollama_service.requests.post", side_effect=Timeout):
@@ -286,6 +289,7 @@ def test_111_fallback_downgrades_hermes_context_heavy_model(monkeypatch):
monkeypatch.setattr(oss, "FALLBACK_111_MODEL", "llama3.2:latest")
monkeypatch.setattr(oss, "FALLBACK_111_KEEP_ALIVE", "5m")
monkeypatch.setattr(oss, "FALLBACK_111_MAX_TIMEOUT", 45)
monkeypatch.setattr(oss, "FALLBACK_111_NUM_CTX", 4096)
monkeypatch.setattr(oss, "FALLBACK_111_MODEL_PATTERNS", ("hermes3:*",))
fake_resp = MagicMock(status_code=200)
@@ -303,4 +307,5 @@ def test_111_fallback_downgrades_hermes_context_heavy_model(monkeypatch):
payload = mock_post.call_args.kwargs["json"]
assert payload["model"] == "llama3.2:latest"
assert payload["keep_alive"] == "5m"
assert payload["options"]["num_ctx"] == 4096
assert resp.model == "llama3.2:latest"