一、前言

自 OpenAi 发布 ChatGPT 对话性大语言模型,AI 这两年发展迎来爆发,国内外也衍生了大量的语言模型开放给公众使用。为了可以让更多人接触到AI,让本地化部署更加轻便快捷,于是就有了Ollama、LM Studio等可以在本地部署模型的工具。

相比之下,ollama 需要通过命令进行安装,下载模型,以及对话, 如果需要 web 界面,可搭配 open-webui 进行配套使用,整套流程下来虽算不上复杂,但是对于没有编程经验的人来说,还是需要花费一些时间的。而 LM Studio 对小白用户更加友好方便,LM Studio 直截了当提供了图形化界面,并且直接下载 gguf 模型文件加载就可以直接使用了。当然也可以搭配 open-webui 进行网页版界面使用。

二、环境准备

系统:Windows\支持Apple M系列芯片\Linux系统

CPU:支持AUX2指令即可

内存:16G及以上

显存:NvidiaRtx2060 8G及以上,Rtx3060,3070,4060,4070,4080 16G以上

CUDA:CMD->nvidia-smi CUDA Version: 12.2+

硬盘:100G+的固态放模型和LM Studio

三、安装设置

先去官网地址下载对应平台的 LM Studio

LM Studio Discover, download, and run local LLMs

下载完成后,不需要安装,双击就直接打开了。

首次打开,并没有大语言模型,需要自己下载模型之后才能使用,需要注意的是,默认模型下载地址是在 C 盘的,如果你的 C 盘空间吃紧,建议修改到其他路径。修改方式如下:

换源(optional)

这个可选的,如果你不会魔法上网,则需要这一步换源。

在图标处,右键 -> 打开文件所在位置。

app-x.x.xx/resources/app/.webpack/

resources/app/.webpack/main/index.js

resources/app/.webpack/main/llmworker.js (0.2.23 及以后版本是llmworker了,之前 unity.js)

resources/app/.webpack/main/worker.js

resources/app/.webpack/renderer/main/main_window/index.js

复制备份这几个文件,把其中所有的 huggingface.co 都替换成 hf-mirror.com

然后保存就行。

四、下载模型并运行

下载模型,比如下载阿里的通义千问

一般会有很多版本,参数量不同,下载的时候根据自己的电脑配置进行选择。

使用进入 AI Chat 页面。选择一个即可。

五、配置 open-webui

如果你只是自己使用,上面的已经够了。

如果还想让别人一起使用,并且爱折腾,则可以搭配 open-webui ,用网页的形式使用。

关于 open-webui 安装也很简单,方式有很多,比如使用 docker 或者手动安装。这里我采用手动安装方式。

  1. 你需要有 python 3.11 的环境,然后通过 pip 安装。
pip install open-webui
  1. 打开 web 界面。
open-webui serve

当你看到如下界面,说明成功了。

然后打开网址: http://localhost:8080/

正常情况下是没有问题的,如果你看到如下类似的错误页面:

则再次手动输入地址 http://127.0.0.1:8080/

看到如上的页面,说明 open-webui 安装启动成功了。

接下来注册账号,登录。

配置 LM Studio 和 Open-Webui

在 LocalSever 中以 chat 方式启动 LM Studio 对话。

看到下面的额日志则表示启动成功。复制 ⑤ 中的 url,然后打开 open-webui 的网页。一次点击右上角设置 -> 管理员设置 -> 外部链接 。 将复制的 url 配置上去,最后记得保存。

接下来回到对话页面,就可以愉快的使用了。

写在结尾

学习 AIGC 已经很久了。这是我写的第一篇文章,写的非常详细,旨在小白用户也能搭配好大语言模型的本地环境。然后用起来,提升工作效率。后续会写更多 AIGC 应用相关的文章。

