LLAMA CPP 比 Ollama 快得多 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
wenerme
V2EX    程序员

LLAMA CPP 比 Ollama 快得多

  •  
  •   wenerme
    wenerme 1 天前 1577 次点击

    最近开始逐步把 ollama 迁移到 llamacpp 了,起因是 ollama 不是所有模型都支持并行,迁移过来后发现 llamacpp 原来挺快的。

    通过 llamaswap 能方便使用多个模型,前期迁移也能保留 ollama 通过 llamaswap 代理请求过去

    而且 llamacpp 有很多 ollama 没有的特性,且能控制的内容更多,比如能支持更多的 embeding 方式,更控制细粒度的参数,能支持推测推理,支持 lora 等等

    非常建议一试

    我自己的一些 llamaswap 配置

    models: # used for dayflow, about 2k context qwen3-vl:8b: cmd: > /app/llama-server --port ${PORT} -np 2 -cb -c 8192 -ctk q8_0 -ctv q8_0 -ngl 99 --jinja -hf unsloth/Qwen3-VL-8B-Instruct-GGUF:Q4_K_M --mmproj /models/qwen3-vl-8b-mmproj-F16.gguf -a 'qwen3-vl:8b' qwen3-vl-thinking:32b: cmd: > /app/llama-server --port ${PORT} -np 2 -cb -c 8096 -ngl 99 --jinja -hf unsloth/Qwen3-VL-32B-Thinking-GGUF:Q4_K_M --mmproj /models/qwen3-vl-32b-mmproj-F16.gguf -a 'qwen3-vl:32b' ttl: 360 aliases: - qwen3-vl - qwen3-vl:32b gpt-oss:20b: cmd: /app/llama-server --port ${PORT} -hf ggml-org/gpt-oss-20b-GGUF -c 0 --jinja ttl: 360 aliases: - gpt-oss qwen3-embedding:4b: cmd: > /app/llama-server --port ${PORT} -hf Qwen/Qwen3-Embedding-4B-GGUF:Q4_K_M --embedding --pooling last -ub 8192 --verbose-prompt --jinja ttl: 360 qwen3-reranker:4b: cmd: /app/llama-server --port ${PORT} -hf QuantFactory/Qwen3-Reranker-4B-GGUF --reranking ttl: 360 groups: always: persistent: true swap: false exclusive: false members: - 'qwen3-vl:8b' 
    19 条回复    2025-11-21 16:34:10 +08:00
    coefu
        1
    coefu  
       1 天前
    ollama 就是在 llama.cpp 上的封装。而且还不支持单机多卡并行推理。
    t/1126516
    mooyo
        2
    mooyo  
       1 天前
    说起来,如果本地运行的话,大概速度是多少?我用我的 AMD AI 365 跑 qwen 的 0.7b 小模型,也才 30token/s 用的 rocm 。这个速度正常么
    GDSR
        3
    GDSR  
       1 天前 via Android
    @mooyo Qwen 有 0.7B 的吗?
    mooyo
        4
    mooyo  
       1 天前
    @GDSR 0.6B GGUF 记错了。
    metalvest
        5
    metalvest  
       1 天前
    微软也搞了个自己的类似东西
    winget install Microsoft.FoundryLocal
    foundry model run qwen2.5-0.5b
    secretys
        6
    secretys  
       1 天前
    vllm 是类似的东西吧,这个应该比较快吧
    c0xt30a
        7
    c0xt30a  
       23 小时 41 分钟前
    @wenerme OP 方便分享下 docker-compose.yml 文件么?多谢了
    TabGre
        8
    TabGre  
       22 小时 57 分钟前 via iPhone
    支持 mps 吗?
    bwnjnOEI
        9
    bwnjnOEI  
       22 小时 57 分钟前 via iPhone
    我也用的你这一套 gpt-oss-120b 4090d 能到 30 多 tokens/s
    wenyifancc
        10
    wenyifancc  
       19 小时 40 分钟前
    @mooyo 这速度不对啊,我在 Intel Ultra 265k 使用纯 cpu 运行 Qwen3-30b-a3b-2507_UD_Q4_K_XL 在 32k 上下文长度下也能跑 32token/s,使用 5090 可以跑 300token/s
    llama.cpp vulkan 后端
    dryadent
        11
    dryadent  
       19 小时 17 分钟前
    @secretys vllm 其实也有门槛,有条件的话,自己部署其实不如直接买服务
    slowgen
        12
    slowgen  
       18 小时 49 分钟前
    ollama 就是个废物,在 r/LocalLLaMA 都被喷了好多回了,精准控制参数贼麻烦,还不如直接去 llama-server 看参数 https://github.com/ggml-org/llama.cpp/tree/master/tools/server

    而且现在 llama.cpp 自带的 webui 也挺好用的,越来越强大了,缺点就是多个模型加载有点麻烦,要开多个命令。
    在 mac 上用 llama.cpp 是最方便的,去 release 页下载编译好的文件就好了,只有 15MB ,追新模型很方便。
    举个例子:我跑 gpt-oss-120b 模型,开中等级别推理,这个命令就搞定

    /Users/admin/llama/build/bin/llama-server \
    -m /Volumes/RC20/lmstudio-community/gpt-oss-120b-GGUF/gpt-oss-120b-MXFP4-00001-of-00002.gguf \
    --host 0.0.0.0 \
    --port 50505 \
    -fa on \
    -np 4 \
    -ub 2048 -b 2048 \
    -c 131072 \
    --presence-penalty 1.1 \
    --n-gpu-layers 99 \
    --jinja \
    --alias openai/gpt-oss-120b \
    --chat-template-kwargs '{"reasoning_effort": "medium"}' \
    --temp 1.0 \
    --top-p 1.0 \
    --top-k 0

    Windows 上同理,下载对应的文件解压就用

    Linux 上也很方便,N 卡的话直接 cuda13 驱动一装,docker 配置一下 nvidia 作为 runtime 完事

    docker run --gpus all \
    -v /home/slowgen/models/Qwen3-Coder-30B-A3B-Instruct-UD-Q4_K_XL.gguf:/models/Qwen3-Coder-30B-A3B-Instruct-UD-Q4_K_XL.gguf \
    -p 12345:12345 \
    ghcr.io/ggml-org/llama.cpp:server-cuda \
    -m /models/Qwen3-Coder-30B-A3B-Instruct-UD-Q4_K_XL.gguf \
    -c 40960 \
    -np 4 \
    --jinja \
    --n-gpu-layers 99 \
    --temp 0.7 \
    --min-p 0.0 \
    --top-p 0.8 \
    --top-k 20 \
    --presence-penalty 1.05 \
    --port 12345 \
    --host 0.0.0.0 \
    --mlock \
    -mg 0
    wenerme
        13
    wenerme  
    OP
       10 小时 34 分钟前   1
    @c0xt30a

    ```yaml
    services:
    ollama:
    # 0.11.6 0.12.3
    image: docker.m.daocloud.io/ollama/ollama:0.13.0
    container_name: ollama
    networks:
    - service
    ports:
    - 11434:11434
    volumes:
    - /data/home/.ollama/:/root/.ollama/
    restart: unless-stopped
    deploy:
    resources:
    reservations:
    devices:
    - driver: nvidia
    count: all
    capabilities: [ gpu ]
    environment:
    # qwen3 vl 最大 256K
    #OLLAMA_CONTEXT_LENGTH: 16384 # 16k
    #OLLAMA_CONTEXT_LENGTH: 32768 # 32k
    # qwen3-vl:32b 256K 206.6 GiB
    # qwen3-vl:32b 64K 42.7 GiB
    OLLAMA_CONTEXT_LENGTH: 64000

    OLLAMA_DEBUG: 1

    #OLLAMA_KV_CACHE_TYPE: q4_0
    OLLAMA_FLASH_ATTENTION: 1
    #OLLAMA_NEW_ENGINE: true
    OLLAMA_NUM_PARALLEL: 2


    llama:
    image: ghcr.io/mostlygeek/llama-swap:v172-cuda-b7062
    container_name: llama
    command:
    - -watch-config
    - -config
    - /llama/llama-swap.yaml
    volumes:
    - ./models:/models
    - ./models:/root/.cache/llama.cpp
    # the user is app, home is /app, uid=10001
    - ./models:/app/.cache/llama.cpp
    - ./llama:/llama
    ports:
    - 11435:8080
    environment:
    HF_ENDPOINT: https://modelscope.cn
    sysctls:
    net.ipv6.conf.all.disable_ipv6: 1
    deploy:
    resources:
    reservations:
    devices:
    - driver: nvidia
    count: all
    capabilities: [ gpu ]
    extra_hosts:
    - "host.docker.internal:host-gateway"

    ```
    wenerme
        14
    wenerme  
    OP
       10 小时 28 分钟前   1
    @TabGre llamacpp 支持 mps


    @mooyo 我本地二手显卡,qwen3 vl 32b 30tk/s, gpt-oss 20b 100tk/s


    @secretys vllm 对显卡有要求,我 v100 跑不了

    @slowgen 模型加载用 llama-swap 配合下来感觉比 ollama 舒服,主要是可控制的参数太多了,就觉得爽
    mooyo
        15
    mooyo  
       5 小时 52 分钟前
    @wenyifancc 我用的核显跑的,问 AI 说瓶颈在内存速度上,CPU 能跑这么快?有时间我试试切 CPU
    wenyifancc
        16
    wenyifancc  
       4 小时 10 分钟前
    @mooyo 试试 vulkan 的后端,另外我使用核显(intel 的核显)速度明显是不如直接用 cpu 跑的,内存速度也有影响,我的内存频率是 6400M,双通道,192GB;
    附上其他模型的性能供参考:(5090 显卡,显存够的情况下全部放显存;不够的情况下,加载模型时 moe 层卸载到 cpu,仅共享层和 kv 缓存放显存;通常显存使用 16g 以内)
    以下模型精度都是 UD_Q4_X_KL:

    qwen3-235b-a22b-2507-instruct: 7 token/s
    qwen3-vl-235b-a22b-2507-instruct: 6 token/s
    qwen3-vl-30b-a3b-instruct: 180 token/s
    qwen3-vl-32b-instruct: 55 token/s
    qwen3-vl-8b-instruct: 120 token/s

    glm-4.5-air: 15 token/s
    gpt-oss-120b: 30 toke/s
    gpt-oss-20b: 240 token/s
    mooyo
        17
    mooyo  
       4 小时 6 分钟前
    @wenyifancc 我试试。其实我的目标只是跑个本地翻译,速度能比硅基流动的 9b-chat 快一点就行了。
    mooyo
        18
    mooyo  
       4 小时 5 分钟前
    @wenyifancc 我的内存应该是 6400 双通道的 32G 主要是内存太小了点
    kevan
        19
    kevan  
       3 小时 11 分钟前
    没人用 lm studio ?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2555 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 11:45 PVG 19:45 LAX 03:45 JFK 06:45
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86