An image is not language, so a language model cannot process it directly. A multimodal projection model converts non-language representations into a form the language model can use, connecting visual input to an already trained multimodal model. section 11.4.3
In deployment, the projection model serves as an adapter:
- Download a projection file, such as a GGUF file used with a LLaVA deployment. section 11.4.3
- Pass the file to llama.cpp with --MMPROJ when starting the server. section 11.4.3
- Submit an image for tasks such as optical character recognition after the server is configured. section 11.4.3
LLaVA on a small device
A converted and quantized LLaVA model can remain language-only until its projection file is supplied. Adding --MMPROJ ./models/llava/mmproj.gguf enables image requests while increasing RAM use only modestly. Encoding images as strings is presented as an inferior alternative because observed results are poor. section 11.4.3
Figure 11.10 Our model isn’t ready yet; we need to provide a model projector.
The figure makes the missing projector visible: the model is not ready for multimodal serving until this adapter is provided. section 11.4.3
The same idea extends beyond images: CLIP-style projection supports shared embedding spaces, while ImageBind and OneLLM explore aligning multiple modalities for search and interaction. section 12.2.3
