普通应用不建议自己部署AI

最近一直想自己部署下本地AI,主要原因是想搭建自己的知识库,然后让AI基于知识库来帮我回答问题,或写文章。比如我想搭建一个包含500本书,每本书平均400页,涵盖经济学和社会学书籍的一个知识库,这是目前开放平台还不能满足的。

本以为本地部署很容易,但学习了几天相关知识后,我最终选择了放弃本地部署,而是使用在线应用。

普通应用不建议自己部署AI

 

一、向量化才是关键

绝大多数人可能和我一样,错认为本地AI平台最主要的是推理模型(或者叫对话模型、chat模型)的搭建,比如deepseek R1,但本地AI最重要的却是向量化模型。在AI回答问题中,推理模型和用户交互时需要搜索知识库,然后对知识库内容进行相关性排序,再综合相关性较高的内容反馈给用户。在这个过程中如果知识库内容向量化过程不理想,就会导致推理模型检索的相关性不准确,从而导致回答不对题,或错误、割裂等。

知识库的向量化其实应该包括向量化模型、重排序模型、和数据库管理三部分,而绝大多数人只关注了向量化模型。向量化质量差,是导致自建应用体验差的主要原因。

 

二、向量化模型和重排序模型的选择误区

在本地搭建向量化模型,绝大多数人可能会选择bge 4B模型,因为这个推荐的人最多,但经过学习,我发现阿里的Qwen 3-Embedding-8B模型会更好,而对应的重排序模型应该选阿里的Qwen 3-Reranker-4B模型。向量化模型从4B升级到8B,对知识库的向量化提升较大,而重排序模型的升级则对知识库的提升较小,因此在现存有限的情况下优先部署较大的向量化模型;但重排序模型也是必备的。

自己搭建的8B向量化模型+4B重排序模型,只能说够用,而说不上好用。因为在线模型在向量化时通常在长文本语义压缩和跨模态语义对齐上优势明显,同时在线模型的数据库管理也更科学。比如自建模型可能会对上传资料的图片式表格不能准确识别,或者识别后保存为文字,但在线模型基本上都能准确识别表格,并保存为表格,这在检索时能极大提高准确度。

但基于个人硬件的限制,基本上无法在本地搭建出和在线服务同样强大的向量化模型(其实在线提供的是一组服务,而非简单的一个模型)。

 

三、本地推理模型性能很有限

囿于硬件限制,本地搭建的推理模型14B已经是较高的水平了,但14B模型一次只能处理大概8000汉字,包含输入和输出,这远远不能满足长文本输出需求。如果将文本输出定位于2万字以上,那么就需要在本地搭建70B的模型,这对于个人来说基本上是不可能的。

但对于在线模型来说,一次输出2万字则比较轻松,比如我昨天测试过程中就发现豆包可以生成4万字以上的文章,且质量还不错。昨天的测试文章为《论稳定币对全球货币格局重塑及人民币全球化的影响》,我只提了问题,整理了大纲,然后由豆包输出了全文;当然最前面的摘要是我手动写的。无论是输出长度,文章内容的准确性,还是各部分的内在逻辑,豆包都表现的比较优秀。

顺便说下我测试过的其他模型情况。

腾讯混元,只输出了一个大纲,目测1000字左右,但告诉我那是1.2万字。

deepseek R1,输出了1万字左右,但内容明显的是块,而不是一个整体文章;且各部分过渡很不自然。

阿里通义Qwen Max latest(号称中文推理最好的模型,尤其是专业文本输出中),输出质量和deepseek差不多,比混元好,但不如豆包。

 

四、模型的调优和卸载

模型部署好后要对模型进行调优,比如向量化模型的分块大小,重叠大小,匹配度调整等;对推理模型也要调整,比如上下文大小,温度调整等。这些能改变模型的准确度,但却不是模型调优最重要的,因为最重要的是考虑切片、分段、KV缓存、模型卸载等,主要是为了防止爆显存。自己部署了推理模型、向量化模型、还有重排序模型,在实际使用中推理模型一个都有爆显存的可能性,如果两三个模型一起用,那么爆显存基本上就成了必然的事,所以就要考虑模型卸载问题。

所谓的模型卸载并不是真的把模型给卸载掉,而是将模型关闭,释放掉显存占用。这个卸载和上面的调优最佳方案都应该是通过python自动化管理,但这对配置环境来说有一定难度,很多人可能需要学习,或被劝退,比如我。

 

