外观
22.基于LM Studio私有化部署Llama3和API调用
来源:语雀原文 | 整理日期:2026-09-22
分享内容
- 使用 LM Studio 私有化部署Llama3模型
- 基于AnythingLLM实现Llama3 API调用
- AnythingLLM整合Llama3构建知识库应用
业务背景
假设公司需要一套最佳的基于大模型的知识库系统解决方案,需要具有如下能力:
- 能够快速将大型模型进行本地化的部署使用。
- 结合大语言模型,能有一套良好的知识库系统,方便使用。
- 针对业务专家和产品设计人员,即使不懂代码,也能快速构建产品原型,了解基于大型模型知识体系的构建过程,并能选型大语言模型。
- 针对算法人员,“套壳” 大模型或微调大模型,可通过一款工具完成本地化的快速部署和分发,而不需要自己单独写一个服务。
- 针对开发人员,可将算法开发好的模型快速构建成后台服务,且为 OpenAI 标准的服务 API,能让开发团队快速进行大型模型的接入测试和验证。
- 针对测试人员,可以在构建的大型模型和知识库问答应用中进行快速测试,并跟踪各个环节的结果,如 embedding 的召回结果是否覆盖所有知识点,可通过接口调用日志进行快速查看。
- 针对甲方的企业要快速验证知识库项目的可行性,可以使用这两个工具搭建本地的测试环境。这样可以对一些关键技术进行全流程化的跟踪调试,待验证没有问题再进行立项或系统的集成。
最终选择了 LM studio + Anything LLM 搭建本地知识库。
LM Studio 安装部署及使用
安装
LM Studio 是一款桌面软件,安装后,经过简单的配置即可使用。登录 https://lmstudio.ai/ 即可看到如下界面,按自己的操作系统进行下载即可。

安装完成之后,登录系统的主界面如下图所,可以看到其默认界面如下:

安装完成!!!
配置huggingface代理

下载和管理大模型
在 LMs studio 的首页即提供了大模型列表及搜索能力,可以从 hugging Face 上获取支持的大模型列表,并可以通过搜索获取关注的大模型。如下图搜索最近也比较火的 LLama-3:

- 点击 “download” 可以将想要的大模型下载到本地磁盘中。

查看下载进度条

- 点击 My models 图标,即可查看本地下载的大模型列表,在这里我本身下载了 1 个大模型(LLama-3)、一个 Text embedding Model

AI chat
下载了模型之后,就来验证一下这个模型能否正常使用,进入 AI chat 界面:

- 是选择模型,选择我们刚下载的 LLama-3,左侧可以显示该模型在执行时的内存及 cpu 占用情况。
- 是针对该模型的聊天历史
- 是针对该模型进行对话时的参数配置,这里我们默认即可
- 是聊天的主交互界面。
以下是 LLama-3 模型回答的结果

将大模型部署为后台服务
点击

,进入服务配置界面:

- 选择做为后台服务的大语言模型,在这里选择 llama3
- 配置做为后台服务的端口,并启动 server
- 服务器的 logs 界面,每一次 api 的调用日志在这里都可以看得到,方便进行问题排查
用 Anything LLM 快速构建知识库应用
Anything LLM 有两个版本,一是桌面安装版本,另一是通过 Docker 进行部署的版本。我选择安装桌面版,有兴趣的同学可以研究一下 Docker 版本,它增加了用户权限管理功能,并可以进行企业级应用部署。它是开源的,可以在真正的生产环境中使用 Anything LLM 作为知识库的后台系统,并开放 API 供前端业务系统集成。
安装
登录网站 https://useanything.com/download 并选择适用自己的版本:

下载到本地后直接像普通软件一样安装即可,由于本地已经完成了安装,在此就不再进行安装了。
安装完成之后,有三个比较重要的配置:
配置大模型:
推荐使用 LM Studio,因为他还是比较方便调试的。在这里输入 LMStudio 后台服务的 URL, 选择模型和 token 的大小

- 另外,也可以选择 openai 或 AnythingLLM,如果选择 AnythingLLM,如下图所示,列表了其支持的大语言模型,选择了对应的模型点击 “save changes“时,在后台会下载对应的大模型到本地。因此,AnythingLLM 也可以自行体系独立运行。

- 配置 embedding 模型(用于对语言档切分和向量数据库中知识内容的相似性判断并召回,该算法的好坏,直接影响大模型的推理结果),在这里也可以有多种选择,我选择使用 LMStudio 中的 nomic-edmbed-text-v1.5,如下图所示:

- 向量数据库:在这里我选择了一个轻量级的 LanceDB,如下图所示:

配置知识库
返回主界面之后,默认如下图所示,没有任何应用:需要我们创建一个新的 workspace,点击 “work” 之后,创建一个新的 worksapce:

针对新创建的 work 工作区,需要为其增加知识库的内容,我手动创建了一份 markdown 格式的银行客服知识库文档,文包括大致内容如下:

在 AnythingLLM 界面点击上传按钮,可以将本地的文件或来自某一个网站的站点内容进行抓取,并当成知识库的内容。
点击上传本地的文件:

上传后由于要对文件进行切分操作,在之前的配置中,我们配置了 embedding 算法使用的是 LM Studio 推荐的 nomic-ai-nomic embed text 算法,因此会直接调用 LM Studio 的后台服务对文档进行切分,如下图为后台日志:

至此知识库配置完成,下面将使用智能问答系统。
知识问答
现在我们来问 “如何查询账户余额?”,看下结果如何:
- 首先,当我输入这个问题之后,第一件要做的事件就是调用 LM Studio 后台提供的 API,这时会在 Server Logs 的控制台界面,看到调用过程,以及从知识库中召回的相关知识点:

- 当获取了这些召回的知识时,LM Studio 的大语言模型(这里用的 llama 3)就会执行推理的结果返回给 Anything LLM,结果如下:

对比一下知识内容的原文,效果还是非常不错的,原文如下:

至此,大型模型的知识库系统已经搭建完毕,并已完成从知识构建到知识问答结果展示的整个过程。