there are ssml tags that allow you to choose how to pronounce, depending on the TTS engine
ive seen option to speak by digit, name or scientific notation
i think this should not rely on ssml but be a util to use when needed
something like pronounce_as(number (int), mode (str))
pronounce_as(51, "digit") = "five one"
pronounce_as(51, "number") = "fifty one"
modes could be: digit, Short scale, Long scale, scientific notation, binary , hex, and number; number would be the default, maybe auto switch to scientific notation after a threshold?
in addition these methods would need to be localized per language
this would be super useful for example for phone numbers skill, to ensure they are pronounced correctly
mutating the utterance based on a default setting if digits are detected could also be part of the text normalization before adapt