Spaces:
Running on Zero
Running on Zero
File size: 1,048 Bytes
70af406 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | # Copyright (c) Meta Platforms, Inc. and affiliates. All Rights Reserved\n
from sam_audio.model.config import (
ClapRankerConfig,
EnsembleRankerConfig,
ImageBindRankerConfig,
JudgeRankerConfig,
)
from sam_audio.ranking.clap import ClapRanker
from sam_audio.ranking.imagebind import ImageBindRanker
from sam_audio.ranking.judge import JudgeRanker
from sam_audio.ranking.ranker import EnsembleRanker
def create_ranker(config):
if isinstance(config, ImageBindRankerConfig):
return ImageBindRanker(config)
elif isinstance(config, ClapRankerConfig):
return ClapRanker(config)
elif isinstance(config, JudgeRankerConfig):
return JudgeRanker(config)
elif isinstance(config, EnsembleRankerConfig):
ranker_cfgs, weights = zip(*config.rankers.values(), strict=False)
return EnsembleRanker(
rankers=[create_ranker(cfg) for cfg in ranker_cfgs],
weights=weights,
)
else:
assert config is None
return None
|