Generate: Add exception path for Donut
# What does this PR do?

The multimodal generalization added in #22748 added a regression Donut -- Donut is never expecting a BOS token, having a task-specific token in its place.

This PR adds an exception code path to handle it. All related slow tests are now passing.

cc @NielsRogge 
_The documentation is not available anymore as the PR was closed or merged._