使用 llama3:70b 本地化部署, 100 人左右的并发,大概需要多少块 4090 才能满足?

315 天前
leeum  leeum

有没有实操过本地化部署开源 llm 的老哥?这个需要大概多少的算力?

10862 次点击
所在节点   Local LLM  Local LLM
52 条回复
proxyai
proxyai
315 天前
@t41372 groq 还没有收费吧
lovestudykid
lovestudykid
315 天前
@lizhisty #17 峰值 100 人的话,平均人数可能远远不到啊,其他硬件也就算了,显卡这么贵,闲置一分钟都是钱。
winglight2016
winglight2016
315 天前
@lizhisty 没试过 70b 呀,支持是一回事儿,多久能响应是另一回事儿。云上开一个 GPU 服务器试试不就知道了?

我用 ollama 在 cpu 上跑 8b ,也不是不能用,至少比 llama2 快多了
nathandoge
nathandoge
315 天前
显存太低,别折腾了,上 h100
fionasit007
fionasit007
315 天前
100 并发对于本地化部署的 llm 是相当大的压力了,先不说计算 token 之类的,怎么也得几十张才能满足吧,成本太高了
lizhisty
lizhisty
315 天前
@fionasit007 为啥 100 并发就压力大,一个问题也是计算,100 个也是计算啊
chanChristin
chanChristin
315 天前
@lizhisty #18 下班之后的时间没人用。
jfcherng
jfcherng
315 天前
@lizhisty #26 ... 按你這麼說,那無限並發也沒什麼壓力
locoz
locoz
315 天前
@lizhisty #22 每个计算都是独立的,又不是一个算好了其他 99 个就都好了。假设处理一个请求需要一张显卡满载运算,那一百个并发请求就得要一百张显卡,压力当然大…
zjhzxhz
zjhzxhz
315 天前
我觉得 4090 挺好,速度也不错。让上 A100 的给大家看一下成本再说话。

fnd
fnd
315 天前
上面说的都太业余了,说点实际的。

首先,100 个人用≠100 并发,要结合你的业务场景去评估实际需要支持多少并发。比如:每个人是时时刻刻一直用?还是 5%的时间段在用?重合度多少?峰值可能是多少?
其次,现在并发数的成本很高,并不是一定要支持峰值的并发。当前业内通用的做法是只支持特定的并发,然后做一个队列进行并发控制。如果并发满了一定数量内的先队列等待,等待队列也满了就提示并发数超限稍后再试之类的。
然后,4090 就先不说并发了,70b 的模型都不一定能跑起来,可能得上 A100 。

实际并发数的计算得看单卡每秒 tokens ,然后根据业务场景预估单次请求可能的 tokens 大小,计算得到单卡并发。
robbaa
robbaa
315 天前
给你个参考:
环境:双 3090 + nvlink + docker
命令:ollama run llama3:70b --verbose
刚刚好可以塞下。

ollama-1 | ggml_cuda_init: found 2 CUDA devices:
ollama-1 | Device 0: NVIDIA GeForce RTX 3090, compute capability 8.6, VMM: yes
ollama-1 | Device 1: NVIDIA GeForce RTX 3090, compute capability 8.6, VMM: yes
ollama-1 | llm_load_tensors: ggml ctx size = 0.83 MiB
ollama-1 | llm_load_tensors: offloading 80 repeating layers to GPU
ollama-1 | llm_load_tensors: offloading non-repeating layers to GPU
ollama-1 | llm_load_tensors: offloaded 81/81 layers to GPU
ollama-1 | llm_load_tensors: CPU buffer size = 563.62 MiB
ollama-1 | llm_load_tensors: CUDA0 buffer size = 18821.56 MiB
ollama-1 | llm_load_tensors: CUDA1 buffer size = 18725.42 MiB


测试三次结果:

total duration: 25.820168178s
load duration: 1.436783ms
prompt eval count: 14 token(s)
prompt eval duration: 483.796ms
prompt eval rate: 28.94 tokens/s
eval count: 448 token(s)
eval duration: 25.203697s
eval rate: 17.78 tokens/s


total duration: 30.486672187s
load duration: 1.454596ms
prompt eval count: 479 token(s)
prompt eval duration: 2.025687s
prompt eval rate: 236.46 tokens/s
eval count: 496 token(s)
eval duration: 28.322837s
eval rate: 17.51 tokens/s


total duration: 21.176605423s
load duration: 2.629646ms
prompt eval count: 529 token(s)
prompt eval duration: 2.325535s
prompt eval rate: 227.47 tokens/s
eval count: 324 token(s)
eval duration: 18.622355s
eval rate: 17.40 tokens/s
ispinfx
315 天前
@robbaa QPS 呢
thorneLiu
315 天前
多卡 A30
proxychains
314 天前
@lizhisty #19 晚上没人用, 但仍要开机. 期间的资源就是闲置浪费了.
TerranceL
314 天前
推荐一下我司产品,目前性价比可能比较高,由服务器也有小型工作站解决方案 aW5mb0BoZXhhZmxha2UuYWk=
whusnoopy
314 天前
在 m3max 64G 的 MacBook Pro 上跑着玩过,速度有点慢,但也还能用,大概吃掉 40G+ 内存
llama3:8b 的模型跑起来就挺快的
cuteguy
314 天前
@whusnoopy 这样是 ultra 192G 是不是能快不少?
whusnoopy
314 天前
@cuteguy 没在 M2 Ultra 192G 上试过,不过可能差异不会那么大?因为

1. 内存大小只要能把模型加载上,额外的内存容量对处理速度并没有啥帮助
2. 内存速度上,M3 Max 满血版的内存带宽是 400GB/s ,残血版是 300GB/s ,64G 的 M3 Max 已经是满血版了
3. M3 还没出 Ultra ,看评测,M3 Max 的单核比 M2 Ultra 还略强一点,多核是要弱,但可能没差那么多?
mscsky
314 天前
上面没人说量化?用 q4 量化非常快

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/1036641

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX