such an error would occur if you do something like this,
embedding_size = [[10, 10], [20, 20]]
a = nn.ModuleList([nn.Embedding(b, c) for b, c in embedding_size])
for i, j in enumerate(a):
  print(i, j(torch.tensor([15]))) # accessing index 15 which is out of range, as our first embedding table has 10 elements, indexed from 0-9

resulting in
IndexError: index out of range in self

could you check if you are passing an index that exceeds the number of elements in the embedding table.