V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ShadowPower
V2EX  ›  程序员

体验了 Qwen2.5 Coder 32B 之后,我觉得本地 LLM 能用了

  •  1
     
  •   ShadowPower · 24 天前 · 9898 次点击
    现在 Huggingface Chat 上可以在线体验:
    https://huggingface.co/chat

    一年前我尝试了绝大多数热门的,开放权重下载的 LLM 。当时得出的结论是:能本地跑的模型都没有实用价值,写代码的能力都非常糟糕。

    最近发布的 Qwen2.5 Coder 32B 效果还真不错,感觉上比早期 GPT4 还强。只要能自己拆解需求,写出大体实现思路,它就可以给出基本上可用的代码。估计有 GPT4o 的水平。

    它比我之前认为最好的 DeepSeek v2.5 236B 还好。DeepSeek 的问题在于上下文窗口太小,而且自己还会加超级多的解释和注释,甚至把输入复述一遍,浪费上下文长度。然后输出越长性能越差,甚至会崩溃成循环输出一个单词,所以,实际用起来不好用。

    以我用 GPT 的经验,达到初版 GPT4 以上的水平就能提升开发效率。我认为,如今本地 LLM 真的有实用价值了。
    98 条回复    2024-11-17 10:53:33 +08:00
    HatMatrix
        1
    HatMatrix  
       24 天前
    但是 32B 的模型,你本地部署也不太容易呀
    panxiuqing
        2
    panxiuqing  
       24 天前
    本地要什么硬件配置
    spkingr
        3
    spkingr  
       24 天前 via Android
    厉害,本地部署能跑动的配置最低得多少呢?
    ShadowPower
        4
    ShadowPower  
    OP
       24 天前   ❤️ 2
    @HatMatrix 双 3090 或者一块 RTX8000 改散热就可以了,运行 8bit 量化版本,质量损失很小。
    我觉得再过一两年可能会有价格低廉的消费级设备来跑。
    很多处理器和显卡的架构设计都是两年之前就开始的,当时根本不会有本地 LLM 的需求。
    没准将来的普通电脑都会有四通道内存,搭载高性能 NPU 而且针对 LLM 特别优化,同时还有配套的软件设施。
    ShadowPower
        5
    ShadowPower  
    OP
       24 天前
    @spkingr 如果追求运行速度,最低的话,都是整机售价一万多到两万的设备……
    门槛还是有点高。
    zhmouV2
        6
    zhmouV2  
       24 天前
    Deepseek 确实深有同感 cursor 上用 ds 的 api 问题很严重
    kennylam777
        7
    kennylam777  
       24 天前
    樓主在本地用量化跑吧? 有試過用 Continue 一類 VSCode 插件來用嗎?
    Donaldo
        8
    Donaldo  
       24 天前
    请问这个需要多少显存?
    MakHoCheung
        9
    MakHoCheung  
       24 天前
    kennylam777
        10
    kennylam777  
       24 天前
    @ShadowPower 哈哈剛發帖就看到配置了, 雙 3090 跑 8bit 量化感覺 VRAM 很充裕, 多出的 VRAM 就用來撐起 context length,

    我記得之前用 Qwen 2.5 32B 8bit 量化, 在雙 3090 設成 20K 也沒問題, 如今 Coder 版應該能盡用更大的 context window
    zhmouV2
        11
    zhmouV2  
       24 天前
    顺便看了下 ollama 上已经有各种量化版本了 https://ollama.com/library/qwen2.5-coder/tags
    14b q2_k 应该是我本地 8G 显存能跑的极限了 有没有兄弟说说效果
    ShadowPower
        12
    ShadowPower  
    OP
       24 天前   ❤️ 1
    @kennylam777 我还没试过用 Continue ,改天有空的时候试试看
    ShadowPower
        13
    ShadowPower  
    OP
       24 天前   ❤️ 1
    @Donaldo 8bit 的权重有 30.29 GB ,再加上 context 的大小,40GB 应该足够了
    yanyuechuixue
        14
    yanyuechuixue  
       24 天前
    看了一下,如果用 INT4 的模型,4090 没问题了。精度损失也很少。
    但问题是不可能将一块 4090 用在这上面。成本太高了,不考虑保护隐私的情况下,还不如订阅 ChatGPT.

    4060Ti 16G 的价格比较低,我买了一块,这个可以用来“全职”部署 LLM, 但目前即便是 INT4 也无法跑在 16G 上。

    也许 Windows 的共享显存会有用,但不知道速度会降低到多少。
    kennylam777
        15
    kennylam777  
       24 天前
    @spkingr 淘寶上的 P40 很便宜, 組兩張應該能跑 32B 8bit 量化, 舊 N 卡的量化選擇應該比 Apple Silicon 多, 也可以跑 fine-tuning 雖然比 3090 慢就是了
    ShadowPower
        16
    ShadowPower  
    OP
       24 天前
    @yanyuechuixue 共享显存不行,对 LLM 性能影响极大,因为 PCIe 带宽太小了。而且 4060Ti 还是 PCIe x8 接口……
    kennylam777
        17
    kennylam777  
       24 天前
    @yanyuechuixue Windows 的 shared VRAM 是能跑 LLM, 但超過了 dedicated VRAM 後性能會大幅下降, 得不償失
    kzfile
        18
    kzfile  
       24 天前
    多卡独显只跑这个,性能有些过剩了。
    大内存 mac 的话单人用应该还行
    liulicaixiao
        19
    liulicaixiao  
       24 天前
    copilot 和 cursor 都能白嫖,我觉得本地大模型真的没有必要,除非你是断网开发
    F1Justin
        20
    F1Justin  
       24 天前
    笔记本上用 ollama 跑了 Q4_K_M 量化的 2.5-coder ( 20GB ),推理速度感觉勉强可以接受
    eval count: 383 token(s)
    eval duration: 52.807s
    eval rate: 7.25 tokens/s
    yanyuechuixue
        21
    yanyuechuixue  
       24 天前
    @liulicaixiao cursor 怎么白嫖呀?
    yanyuechuixue
        22
    yanyuechuixue  
       24 天前
    @F1Justin 纯 CPU 么?
    kizunai
        23
    kizunai  
       24 天前   ❤️ 1
    利好那些因为保密等原因,写代码的时候不能上网查资料的程序员。
    现在只要在内网里面部署一个,开发效率大增
    liulicaixiao
        24
    liulicaixiao  
       24 天前
    @yanyuechuixue 直接注册就行,新用户免费 14 天,用完重新注册一个就好
    nikenidage1
        25
    nikenidage1  
       24 天前
    @liulicaixiao #19 copilot 怎么白嫖呀?
    so1n
        26
    so1n  
       24 天前
    32b 的话显卡和内存的要求也挺高的把...再加上自己的一些程序,基本要高配才能运行
    liulicaixiao
        27
    liulicaixiao  
       24 天前
    @nikenidage1 用 edu 邮箱去 github 找学生包,学生权限里就有 copilot
    spike0100
        28
    spike0100  
       24 天前
    24g 内存的 m4pro mbp 是不是只能跑 Qwen2.5 Coder 7b 。
    kennylam777
        29
    kennylam777  
       24 天前   ❤️ 1
    剛測了一下, 4090 跑 Qwen2.5 32B coder exl2 4.25b 量化, 速度約 32tokens/s, 配 VSCode Continue 能做不錯的"explain this code to me", Custom OpenAI API

    之後用真實的任務試試看, 至少現在知道 4bit 配 Continue 直接能用, 希望有時間能比較一下 8bit 量化的分別
    NouveauNom
        30
    NouveauNom  
       24 天前
    @zhmouV2 #6 我看了 cursor 当时没法用 Deepseek 的 api ,您是怎么设置的呢
    kennylam777
        31
    kennylam777  
       24 天前
    @spike0100 Apple Silicon + 24GB 應該能跑 GGUF q3 吧, q4 可能也可以但有點勉強
    yxhzhang185
        32
    yxhzhang185  
       24 天前
    mac studio 64G 能跑吗,效果怎么样
    ooTwToo
        33
    ooTwToo  
       24 天前
    32B 的模型有点大,我想问下 通过 ollama 下载,有镜像加速吗? 太费梯子了。
    Liftman
        34
    Liftman  
       24 天前
    很好。早上还探讨这个事情的。要不要把 qwen coder 来一套本地。。。
    xloger
        35
    xloger  
       24 天前
    请教一下,本地 LLM 有哪些比较好玩或者有用的用法嘛?
    比如如题所说,可以跑本地的 AI 代码提示,而且应该可以用更多的项目本身上下文,效果说不定比 Copilot 好。( Copilot 因为隐私设置,感觉它并没有怎么学我项目里的一些写法)。
    再有一个是 Obsidian 的一些 AI 插件,这样可以读我笔记的数据且也不用担心隐私问题。

    所以还有啥用法嘛~我最近也想搭一个试试
    youwang1997
        36
    youwang1997  
       24 天前
    Qwen2.5 真有东西的,开源模型妥妥第一梯队了。之前需要微调+用一个 8b 左右的模型,感觉 Qwen2.5 7b 比 llama3 8b 好用。

    不过对于 chatgpt 我个人觉得 4o 并不如 4 ,4o 参数数量应该不如 4
    hutoer
        37
    hutoer  
       24 天前
    2 张 2080ti 22G ,价格不高,有条件的可以试试
    Freakr
        38
    Freakr  
       24 天前
    @ooTwToo 32# ollama 不是能直连嘛
    F1Justin
        39
    F1Justin  
       24 天前
    @yanyuechuixue M2 Pro ,应该是有 Metal 加速的(?
    m1nm13
        40
    m1nm13  
       24 天前
    ...听说还行我就去试了一下...结果连问题都听不懂
    SoulSleep
        41
    SoulSleep  
       24 天前   ❤️ 1
    没必要啊,直接阿里云百练开一个 api 就好了...部署模型的时间+硬件成本,够跑 10 年了......

    QWen 2.5 Coder 刚出来就私有化部署了,云服务器成本 6k+/月,换成百练,一个月一两百块,用来做公司 gitlab 代码审查工具
    Donaldo
        42
    Donaldo  
       24 天前
    @m1nm13 #40 是不是选错模型了?
    kennylam777
        43
    kennylam777  
       24 天前
    @m1nm13 nat1 這種沒標準化過的 jargon 也太欺負 LLM 了吧? Local AI 應該用在 code review 一類 RAG 的用途會比較好。
    kennylam777
        44
    kennylam777  
       24 天前
    @SoulSleep 你這種 use case 是 Ops 選錯方案啦, 租用雲 GPU 不是都為了 fine-tuning 嗎? 用完趕快關掉的那種, 6K 月費夠你買私有硬件了吧。當初沒調研過用量嗎?
    beginor
        45
    beginor  
       24 天前   ❤️ 1
    @kennylam777 continue 的本地话提示分两种,

    一种是 tabAutocompleteModel 也就是写代码时的智能提示,这个本地模型推荐的是 starcoder2-3b.q8_0.gguf ,这个只有 3G 大小, 一般的显卡甚至 CPU 都可以跑,效果不错, 基本上每天都在用;

    另一种是 chat , 也就是问答, 资源富裕的话跑 gemma 2 27b 或者 qwen 2.5 coder 32b 都可以这个规模的模型应对代码问答肯定没问题了;, 如果不富裕的话,跑个 7b/8b 的做问答也不是不行,但是效果肯定不如 27b/32b 规模的。
    JayZXu
        46
    JayZXu  
       24 天前
    Qwen2.5 Coder 32B 确实挺好,能够配合 override 使用了
    m1nm13
        47
    m1nm13  
       23 天前
    @Donaldo #41 我的,我点进去直接就问了.我还以为 LZ 直接提供了对应模型的入口.
    andytao
        48
    andytao  
       23 天前
    Qwen2.5 Coder 32B 的代码质量已经很高了;

    袋鼠数据库工具已经搭载 Ollama 提供了 Qwen2.5 Coder 32B 的本地化支持,并提供了数据库专有配套,体验还不错;
    Donaldo
        49
    Donaldo  
       23 天前
    @kennylam777 #43 不会,测试了几个在线的和离线的,答的都不错。这种已经算是事实上的标准称呼了,没啥太难的。
    jianzhao123
        50
    jianzhao123  
       23 天前 via iPhone
    @F1Justin 哥们你啥配置啊,我这 3050 4GB 跑个 Qwen 7B Q4 量化的都卡的一批
    wnanbei
        51
    wnanbei  
       23 天前
    4060 8G 的笔记本跑了个 qwen2.5-coder:7b-instruct-q8_0 ,通过 continue 接入 vscode 用,感觉还可以
    kevan
        52
    kevan  
       23 天前
    试试 B 站的 1GB 版本。我觉得本地部署很好了。
    F1Justin
        53
    F1Justin  
       23 天前
    @jianzhao123 Apple 的 M2 Pro ,32G 统一内存()
    mintist
        54
    mintist  
       23 天前
    冲一个
    sampeng
        55
    sampeng  
       23 天前
    本地基本不太可能。只能做一些特别指向性的和 ai agent 配合的工作。开发,chat 这种通用性工作实在不划算,错误的提示影响编码节奏,也特别浪费心情。
    我就算你显卡也好 mac 也好。算你 1 万额外成本不过分吧。
    按 chatgpt 的 20 美金一个月算 1 万大洋约等于 7 年。其实一般 chatgpt 也用不上。。编码直接 github copilot 用已经无敌了。同样 1 万额外的支出能得到 10 多年的使用效果。我特别不理解本地跑 coder 的所谓效果为什么能接受。简直是天壤之别,尤其是现在 copilot 支持了 claude 。。我通常都是花很长时间描述我的输入和输出要求。本地?想都别想。。。自动提示本地那个 token 生成时间黄花菜都凉了。
    kennylam777
        56
    kennylam777  
       23 天前
    @sampeng 有道理, 即使工作上要 deploy LLM 也應該優先選擇 ChatGPT/Claude API 按量付費。

    但對於本來就有 4090 和 3090 用來玩遊戲的我, Local AI 就是用來榨出現有硬件價值的玩法。

    我相信 Apple Silicon 的玩法也是一樣的, 本來就會買一台機來用, 看到免費的 LLM 拿來用起碼不必多訂閱一個服務。
    Yadomin
        57
    Yadomin  
       23 天前
    sampeng
        58
    sampeng  
       23 天前 via iPhone
    @kennylam777 local ai 不是完全不行,完成特定的任务是 ok 的。幻觉问题调试过程中很好解决。比如把文档总结一下,做一下自动归类,智能分析工作这类还是很 OK 的。只不过 code 啊,chat 啊这类需要及时响应,最大限度的不要出错,copilot 或者 chatgpt o1 才是最终解。何必自己为难自己。
    SantinoSong
        59
    SantinoSong  
       23 天前
    @yanyuechuixue #14 魔改的 22g 3080 呢
    jianzhao123
        60
    jianzhao123  
       23 天前 via iPhone
    @F1Justin 那没事了
    trungdieu031
        61
    trungdieu031  
       23 天前
    配 64G 内存的主机,做下量化,完全可以跑 32B 的模型了。如果不特别追求速度的话也不用非得上两块 GPU~
    WispZhan
        62
    WispZhan  
       23 天前
    M3 MAX 128G 或者 M4 Ultra 128G 应该能勉强跑起来吧,只是 token 输出有点慢。
    GuryYu
        63
    GuryYu  
       23 天前
    M3 max, 运行 32B 模型测试,感觉已经可以基本满足日常使用了

    32B Q4:处理速度 13.07 tok/sec 占用统一内存 21G
    32B Q6:处理速度 8.58 tok/sec 占用统一内存 29G
    32B Q8:处理速度 9.76 tok/sec 占用统一内存 40G ,( MLX )

    另外也测试了 14B 模型
    14B Q4:处理速度 22.83 tok/sec 占用统一内存 11G

    orangeD
        64
    orangeD  
       23 天前   ❤️ 1
    @spike0100 那手头的机器刚测了一下,Qwen2.5 32b 模型 M4Pro 高配+48G 内存上能达到 10.55tokens/s ,M1Pro 高配+32G 内存 :6.83 tokens/s
    yinmin
        65
    yinmin  
       23 天前
    问:你使用哪个 AI 模型?是哪个公司开发的?

    回答的结果有点出乎意料,又有点意料之中。2024 年末训练出来的 AI 还出这种情况,汗~
    emberzhang
        66
    emberzhang  
       23 天前
    @orangeD 我刚才拿 m2 max 跑 qwen2.5:32b 是 11.04 toks ,这个 toks 没法用代码补完的,根本等不到出字。chat 的话倒是基本没问题

    @yanyuechuixue 显存爆了之后直接扑街,刚才拿 4070tis+8845hs+5600mhz 内存,qwen2.5:32b 只有 6.00 toks
    chachi
        67
    chachi  
       23 天前
    m4max
    qwen2.5 coder 32B Q8 MLX
    12.94 tok/sec
    234ygg
        68
    234ygg  
       23 天前
    别搞笑了,连 3.5 都远不如,还和 4o 比。。。只能说你写的代码毫无价值
    csys
        69
    csys  
       23 天前
    这个确实很不错,主要是 32B 刚好碰到了本地部署的门槛了
    Ayahuasec
        70
    Ayahuasec  
       23 天前
    手头在用 2080ti 22g 跑,32b q4_k_s 性能大概是 prompt_token/s: 475.37, response_token/s: 23.82
    qwen2.5-coder-32b 的输出感觉和 qwen2.5-32b 差不太多,之前耍 qwen2.5 已经觉得有很高的可用性了
    ShadowPower
        71
    ShadowPower  
    OP
       23 天前
    @234ygg 3.5 没有你想象中那么强,目前 7B 参数量就有 3.5 的能力。3.5 只能写一些模板代码,或者提供代码给它做一些调整,写不出有点深度的东西。
    只是在那个从 0 到 1 的时期显得非常惊艳罢了。
    ShadowPower
        72
    ShadowPower  
    OP
       23 天前
    @WispZhan M3 MAX 128G 可以随便跑,估计还挺快的。M4 Ultra 还没发布呢……
    leo72638
        73
    leo72638  
       23 天前
    请问怎么确定自己的硬件适合什么模型
    cooltechbs
        74
    cooltechbs  
       23 天前 via Android   ❤️ 1
    原来 DeepSeek 本身就有循环输出一个单词的问题啊。我还以为是我 finetune 搞坏了...
    mayli
        75
    mayli  
       23 天前
    @GuryYu 你这是啥工具?
    fox0001
        76
    fox0001  
       23 天前 via Android
    本地化部署的话,lm studio 给我打开了新世界
    dimondai
        77
    dimondai  
       23 天前
    本地上 MAC Mini M4 能跑了吧?
    fox0001
        78
    fox0001  
       23 天前 via Android   ❤️ 1
    @leo72638 #73 我用过 LM Studio ,直接从 huggingface 下载模型,并且会标识那些能在本机跑
    GuryYu
        79
    GuryYu  
       23 天前
    @mayli #75 LM Studio
    Cloud9527
        80
    Cloud9527  
       23 天前
    @234ygg 3.5 已经有点老了好吧
    nutting
        81
    nutting  
       23 天前
    24G 显存的 p40 显卡能玩吗
    yanyuechuixue
        82
    yanyuechuixue  
       23 天前
    @kennylam777
    能给一个 coder 的链接不?
    我只找到了 instruct 的链接
    Loocor
        83
    Loocor  
       23 天前
    哈哈,今天我也有这样的感概,不过不实用 32b 而是 7b ,因为我手上的机器是 m3 16Gb Macbook Air...
    实际跑下来的速度可以接受,12.69 tok/sec
    而电脑 cpu/mem 占用没超过 50%
    所以 m4 / m4 pro 就可以期待了
    yanyuechuixue
        84
    yanyuechuixue  
       23 天前
    @yanyuechuixue ok 找到了,谢谢!
    zdt3476
        85
    zdt3476  
       23 天前
    @orangeD 32G 内存也能跑啊。那我用我的 M2 Max 试试
    beginor
        86
    beginor  
       23 天前
    看来 M1 Max 还是很能打的嘛, 本地用 llama.cpp 跑 qwen2.5-coder-32b-instruct-q8_0.gguf 结果如下:

    ```
    prompt eval time = 2354.87 ms / 117 tokens ( 20.13 ms per token, 49.68 tokens per second)
    eval time = 71813.88 ms / 521 tokens ( 137.84 ms per token, 7.25 tokens per second)
    total time = 74168.75 ms / 638 tokens
    srv update_slots: all slots are idle
    request: POST /chat/completions 127.0.0.1 200
    ```

    自己用的话还是可以的,继续等 M5 、M6 、M7 ...
    beginor
        87
    beginor  
       23 天前
    @emberzhang 补全代码用 starcoder2-3b.q8_0.gguf 就好,超过 7b 的都是浪费。chat 可以再跑一个大一点儿的
    glcolof
        88
    glcolof  
       23 天前
    32B 使用 4bit 量化,可以在 4090 上比较流畅的跑了。但是上下文长度可能跑不到 128K ,我还没试过。
    其实 14B 的模型也很有可用性了。
    kennylam777
        89
    kennylam777  
       23 天前
    @yanyuechuixue 你是問 exl2 的量化吧? 我用這個, bartowski 家的 exl2 量化很多。
    https://huggingface.co/bartowski/Qwen2.5-Coder-32B-Instruct-exl2

    這種 model 應該大家都用的 Instruct 版, Base model 沒 SFT 過應該不好用。

    @glcolof 我在 Windows 跑 4.25b 量化, 20K 是沒問題的, 節省其他開銷的話可能 30K 也行, 但我也沒調過 YARN 就是了。
    plutomiao
        90
    plutomiao  
       23 天前
    @hutoer 魔改的哪里买靠谱啊。。
    9
        91
    9  
       23 天前
    本地大模型纯折腾,现在网上这么多好用的
    WispZhan
        92
    WispZhan  
       23 天前
    @ShadowPower M4 Ultra 快了,不是这个月底,就是下个月。和 Studio 一起吧
    WispZhan
        93
    WispZhan  
       23 天前
    @WispZhan 搞错了,应该没那么快
    Donaldo
        94
    Donaldo  
       23 天前
    @9 #91 跑个翻译的还不错。
    yanyuechuixue
        95
    yanyuechuixue  
       23 天前
    @kennylam777 不好意思,我是个新手,能否请教您一下,不同的量化有什么不同呀?

    例如 exl2 量化,W4A16 量化 , GPTQ 量化,他们的性能会有比较大的不同么?

    我现在简单起见,直接用了 ollama 给出的 Int4 ,想去挑一个好的
    clino
        96
    clino  
       23 天前
    @zhmouV2 我在 cursor 上用 deepseek 感觉还挺好,你说的是哪方面问题?
    是不是我很多时候是在用 ctrl+k 做局部代码迭代,所以比较没有碰到你们说的这些问题。
    kennylam777
        97
    kennylam777  
       21 天前
    @yanyuechuixue 不同量化方案各有千秋, 主要分別是硬件支援, 表現也各有不同。

    例如 exl2 是我用過最快的方案, 而且量化選擇比較多. 4bit 以外還有 5/5.5/6bit 等等, 對我來說比較容易選一個剛好塞進 4090 的配搭。問題是, 快是很快, 但只限 CUDA only 及 RTX30x0 以上的 GPU, 而且支援軟件不足, 也不能配 PEFT, 所以只能用來跑推理。

    GPTQ 是只有 4bit 和 8bit 兩個選擇, VRAM 利用率不及 exl2, 速度也慢, 但 GPTQ 的好處是支援軟件比較多, 而且能直接用 PEFT 做 LoRA 微調。

    GGUF 沒用過, 但我知道 Apple Silicon 的用家都是靠它的量化。

    其實還有 bitsandbytes 的量化, 直接載入原 model 時的 4bit/8bit 量化, 推理效果不及 exl2/GPTQ/GGUF 好, 但要跑 qLoRA 微調的話, bitsandbytes 還是最通用的方案。
    yanyuechuixue
        98
    yanyuechuixue  
       20 天前
    @kennylam777 非常感谢!

    我还得多加学习。
    那我用 exl2 就好了,我也正是有一个 4090 和 4060ti , 也只是用来做对话,足够了。

    感谢大哥!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2897 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 08:22 · PVG 16:22 · LAX 00:22 · JFK 03:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.