五、量化模型的升级与知识库的更新

环境配置好了,可以用起来,但这只是开始。因为模型更新的都比较快,基本上半年左右就会有一个大版本更新,我们自建的AI的最主要目的就是搭建本地知识库,但向量化模型大版本更新后大概率需要我们重新配置模型,并重新生成知识库,这个工作量也很大。为了方便,自己搭建了本地知识库,但需要半年重新生成一次,且生成后原来的所有提问所训练的推理习惯可能都会丢失,在这种情况下,我个人认为自建模型的必要性就小了很多。

 

六、本地部署建议

尽管本地部署有很多不足,但相信还是有很多人,有各种不同的原因,让本地化部署成为刚需。在这种情况下,建于知识库和长文本输出应用,我对本地化部署的建议如下。

16G以上本地现存时:

采用Cherry Studio本地软件,推理模型使用阿里云的Qwen Max latest API调用,向量化采用阿里云Qwen 3-Embedding-8B模型、重排序采用阿里云Qwen 3-Reranker-4B模型;本地模型都采用Ollama部署。

如果推理模型也需要本地部署,那么我推荐Qwen3-14B或deepseek R1 14B。

12G以下本地现存时:

采用Cherry Studio本地软件,推理模型Qwen3-8B、向量化模型Qwen 3-Embedding-8B\4B模型、重排序模型Qwen 3-Reranker-4B模型。

其实,我直观觉得,如果推理模型小于32B,那本地部署似乎都没有意义,况且现在API调用的费用已经越来越低。

同时做好现存管理,即推理、向量化、重排序三个模型不同时工作,确保一个工作完释放后再启动下一个,防止爆显存。deepseek给的建议是, LLM 上下文调整ctx-size 设为 4096(默认 8192 会 OOM)。同时deepseek也建议设置混合架构,即在线推理模型和本地推理模型同时使用,自动判断输出的大小,如果超过本地模型的阈值(比如大于4K),那么就让在线推理模型接手。

 

小结

目前很多在线AI都号称支持128K输出,这已经能够完成2万字以上文章输出,远比本地部署14B模型要强大很多;而豆包号称已经支持256K输出,就是4万多汉字。相信随着时间的推移,会有越来越多的模型支持长文本输出,而输出的质量会越来越好,API调用成本越来越低,这就让本地部署的必要性变得越来越低。

本站文章授权后方可转载,请勿侵权! 如喜欢可点击分享按钮分享。

 
    • 紫慕
      紫慕 5

      目的是什么呢?以前做生信分析,幻想着用自己的服务器来跑数据,后来一看商业化的东西早就很成熟了。自己搞服务器得大几万,公司几千块钱还包售后。

        • 水拍石
          水拍石

          @ 紫慕 自己搭建知识库可以按需定制,就和自己按爱好读书学习一样,但实现成本太高,所以还是拥有共有模型这座图书馆比较好。

        • ACEVS
          ACEVS 6

          看到这个感觉也不错。不过我确实用不到。哈哈。
          五台设备的集群(两台M4 Pro + 三台M4):

          • 小模型(1B参数,Llama 3.21B):约 74 tokens/秒,与单机相近,集群未显著提升性能。

          • 中型模型(Quen 2.5 Coder 7B):约 12-16 tokens/秒。

          • 大型模型(32B):约 16 tokens/秒,运行变慢但能支持更大模型。

            • 水拍石
              水拍石

              @ ACEVS 你这个集群也太奢侈了,有着投入还不如直接上5090显卡,M4的共享现存是优势,但它的AI算力太弱了。

            • 影不再
              影不再 2

              个人使用的话,确实自己部署不如用大厂的。
              并且我觉得有这几个问题:
              1.有机器,并且机器性能不错
              2.挑选模型,https://huggingface.co/ 这个网站可以选
              3.训练模型(投喂自己的数据)

                • 水拍石
                  水拍石

                  @ 影不再 自己机器再好能到32B模型就顶天了,和大厂的还是没有办法比。训练模型自己那点素材,和大厂的专用模型的知识库比,还是太小了。所以没有特别个性的需求,我觉得还是用共用模型比较方便,省的折腾,效果还好,

              匿名

              发表评论

              匿名网友