必须用llama.cpp的GPU offload机制加载量化GGUF模型,编译时启用-DLLAMA_CUBLAS=ON和-DLLAMA_CUDA_FORCE_DMM=ON,选用Q4_K_M精度模型并设-ngl 35层,Dify通过OpenAI兼容接口调用。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在RTX 3060或更低显存的显卡(如RTX 2060、GTX 1660 Ti)上让Dify稳定调用本地Llama模型,必须绕过Python推理栈的内存膨胀和CUDA依赖冲突,直接用llama.cpp的GPU offload机制加载量化GGUF模型——它能把90%权重卸载到显存,其余保留在内存,实测在12GB显存下可跑Q4_K_M精度的13B模型。
编译支持GPU卸载的llama.cpp
第一步:确认NVIDIA驱动与CUDA版本匹配。运行nvidia-smi查看驱动支持的最高CUDA版本,比如显示“CUDA Version: 12.4”,则必须安装CUDA Toolkit 12.4,不能装12.5或12.3。
第二步:拉取最新llama.cpp源码并进入构建目录:git clone https://github.com/ggml-org/llama.cpp && cd llama.cpp && mkdir build && cd build。
第三步:执行带GPU支持的CMake配置。关键参数是-DLLAMA_CUBLAS=ON和-DLLAMA_CUDA_FORCE_DMM=ON,后者强制启用显存直连模式,避免在低端卡上因PCIe带宽不足导致KV cache同步失败。【不加-DLLAMA_CUDA_FORCE_DMM=ON会导致llama-server启动后立刻段错误】
第四步:编译生成server可执行文件:cmake --build . --config Release -j$(nproc) --target llama-server。编译完成后,./llama-server --help应能输出含--ngl(GPU layer数)选项的帮助信息。
准备适配低端显卡的量化模型
方法一:直接下载已验证可用的GGUF模型。推荐使用Qwen2-7B-Instruct.Q4_K_M.gguf或Phi-3-mini-4K-instruct.Q4_K_S.gguf,这两个模型在RTX 3060上实测加载耗时<8秒,显存占用稳定在5.2–6.1GB之间,不会触发OOM Killer。
方法二:自行量化Hugging Face模型。先用llama.cpp/convert-hf-to-gguf.py转出FP16 GGUF,再用llama.cpp/quantize工具降比特:./quantize qwen2-7b-f16.gguf qwen2-7b-q4_k_m.gguf Q4_K_M。注意:不要选Q2_K或Q3_K——它们虽小但会在低端卡上引发注意力计算溢出,输出乱码概率超70%。
提示:模型文件务必放在SSD路径下,如/mnt/models/qwen2-7b-q4_k_m.gguf;机械硬盘会导致llama-server启动时卡在“mapping tensor data”长达2分钟以上。
Qwen 视频智能分析基础客户端(免费版),基于 Qwen 3.5 Plus 多模态模型对本地视频进行内容分析,支持场景描述与基础内容理解,采用默认抽帧频率和提示词,适合快速概览视频,API Key 读取自 ~/.skill-platform/skill-platform.json 的 skills 配置。
启动llama-server并暴露API端点
① 设置环境变量防止CUDA上下文初始化失败:export CUDA_VISIBLE_DEVICES=0(只用第一张卡);export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64:$LD_LIBRARY_PATH(确保链接正确CUDA库)。
② 启动服务命令需精确控制GPU卸载层数:./llama-server -m /mnt/models/qwen2-7b-q4_k_m.gguf -ngl 35 -c 2048 -t 8 -np 4 --port 8003 --host 0.0.0.0。其中-ngl 35表示把前35层送入GPU,剩余层CPU计算——RTX 3060(GA106核心)最多稳定承载35层,设36会触发显存不足并自动fallback至全CPU,速度暴跌4倍。
③ 验证服务是否就绪:在另一终端执行curl http://localhost:8003/health,返回{"status":"ok"}即成功。若返回空或超时,请检查nvidia-smi中是否有llama-server进程占满显存。
这一步操作起来很简单,直接把文件拖进去就行。
在Dify中添加llama.cpp为模型供应商
登录Dify管理后台 → 点击右上角「设置」→「模型供应商」→ 「+ 添加模型供应商」→ 选择「OpenAI兼容接口」。
填写以下字段:
供应商名称:填“llama-cpp-local”;
API密钥:留空(llama-server默认无鉴权);
基础URL:填http://localhost:8003/v1;
模型名称:必须与GGUF文件名前缀一致,例如qwen2-7b-q4_k_m(不含.gguf后缀,也不能带斜杠或空格)。
点击「测试连接」,如果返回“Connection successful”,说明Dify已能通过OpenAI格式请求调用本地服务。此时可在应用编辑页的「模型配置」中选择该供应商,无需重启Dify服务。

















