Aha! I didn’t realize the argument was a tuple for LSTM, I was thinking it was (x, h_0, c_0). So you have to provide either both the hidden and the cell state or none at all then (or I suppose pass in a zero tensor for one yourself if you want to just initialize the other).
That did it, thank you!