As Chris said, there is no 1-to-1 substitution for the various barley malts, wheat, rye, etc. The flavor will never be exactly the same, but you can still replicate many styles pretty well by blending gf malts.
My opinions:
Biscuit rice 4L - generally my base malt of choice. It is a nice clean, bready flavor that is malty enough to give your brew a backbone, but not too much. However, rice can be more challenging to extract all of the sugars and it needs 2x the amount of recommended yeast nutrient or you will get terrible off flavors.
Pale rice - If you use too much, your beer will taste very sake-ish with a very grainy rice/fruity tanginess. I would not go more than 33% in my grist. I use it paired with 4L if I'm trying to move into a more pilsner malt direction.
Pale millet - easy to work with, but too nutty of a flavor for pale beers IMO (but I'm probably in the minority with that thinking). I don't purchase it anymore.
Munich millet - less nutty and more bready & biscuity than pale millet. The description says toasted and toffee flavors, but I don't really experience that. It is closer to 4L imo.
Vienna millet - I just don't like this malt tbh. To me, it is very toasty and has a weird twangy aftertaste to it (not like the sorghum twang). I'm sure it's great for some styles.
I typically will start with 4L for most pale brews and then blend in pale rice for lighter styles or add in something like caramillet or goldfinch millet for IPA's, NEIPA's, etc. Hope that helps...