[Fix] Deduplicate model lists and remove dead assignment

Adds dedup to get_key_models and get_team_models to prevent duplicate
entries when access group member models overlap with proxy_model_list.
Removes dead assignment of all_models in get_team_models.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
yuneng-jiang 2026-03-09 22:44:45 -07:00
parent c829733200
commit 1cf191d9ad
2 changed files with 8 additions and 2 deletions

View file

@ -122,6 +122,9 @@ def get_key_models(
include_model_access_groups=include_model_access_groups,
)
# deduplicate while preserving order
all_models = list(dict.fromkeys(all_models))
verbose_proxy_logger.debug("ALL KEY MODELS - {}".format(len(all_models)))
return all_models
@ -148,14 +151,15 @@ def get_team_models(
if include_model_access_groups:
all_models_set.update(model_access_groups.keys())
all_models = list(all_models_set)
all_models = _get_models_from_access_groups(
model_access_groups=model_access_groups,
all_models=list(all_models_set),
include_model_access_groups=include_model_access_groups,
)
# deduplicate while preserving order
all_models = list(dict.fromkeys(all_models))
verbose_proxy_logger.debug("ALL TEAM MODELS - {}".format(len(all_models)))
return all_models

View file

@ -43,6 +43,7 @@ def test_get_team_models_all_proxy_models_includes_access_groups():
assert "group-b" in result
assert "model1" in result
assert "model2" in result
assert len(result) == len(set(result)), "result should have no duplicates"
def test_get_team_models_all_proxy_models_without_include_flag():
@ -94,6 +95,7 @@ def test_get_key_models_all_proxy_models_includes_access_groups():
assert "group-a" in result
assert "model1" in result
assert "model2" in result
assert len(result) == len(set(result)), "result should have no duplicates"
def test_get_key_models_passes_include_model_access_groups():