fix: support max reasoning and custom model selection for 1.0.0
This commit is contained in:
1 parent
e1185a5104
commit
2ec563c079
12 files changed
+119
-16
No files matched your search
@@ -125,16 +125,30 @@ def test_reasoning_retry_settings_roundtrip(isolated_settings):
|
||||
assert parse_llm_config().operator.reasoning_effort == "default"
|
||||
|
||||
|
||||
def test_responses_payload_has_reasoning_and_no_sdk_retry(monkeypatch):
|
||||
def test_max_reasoning_and_custom_model_survive_reload(isolated_settings):
|
||||
result = service.save_model_settings(
|
||||
service.ModelSettingsUpdate(model="custom/model-v2", reasoning_effort="max")
|
||||
)
|
||||
assert result["model"] == "custom/model-v2"
|
||||
assert result["reasoning_effort"] == "max"
|
||||
assert dotenv_values(isolated_settings)["OPENAI_REASONING_EFFORT"] == "max"
|
||||
reloaded = Settings(_env_file=isolated_settings)
|
||||
assert reloaded.OPENAI_REASONING_EFFORT == "max"
|
||||
assert reloaded.OPENAI_MODEL == "custom/model-v2"
|
||||
assert parse_llm_config().operator.reasoning_effort == "max"
|
||||
|
||||
|
||||
@pytest.mark.parametrize("effort", ["high", "max"])
|
||||
def test_responses_payload_has_reasoning_and_no_sdk_retry(monkeypatch, effort):
|
||||
from artemis.llm.router import ModelEndpoint, ModelFactory
|
||||
from unittest.mock import Mock
|
||||
|
||||
factory = Mock()
|
||||
monkeypatch.setattr("langchain_openai.ChatOpenAI", factory)
|
||||
ModelFactory.create_model(
|
||||
ModelEndpoint(api_key="test-only", reasoning_effort="high", max_retries=5)
|
||||
ModelEndpoint(api_key="test-only", reasoning_effort=effort, max_retries=5)
|
||||
)
|
||||
assert factory.call_args.kwargs["reasoning_effort"] == "high"
|
||||
assert factory.call_args.kwargs["reasoning_effort"] == effort
|
||||
assert factory.call_args.kwargs["max_retries"] == 0
|
||||
assert factory.call_args.kwargs["use_responses_api"] is True
|
||||
ModelFactory.create_model(ModelEndpoint(api_key="test-only", reasoning_effort="default"))
|
||||
|
||||
Reference in new issue
Block a user