Xuan-Son Nguyen 2016f07bd1 convert : experimental support for `--mmproj` flag (#13023) пре 9 месеци
..
android 1c641e6aac `build`: rename main → llama-cli, server → llama-server, llava-cli → llama-llava-cli, etc... (#7809) пре 1 година
CMakeLists.txt 8b9cc7cdd8 llava : introduce libmtmd (#12849) пре 9 месеци
MobileVLM-README.md e665744317 llava : fix the script error in MobileVLM README (#9054) пре 1 година
README-gemma3.md 267c1399f1 common : refactor downloading system, handle mmproj with -hf option (#12694) пре 9 месеци
README-glmedge.md 0cec062a63 llama : add support for GLM-Edge and GLM-Edge-V series models (#10573) пре 11 месеци
README-granitevision.md 84d5f4bc19 Update granite vision docs for 3.2 model (#12105) пре 10 месеци
README-minicpmo2.6.md 8352cdc87b llava : fix bug in minicpm-v code (#11513) пре 10 месеци
README-minicpmv2.5.md 8352cdc87b llava : fix bug in minicpm-v code (#11513) пре 10 месеци
README-minicpmv2.6.md 8352cdc87b llava : fix bug in minicpm-v code (#11513) пре 10 месеци
README-quantize.md 1ec208083c llava: add quantization for the visual projector LLAVA, Qwen2VL (#11644) пре 11 месеци
README.md 7a2c913e66 llava : Add Granite Vision Support (#11794) пре 10 месеци
clip-impl.h 2016f07bd1 convert : experimental support for `--mmproj` flag (#13023) пре 9 месеци
clip-quantize-cli.cpp 1ec208083c llava: add quantization for the visual projector LLAVA, Qwen2VL (#11644) пре 11 месеци
clip.cpp 37b9f0d29d clip : refactor, add `image_manipulation` and `llava_uhd` classes (#13011) пре 9 месеци
clip.h 6602304814 llava: fix errors in clip.h on certain compilers (#13030) пре 9 месеци
convert_image_encoder_to_gguf.py e9b2f84f14 llava: add big-endian conversion for image encoder (#12218) пре 10 месеци
gemma3-cli.cpp b9154ecff9 mtmd : add methods to access `mtmd_image_tokens` (#12906) пре 9 месеци
gemma3_convert_encoder_to_gguf.py 7841fc723e llama : Add Gemma 3 support (+ experimental vision capability) (#12343) пре 10 месеци
glmedge-convert-image-encoder-to-gguf.py 0cec062a63 llama : add support for GLM-Edge and GLM-Edge-V series models (#10573) пре 11 месеци
glmedge-surgery.py 0cec062a63 llama : add support for GLM-Edge and GLM-Edge-V series models (#10573) пре 11 месеци
llava-cli.cpp 0364178ca2 clip : refactor clip_init, add tests (#12757) пре 9 месеци
llava.cpp 0c50923944 clip : use smart pointer (⚠️ breaking change) (#12869) пре 9 месеци
llava.h 3071c0a5f2 llava : support MiniCPM-V-2.5 (#7599) пре 1 година
llava_surgery.py e235b267a2 py : switch to snake_case (#8305) пре 1 година
llava_surgery_v2.py 7a2c913e66 llava : Add Granite Vision Support (#11794) пре 10 месеци
minicpmv-cli.cpp 0364178ca2 clip : refactor clip_init, add tests (#12757) пре 9 месеци
minicpmv-convert-image-encoder-to-gguf.py 8352cdc87b llava : fix bug in minicpm-v code (#11513) пре 10 месеци
minicpmv-surgery.py 3e3357fd77 llava : support Minicpm-omni (#11289) пре 1 година
mtmd.cpp b9154ecff9 mtmd : add methods to access `mtmd_image_tokens` (#12906) пре 9 месеци
mtmd.h b9154ecff9 mtmd : add methods to access `mtmd_image_tokens` (#12906) пре 9 месеци
qwen2_vl_surgery.py 4ddd199f6f llava : Allow locally downloaded models for QwenVL (#10833) пре 1 година
qwen2vl-cli.cpp 0364178ca2 clip : refactor clip_init, add tests (#12757) пре 9 месеци
requirements.txt d3ae0ee8d7 py : fix requirements check '==' -> '~=' (#8982) пре 1 година
test-1.jpeg 0364178ca2 clip : refactor clip_init, add tests (#12757) пре 9 месеци
tests.sh 0364178ca2 clip : refactor clip_init, add tests (#12757) пре 9 месеци

README-gemma3.md

Gemma 3 vision

[!IMPORTANT]

This is very experimental, only used for demo purpose.

Quick started

You can use pre-quantized model from ggml-org's Hugging Face account

# build
cmake -B build
cmake --build build --target llama-gemma3-cli

# alternatively, install from brew (MacOS)
brew install llama.cpp

# run it
llama-gemma3-cli -hf ggml-org/gemma-3-4b-it-GGUF
llama-gemma3-cli -hf ggml-org/gemma-3-12b-it-GGUF
llama-gemma3-cli -hf ggml-org/gemma-3-27b-it-GGUF

# note: 1B model does not support vision

How to get mmproj.gguf?

cd gemma-3-4b-it
python ../llama.cpp/examples/llava/gemma3_convert_encoder_to_gguf.py .

# output file is mmproj.gguf

How to run it?

What you need:

  • The text model GGUF, can be converted using convert_hf_to_gguf.py
  • The mmproj file from step above
  • An image file

    # build
    cmake -B build
    cmake --build build --target llama-gemma3-cli
    
    # run it
    ./build/bin/llama-gemma3-cli -m {text_model}.gguf --mmproj mmproj.gguf --image your_image.jpg