Per-model dict key: the (provider, model_name) pair.
Pairing the provider with the model name keeps the same model served by
different providers (e.g. gpt-5.5 via openai vs azure) in separate rows
instead of collapsing them. The key is always built from the same values stored
on the corresponding ModelStats, so key and fields never diverge.