大家好,
我们已经使用LLama 2 13b(int4量化)的变体开发了我们的LLM,并加入了一些适配器。
这对于我们用户的用例来说非常完美。
现在他需要在内部使用,我们一直在考虑运行所需的计算要求。
当我查看时,随着用户数量的增加,KV缓存和激活内存也会成比例增加。
所以如果一个用户需要16GB,那么20个并发用户就需要接近16*20GB。
这非常昂贵,我不确定这是否是最优的。
我在寻找一种更便宜、更聪明的方法来实现这一点。
也许可以卸载到好的CPU上,不使用KV缓存,考虑激活内存的优化。
有什么想法吗?
讨论总结
本次讨论主要聚焦于如何在内部环境中为20个用户高效部署一个基于LLama 2 13b模型的LLM系统。发帖者提出了关于计算需求的问题,特别是随着用户数量的增加,KV缓存和激活内存的需求也会成比例增加,导致成本上升。讨论中涉及了多种解决方案,包括使用vLLM、优化内存管理、考虑云服务部署以及硬件选择等。评论者们提出了不同的观点和建议,如使用vLLM的连续批处理功能、考虑云服务的成本效益、以及通过量化KV缓存来优化内存使用等。整体讨论氛围积极,旨在寻找更经济高效的解决方案。
主要观点
- 👍 使用vLLM的连续批处理功能
- 支持理由:vLLM可以显著减少内存需求,提高处理效率。
- 反对声音:连续批处理可能会增加内存需求,使得扩展到20用户变得困难。
- 🔥 考虑云服务部署
- 正方观点:云服务如runpod或Azure、GCP等更安全且成本效益高。
- 反方观点:自建服务器在数据极其敏感或负载完全可预测的情况下才有意义。
- 💡 优化内存管理
- 通过量化KV缓存和优化激活内存来减少内存需求。
- 👀 硬件选择与成本优化
- 使用4x3090s和NVLink可以降低成本,同时保持高性能。
- 🌟 分布式计算与并发处理
- 使用分布式计算设置可以更好地利用资源,提高并发处理能力。
金句与有趣评论
- “😂 Have you tried vLLM (https://github.com/vllm-project/vllm)? It has continuous batching feature which is what you’re looking for.”
- 亮点:提出了一个具体的解决方案,即使用vLLM来优化批处理。
- “🤔 You don’t need your setup to be able to handle the worst case scenario of every user sending the largest prompt they might possibly send simultaneously.”
- 亮点:强调了系统设计的实际性和合理性,不需要过度设计。
- “👀 I run runpod serverless with 1x user 70b with 67$ month.10-15 token/s. Very fast”
- 亮点:分享了实际的运行经验和成本效益,提供了具体的参考。
情感分析
讨论的总体情感倾向是积极的,大多数评论者都在寻求更经济高效的解决方案,并提供了具体的建议和技术支持。主要分歧点在于是否使用云服务还是自建服务器,以及如何优化内存管理和硬件选择。这些分歧主要源于对成本、安全性和性能的不同考量。
趋势与预测
- 新兴话题:使用vLLM和分布式计算来优化LLM的部署和运行。
- 潜在影响:这些优化措施可能会显著降低成本,提高系统的可扩展性和性能,从而推动LLM在更多领域的应用。
详细内容:
标题:关于为 20 个用户搭建内部计算设置的热门讨论
在 Reddit 上,有一个帖子引起了广泛关注,标题为“Getting a 4xRTX4090 for 20 user in-house setup”。帖子的作者表示,他们使用了变种的 LLama 2 13b(int4 量化)及一些适配器开发了 LLM,现在需要为 20 个用户搭建内部计算设置,但发现所需的计算资源成本高昂,正在寻求更经济高效的解决方案。此贴获得了众多回复和讨论,点赞数和评论数众多。
讨论的焦点主要集中在如何优化资源配置以满足需求。有人推荐使用 vLLM,称其具有连续批处理功能;也有人提到可以将任务部署到云 GPU 系统上进行负载测试。还有观点认为,不一定需要 16x20 的内存配置,因为用户不太可能同时发送请求。
例如,有用户分享道:“我运行 120 个并行请求到一个自定义的 7B 模型在单个 A100 上,它使用 78Gb 的 VRAM。” 但也有人质疑 vLLM 有时会显示错误的令牌。
对于是否需要如此多的 GPU 来支持这个相对较小的模型,大家观点不一。有人认为单张 4090 就能处理较大的工作量,有人则建议使用分布式计算设置或租用云服务。
一位用户指出:“如果每过一段时间,一群用户碰巧同时发送大型提示,其中一些用户可能需要等待更长时间。您真正需要的是永远不要‘落后’。”
在这场讨论中,大家对于优化方案各抒己见,但也存在一定的共识,即需要根据实际情况进行测试和调整,以找到最适合的解决方案。
总的来说,Reddit 上的这场讨论为解决这一问题提供了丰富的思路和多样的建议,也反映了在处理复杂计算需求时的不同思考角度。
感谢您的耐心阅读!来选个表情,或者留个评论吧!