I think this goes contrary to what we do in other cases of predict, IIRC
exog = exog[None, :]

should there be an additional check if len(exog) == self.exog.shape[0] and do conditional reshaping?