Olá, Leonardo! Tudo bem?
Quando você utiliza o ViewModel em um fragment, ele é criado apenas uma vez, e sua instância é mantida durante a vida útil do fragment. Dessa forma, quando você utiliza o mesmo ViewModel em diferentes fragments, você está trabalhando com a mesma instância.
No caso do BaseFragment, que é uma classe abstrata que é estendida por outros fragments, o ViewModel é instanciado na classe filha que estende o BaseFragment. Isso significa que cada fragment que estende o BaseFragment terá sua própria instância do ViewModel.
Porém, como o ViewModel é criado apenas uma vez durante a vida útil do fragment, ele mantém seu estado mesmo quando o fragment é destruído e recriado. Dessa forma, mesmo que você navegue entre diferentes fragments que estendem o BaseFragment, o ViewModel manterá o estado das informações que foram salvas anteriormente.
Espero ter ajudado a esclarecer suas dúvidas! Se ainda tiver alguma pergunta, fique à vontade para perguntar.
Bons estudos!