LM Studio + open-webui 快速本地部署大语言模型的更多相关文章

  1. pytorch在有限的资源下部署大语言模型(以ChatGLM-6B为例)

    pytorch在有限的资源下部署大语言模型(以ChatGLM-6B为例) Part1知识准备 在PyTorch中加载预训练的模型时,通常的工作流程是这样的: my_model = ModelClass ...

  2. 本地推理,单机运行,MacM1芯片系统基于大语言模型C++版本LLaMA部署“本地版”的ChatGPT

    OpenAI公司基于GPT模型的ChatGPT风光无两,眼看它起朱楼,眼看它宴宾客,FaceBook终于坐不住了,发布了同样基于LLM的人工智能大语言模型LLaMA,号称包含70亿.130亿.330亿 ...

  3. katalon Studio之WebUi自动化测试视频教程持续更新

    通知...通知...通知... 为了更好的把katalon Studio自动化测试工具推广给大家,最近在B站中开通了视频专栏,地址如下: https://www.bilibili.com/video/ ...

  4. Kubernetes 学习笔记(二):本地部署一个 kubernetes 集群

    前言 前面用到过的 minikube 只是一个单节点的 k8s 集群,这对于学习而言是不够的.我们需要有一个多节点集群,才能用到各种调度/监控功能.而且单节点只能是一个加引号的"集群&quo ...

  5. Hugging News #0324: 🤖️ 黑客松结果揭晓、一键部署谷歌最新大语言模型、Gradio 新版发布,更新超多!

    每一周,我们的同事都会向社区的成员们发布一些关于 Hugging Face 相关的更新,包括我们的产品和平台更新.社区活动.学习资源和内容更新.开源库和模型更新等,我们将其称之为「Hugging Ne ...

  6. 使用ASP.NET MVC、Rabbit WeixinSDK和Azure快速开发部署微信后台

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:公众号后台系统和数据都基本准备妥当了,可以来分享下我是如何开发本微信公众号的后台系统了 ...

  7. 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序

    原文 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序 Jim ...

  8. arcgis api for javascript本地部署加载地图

    最近开始学习arcgis api for javascript,发现一头雾水,决定记录下自己的学习过程. 一.下载arcgis api for js 4.2的library和jdk,具体安装包可以去官 ...

  9. Ubuntu14.04下Ambari安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)

    不多说,直接上干货! 写在前面的话 (1) 最近一段时间,因担任我团队实验室的大数据环境集群真实物理机器工作,至此,本人秉持负责.认真和细心的态度,先分别在虚拟机上模拟搭建ambari(基于CentO ...

  10. virtual judge 本地部署方案

    这是一种将自己的电脑当作服务器来部署一个vj的方法,我也是参考前辈们的做法稍作了改动,如果在服务器上部署的话需要在细节上稍作改动: 一.什么是Virtual Judge? vj的工作原理什么?  vj ...

随机推荐

  1. 腾讯消息队列CMQ一键化部署脚本

    CMQ-1.0.2-软件包.tar安装包放在家目录,脚本也放在家目录,然后执行:sh -x cmq_install.sh [ip1] [ip2] [ip3] 即可 下列脚本代码保存为:cmq_inst ...

  2. OSG编译安装-MSVC

    OSG编译安装-MSVC 1.准备工作 1.1 环境 Windows10 Qt5.14.2 Microsoft Visual Studio2017 cmake-3.20.4-windows-x86_6 ...

  3. Win11安装VMware Workstation Pro,Centos,Xshell,Xftp(Linux学习需要)

    注意:1.win11不能安装太低版本的VMware Workstation Pro,否则启动linux会出现蓝屏 ​ 2.win11是默认没有开虚拟机平台支持的,所以同时也要开启,否则也会出现蓝屏. ...

  4. fabric compose文件解读(peer篇)

    peer是fabric中的基础单元,主要负责背书,验证交易合法性,保存区块链数据,查询数据.peer与orderer配合完成区块链的全部功能,orderer可以比作是管理员,peer属于是干货的员工, ...

  5. wordpress 折腾记

    今天我看到一篇个人博客,我想建个人网站的心又动了. 虽说博客园已经很符合我的预期了,但我还是一直很想做一个个人网站做一些个性化的东西,今天试试用用wordpress搭建一个wordpress网站 介绍 ...

  6. k8s组件和网络插件挂掉,演示已有的pod是否正常运行

    环境 03 master ,05 06是node [root@mcwk8s03 mcwtest]# kubectl get nodes -o wide NAME STATUS ROLES AGE VE ...

  7. 使用线程池实现为多个客户端提供Echo服务

    import java.io.*; import java.net.ServerSocket; import java.net.Socket; import java.util.Scanner; im ...

  8. 推荐一款免费的终端工具-Windterm

    Windterm 提到SSH终端工具,大家一定会想到putty.xshell.MobaXterm这些产品.但是当我使用Windterm后,我彻底改变了我对之前使用SSH终端工具的认知,其强大的能力,彻 ...

  9. 连续段 dp - 状态转移时依赖相邻元素的序列计数问题

    引入 在一类序列计数问题中,状态转移的过程可能与相邻的已插入元素的具体信息相关. 这类问题通常的特点是,如果只考虑在序列的一侧插入,问题将容易解决. 枚举插入顺序的复杂度通常难以接受,转移时枚举插入位 ...

  10. NumPy 简单算术:加减乘除及其他运算

    简单算术 你可以直接在 NumPy 数组之间使用算术运算符 + - * /,但本节讨论了一个扩展,其中我们有函数可以接受任何类似数组的对象,如列表.元组等,并根据条件执行算术运算. 条件算术:意味着我 ...