From f47be507e642f00f94a0ac6300c0142b81c57371 Mon Sep 17 00:00:00 2001 From: octo-patch Date: Wed, 18 Mar 2026 17:32:53 +0800 Subject: [PATCH] feat: upgrade MiniMax default model to M2.7 - Add MiniMax-M2.7 and MiniMax-M2.7-highspeed to model list - Set MiniMax-M2.7 as default model (first in list) - Keep all previous models as alternatives - Add unit tests for MiniMax model configuration --- scrapegraphai/helpers/models_tokens.py | 2 + tests/test_minimax_models.py | 55 ++++++++++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 tests/test_minimax_models.py diff --git a/scrapegraphai/helpers/models_tokens.py b/scrapegraphai/helpers/models_tokens.py index 5d0bcf21..805a1bee 100644 --- a/scrapegraphai/helpers/models_tokens.py +++ b/scrapegraphai/helpers/models_tokens.py @@ -378,6 +378,8 @@ "grok-beta": 128000, }, "minimax": { + "MiniMax-M2.7": 204000, + "MiniMax-M2.7-highspeed": 204000, "MiniMax-M1": 1000000, "MiniMax-M1-40k": 40000, "MiniMax-M2": 204000, diff --git a/tests/test_minimax_models.py b/tests/test_minimax_models.py new file mode 100644 index 00000000..f029326f --- /dev/null +++ b/tests/test_minimax_models.py @@ -0,0 +1,55 @@ +"""Tests for MiniMax model configuration.""" + +import importlib.util +import os +import sys + +import pytest + + +@pytest.fixture(scope="module") +def models_tokens(): + """Import models_tokens directly to avoid triggering the full package init.""" + spec = importlib.util.spec_from_file_location( + "models_tokens", + os.path.join( + os.path.dirname(__file__), + "..", + "scrapegraphai", + "helpers", + "models_tokens.py", + ), + ) + module = importlib.util.module_from_spec(spec) + spec.loader.exec_module(module) + return module.models_tokens + + +def test_minimax_m27_in_model_list(models_tokens): + """MiniMax-M2.7 and MiniMax-M2.7-highspeed should be in the model list.""" + minimax_models = models_tokens["minimax"] + assert "MiniMax-M2.7" in minimax_models + assert "MiniMax-M2.7-highspeed" in minimax_models + + +def test_minimax_m27_listed_first(models_tokens): + """MiniMax-M2.7 should be the first model in the minimax dict.""" + minimax_models = list(models_tokens["minimax"].keys()) + assert minimax_models[0] == "MiniMax-M2.7" + assert minimax_models[1] == "MiniMax-M2.7-highspeed" + + +def test_minimax_old_models_still_present(models_tokens): + """All previous MiniMax models should still be available.""" + minimax_models = models_tokens["minimax"] + assert "MiniMax-M2.5" in minimax_models + assert "MiniMax-M2.5-highspeed" in minimax_models + assert "MiniMax-M2" in minimax_models + assert "MiniMax-M1" in minimax_models + + +def test_minimax_m27_token_limits(models_tokens): + """MiniMax-M2.7 models should have correct token limits.""" + minimax_models = models_tokens["minimax"] + assert minimax_models["MiniMax-M2.7"] == 204000 + assert minimax_models["MiniMax-M2.7-highspeed"] == 204000