mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-10-31 18:22:22 +01:00
Merge pull request #6730 from dxrpl/fix/hwfit-hf-param-count
fix(hwfit): keep the MoE active size for HF collection models (#6729)
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
from services.hwfit.hf_discovery import _entry_from_collection_item
|
||||
|
||||
_SOURCE = {"owner": "Qwen", "provider": "Qwen"}
|
||||
_COLLECTION = {"title": "Qwen3.6"}
|
||||
|
||||
|
||||
def _item(repo_id, num_params):
|
||||
item = {"id": repo_id, "type": "model", "pipeline_tag": "text-generation"}
|
||||
if num_params is not None:
|
||||
item["numParameters"] = num_params
|
||||
return item
|
||||
|
||||
|
||||
def test_moe_active_size_is_read_from_name_when_hf_reports_total():
|
||||
# HF collection items carry numParameters for nearly every repo. The MoE
|
||||
# active size only exists in the name, so it must still be parsed.
|
||||
entry = _entry_from_collection_item(_COLLECTION, _item("Qwen/Qwen3.6-35B-A3B", 35_951_822_704), _SOURCE)
|
||||
assert entry["parameters_raw"] == 35_951_822_704
|
||||
assert entry["is_moe"] is True
|
||||
assert entry["active_parameters"] == 3_000_000_000
|
||||
|
||||
|
||||
def test_moe_entry_without_hf_count_falls_back_to_name():
|
||||
entry = _entry_from_collection_item(_COLLECTION, _item("Qwen/Qwen3-Coder-30B-A3B-Instruct", None), _SOURCE)
|
||||
assert entry["parameters_raw"] == 30_000_000_000
|
||||
assert entry["is_moe"] is True
|
||||
assert entry["active_parameters"] == 3_000_000_000
|
||||
|
||||
|
||||
def test_dense_entry_keeps_hf_count_and_is_not_moe():
|
||||
entry = _entry_from_collection_item(_COLLECTION, _item("Qwen/Qwen3.6-27B", 27_781_427_952), _SOURCE)
|
||||
assert entry["parameters_raw"] == 27_781_427_952
|
||||
assert "is_moe" not in entry
|
||||
Reference in New Issue
Block a user