The PyTorch GRU implementation (as for the other RNNs) does not perform Dropout on the last layer. In the docs of the GRU parameters you can read:

dropout – If non-zero, introduces a Dropout layer on the outputs of each GRU layer except the last layer, with dropout probability equal to dropout.

You should get a warning if for dropout > 0 for a 1-layer network.
Therefore, just add a separate Dropout module after the bidirectional GRU, or split the output and add two if you want separate dropouts for each direction.