While re-seeding instance and using multiple locales it doesn't help to get the same values in return. Example below.
from faker import Faker
fake = Faker(["ru_RU", "en_US"])
fake.seed_instance(2613165638)
print(fake.email())
fake.seed_instance(2613165638)
print(fake.email())
fake.seed_instance(2613165638)
print(fake.email())
fake.seed_instance(2613165638)
print(fake.email())
seanwilkinson@example.com
seanwilkinson@example.com
tretjakovarseni@example.com
tretjakovarseni@example.com
at the same time re-seeding Faker class works well.
from faker import Faker
fake = Faker(["ru_RU", "en_US"])
Faker.seed(2613165638)
print(fake.email())
Faker.seed(2613165638)
print(fake.email())
Faker.seed(2613165638)
print(fake.email())
Faker.seed(2613165638)
print(fake.email())
arseni2003@example.com
arseni2003@example.com
arseni2003@example.com
arseni2003@example.com
faker version 37.6.0, windows 11