截止这篇笔记,llama.cpp主分支暂时不支持部署VL模型,需要切到一个分支上编译。部署流程整理自这个帖子。 部署流程如下: 1. 在modelscope上将Qwen2-VL-7B-Instruct下载下来。 2. 下载llama.cpp,需要下载这个分支。 3. 编译llama.cpp,流程和上一篇文章差不多,不过需要将cmake .. 这一步替换为下面命令: cmake .. -DGGML_CUDA=ON -DCMAKE_CUDA_COMPILER=$(which nvcc) -DTCNN_CUDA_ARCHITECTURES=61 4. 在llama.cpp工程下找到convert_hf_to_gguf.py,执行 python convert_hf_to_gguf.py ./model_path model_path目录下会生成Qwen2-VL-7B-Instruct-7.6B-F16.gguf文件。 5. 量化该文件: ./llama-quantize ./model_path/Qwen2-VL-7B-Instruct-7.6B-F16.gguf Qwen2-VL-7B-Instruct-7.6B-Q4_K_M.gguf Q4_K 输出为Qwen2-VL-7B-Instruct-7.6B-Q4_K_M.gguf文件。 6. 转换视觉编码器为gguf文件,在llama.cpp工程examples/llava目录下找到qwen2_vl_surgery.py文件,执行下面命令: python qwen2_vl_surgery.py "./model-dir" 在当前目录会生成qwen2vl-vision.gguf文件。 7. 使用上面生成的两个gguf文件: CUDA_VISIBLE_DEVICES=0 ./llama-qwen2vl-cli -m Qwen2-VL-7B-Instruct-7.6B-Q4_K_M.gguf --mmproj qwen2vl-vision.gguf -p "Describe the image" --image "PATH/TO/IMAGE" 后面根据提示词和图像,就能得到输出结果了。 (责任编辑:) |