It's not running an OCR-style algorithm to export data and then passing that data to the LLM for further processing.
Instead, the model itself has been trained on both text and images at the same time.
So the image features end up as a weird ball of floating point numbers mixed together with the floating point numbers for the textual representation of the words in the prompt.
I'd love to understand this more. Strings of text get tokenized into a sequence of integer tokens - is there a similar tokenization step for image inputs? What does that look like?