You're right on the terminology - it's an image encoder that produces a vector embedding, not a literal text description. I should have been more precise with the wording.
However, my main point still stands: the LLM itself never sees the raw image. It only receives a compressed embedding created by the vision encoder.