fix bug where model selection on anthropic was always using default

This commit is contained in:
AI Christianson 2025-02-24 14:35:09 -05:00
parent 2c18655fb7
commit 04913bdaf3
3 changed files with 17 additions and 4 deletions

View File

@ -49,7 +49,7 @@ def launch_webui(host: str, port: int):
def parse_arguments(args=None): def parse_arguments(args=None):
ANTHROPIC_DEFAULT_MODEL = "claude-3-5-sonnet-20241022" ANTHROPIC_DEFAULT_MODEL = "claude-3-7-sonnet-20250219"
OPENAI_DEFAULT_MODEL = "gpt-4o" OPENAI_DEFAULT_MODEL = "gpt-4o"
parser = argparse.ArgumentParser( parser = argparse.ArgumentParser(
@ -224,8 +224,8 @@ Examples:
if parsed_args.provider == "openai": if parsed_args.provider == "openai":
parsed_args.model = parsed_args.model or OPENAI_DEFAULT_MODEL parsed_args.model = parsed_args.model or OPENAI_DEFAULT_MODEL
elif parsed_args.provider == "anthropic": elif parsed_args.provider == "anthropic":
# Always use default model for Anthropic # Use default model for Anthropic only if not specified
parsed_args.model = ANTHROPIC_DEFAULT_MODEL parsed_args.model = parsed_args.model or ANTHROPIC_DEFAULT_MODEL
elif not parsed_args.model and not parsed_args.research_only: elif not parsed_args.model and not parsed_args.research_only:
# Require model for other providers unless in research mode # Require model for other providers unless in research mode
parser.error( parser.error(

View File

@ -936,6 +936,12 @@ models_params = {
"default_temperature": 1.0, "default_temperature": 1.0,
"latency_coefficient": DEFAULT_BASE_LATENCY, "latency_coefficient": DEFAULT_BASE_LATENCY,
}, },
"claude-3-7-sonnet-20250219": {
"token_limit": 200000,
"supports_temperature": True,
"default_temperature": 1.0,
"latency_coefficient": DEFAULT_BASE_LATENCY,
},
"claude-3-5-haiku-latest": { "claude-3-5-haiku-latest": {
"token_limit": 200000, "token_limit": 200000,
"supports_temperature": True, "supports_temperature": True,

View File

@ -45,7 +45,14 @@ def test_default_anthropic_provider(clean_env, monkeypatch):
"""Test that Anthropic is the default provider when no environment variables are set.""" """Test that Anthropic is the default provider when no environment variables are set."""
args = parse_arguments(["-m", "test message"]) args = parse_arguments(["-m", "test message"])
assert args.provider == "anthropic" assert args.provider == "anthropic"
assert args.model == "claude-3-5-sonnet-20241022" assert args.model == "claude-3-7-sonnet-20250219" # Updated to match current default
def test_respects_user_specified_anthropic_model(clean_env):
"""Test that user-specified Anthropic models are respected."""
args = parse_arguments(["-m", "test message", "--provider", "anthropic", "--model", "claude-3-5-sonnet-20241022"])
assert args.provider == "anthropic"
assert args.model == "claude-3-5-sonnet-20241022" # Should not be overridden
TEST_CASES = [ TEST_CASES = [