2025-02-17 19:44:17 +05:30

62 lines
1.4 KiB
Python

import pytest
from reworkd_platform.schemas.agent import ModelSettings
@pytest.mark.parametrize(
"settings",
[
{
"model": "gpt-4o",
"max_tokens": 7000,
"temperature": 0.5,
"language": "french",
},
{
"model": "gpt-3.5-turbo",
"max_tokens": 3000,
},
{
"model": "gpt-3.5-turbo-16k",
"max_tokens": 16000,
},
],
)
def test_model_settings_valid(settings):
result = ModelSettings(**settings)
assert result.model == settings.get("model", "gpt-4o")
assert result.max_tokens == settings.get("max_tokens", 500)
assert result.temperature == settings.get("temperature", 0.9)
assert result.language == settings.get("language", "English")
@pytest.mark.parametrize(
"settings",
[
{
"model": "gpt-4-32k",
},
{
"temperature": -1,
},
{
"max_tokens": 8000,
},
{
"model": "gpt-4",
"max_tokens": 32000,
},
],
)
def test_model_settings_invalid(settings):
with pytest.raises(Exception):
ModelSettings(**settings)
def test_model_settings_default():
settings = ModelSettings(**{})
assert settings.model == "gpt-3.5-turbo"
assert settings.temperature == 0.9
assert settings.max_tokens == 500
assert settings.language == "English"