Are the hyperparameters exactly the same for each model? It’s quite hard to parse the training logs - it’d be nice if you showed a graph of the loss, accuracy etc over time for each model.
From what I can see though, your keras model converges to almost 0 training loss, whereas the PyTorch model seems to increase in training loss. It looks as though the learning rate in PyTorch is 0.1 wheras you use 0.001 in Keras, this could be the issue. For training loss to increase, it’s usually because your learning rate is too high.