Like I said it is due to a stupid programming mistake. Since I am assigning the weights to the variables before and after I am accessing the same object using a reference. So both weight matrices are exactly the same. So logically if I subtract them from another the result will always be zero. What I needed to do in order for it to work is create a copy of the embedding weights by using the clone method. So the call should look like before = model.embeddings.weight.clone(). Now I was able to calculate the diff between the old version of the weights (the ones I cloned) and the new ones after the updates. The result reflects that the weight updates take place as they should.
So double check