想用手头的硬件最低成本尝试下本地 LLM 推理,请教一下方案 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
avalox
V2EX    Local LLM

想用手头的硬件最低成本尝试下本地 LLM 推理,请教一下方案

  •  
  •   avalox 2024-03-29 17:38:11 +08:00 3389 次点击
    这是一个创建于 627 天前的主题,其中的信息可能已经有所发展或是发生改变。
    非 AI 专业,为了不掉队跑着玩的,所以目的是利用手头硬件最低成本折腾一下

    手上有两台 PC ,配置如下:
    1. 5600x + 华硕 b550M 重炮手 + 华硕 3070 dual
    2. q0pv(13900T ES) + 精粤 b760i + 丐图师双风扇 4060ti 16G
    第一台 21 年组来打上网游戏的,第二台原本是组来折腾玩异地组网+虚拟化+串流+SD 跑图的二奶机。D4 内存之前便宜的时候屯了不少,有需要就可以插满
    现在的问题是,尝试跑大一点的 LLM 显存不够,速度稍慢一点倒无所谓。了解到这玩意可以多卡推理,然后 PC1 的重炮手刚好有两个 x16 槽。另查了一下苏妈也很慷慨,B 系板子支持拆通道插双卡。刚好手上这两张卡 PC1 的机箱应该装得下,3070 是 2.75 槽,4060ti 是 2 槽

    那这样双卡合计 24G 显存跑更大一点的 LLM 的推理似乎可行?好像多卡推理是不需要 nvlink 的。目前主要是不清楚不对称的显存跑起来会不会有问题。如果不行,会考虑 3070 扩 16G ,毕竟两张卡性能接近,应该不存在性能拖累的情况

    另外纯 CPU 跑个量化的 7B 模型是否可行? q0pv 毕竟这么多核。尝试了下推理回复需要几分钟,体感基本不可用,不清楚是不可行还是设置有问题。看 github 上有人能跑来着,阿里云也有志强可以运行 LLM 速度达到 5 token/s 的广告。如果家用 CPU 完全不可行就不折腾了
    15 条回复    2024-03-31 02:38:17 +08:00
    kwater
        1
    kwater  
       2024-03-29 17:40:07 +08:00   1
    看了一堆以为你要训练,

    最后一段看明白是想要个本地部署对话。

    lmstudio
    ollama

    都蛮好,后者 gpu 支持更好 amd @windows 也可以
    全部跨平台兼容
    dbg
        2
    dbg  
       2024-03-29 17:42:22 +08:00 via Android
    7B 模型能力实在有限。最起码要 14B 的模型,才能做一些翻译类的基础工作。
    Vanderick
        3
    Vanderick  
       2024-03-29 17:42:30 +08:00
    直接 ollama
    lichdkimba
        4
    lichdkimba  
       2024-03-29 17:53:44 +08:00
    @dbg 14B 的话,最差也要用个啥显卡呢
    avalox
        5
    avalox  
    OP
       2024-03-29 17:56:24 +08:00
    @kwater 感谢回复。等哪天想尝试训练就不指望这两张卡了,会老实去租服务器的
    dbg
        6
    dbg  
       2024-03-29 18:02:06 +08:00 via Android
    @lichdkimba 14B 模型,至少需要 16G 显存的显卡。你可以看看 Ollama 的文档,有这方面的介绍的。
    mkroen
        7
    mkroen  
       2024-03-29 18:33:10 +08:00
    可以试试 Qwen1.5-7B-Chat 阿里的千问模型,P40 24g 显存占用 15 个 g ,效果还能接受,也比较快。16g 显存应该够用了吧,不够再试试量化
    R4rvZ6agNVWr56V0
        8
    R4rvZ6agNVWr56V0  
       2024-03-29 18:43:14 +08:00
    绝大多数模型 7b 就是个废物,推理能力明显不行,用这道题测: 100mbps 相当于多少 MB/s ?
    答案有惊喜,哈哈哈
    R4rvZ6agNVWr56V0
        9
    R4rvZ6agNVWr56V0  
       2024-03-29 18:44:35 +08:00
    所以,比 3090 弱的单卡,就不要玩了,没啥意义
    rus4db
        10
    rus4db  
       2024-03-29 18:58:32 +08:00   1
    1 )参数量是主要矛盾,越多越好。
    2 )不必担心量化,量化掉点有限。
    3 )实用模型,参数量不可低于 13~14B ,以 72B 量级为佳。
    4 )显存是主要矛盾,越多越好。
    5 ) 2080ti 魔改 22GiB 显存,性价比较高。
    6 )多卡 AI 服务器平台,性价比较高,但要考虑环境和电费开销问题。
    kwater
        11
    kwater  
       2024-03-29 22:49:10 +08:00
    @GeekGao
    gemma 2b

    100 Mbps 相当于 **125 MB/s**。
    dyllen
        12
    dyllen  
       2024-03-30 11:31:33 +08:00
    @GeekGao 我用百度的 chat 试了下,还不错,挺准的,还有解释:

    ```
    我们要找出 100mbps 对应的下载速度是多少 MB/s 。
    首先,我们需要了解 Mbps 和 MB/s 之间的转换关系。

    Mbps (兆比特每秒)和 MB/s (兆字节每秒)之间的关系可以用以下的数学公式表示:
    1 MB/s = 8 Mbps
    这个公式告诉我们怎样把 Mbps 转化成 MB/s 。

    因此,要将 100 Mbps 转化为 MB/s ,我们只需将 100 除以 8 。
    计算结果为:下载速度是 12.5 MB/s 。
    所以,100mbps 对应的下载速度是 12.5 MB/s 。
    ```
    R4rvZ6agNVWr56V0
        13
    R4rvZ6agNVWr56V0  
       2024-03-30 13:38:55 +08:00
    @kwater 你反复试试? 我这里测 Gemma 7B 返回的结果也不对
    kwater
        14
    kwater  
       2024-03-31 00:23:44 +08:00
    @GeekGao

    看来默认的 cli 不是很好用,ollama api 才工作正常,
    即便去掉 temperature 、seed ,也是有正确结论的。

    curl -v http://localhost:11434/api/generate -d "{ \"model\": \"gemma:7b\", \"prompt\": \"100mbps 相当于多少 MB/s ?\", \"options\": { \"seed\": -1, \"temperature\": 1 },\"stream\": false }"


    100mbps 等于 12.5 MB/s 。
    100mbps 等于 100000 比特每秒,也就是 12.5 MB/s 。
    R4rvZ6agNVWr56V0
        15
    R4rvZ6agNVWr56V0  
       2024-03-31 02:38:17 +08:00
    @kwater 我知道什么原因了: 我用的是 google/gemma-7b-it (也就是 gemma:7b-instruct ) ,你用的是 google/gemma-7b ( Base model )吧
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     907 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 22:11 PVG 06:11 LAX 14:11 JFK 17:11
    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