大语言模型本地部署与使用_ollama_open-webui

概述

本文主要记录如何使用ollama运行开源的大语言模型如llama3等,以及如何使用open-webui进行交互。

ollama支持MacOS、Linux、Windows等操作系统,这里主要以Linux和Windows为主,讲述如何在本地运行大语言模型。

一· 安装ollama

1.1 Windows系统安装ollama

访问ollama的官方网站:https://ollama.com/,点击Download,选择WindowsLOGO下载ollama的安装包。

400

下载完成后,双击安装包,按照提示安装即可。

ollama安装完成后,可以在cmdpowershell中执行ollama --version,查看是否安装成功。

1.2 Linux系统安装ollama

1.2.1 自动安装脚本

访问ollama的官方网站:https://ollama.com/,点击Download,选择LinuxLOGO,点击后复制下方的安装指令,粘贴到Linux的终端中执行即可。

400

安装指令如下:
curl -fsSL https://ollama.com/install.sh | sh

1.2.2 使用docker安装

访问ollama托管在DockerHub的仓库Ollama Docker image,根据其README中的指令,可以使用docker安装ollama

CPU Only

docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

注意-v ollama:/root/.ollama 是将ollama的配置文件映射到本地,可以在更改ollama为其他文件夹

GPU版本

注:使用GPU版本需要安装Nvidia的GPU Driver和Nvidia Container Toolkit,具体安装方法可以参考Nvidia Docker。

docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

同理:-v ollama:/root/.ollama 是将ollama的配置文件映射到本地,可以在更改ollama为其他文件夹

运行ollama

docker exec -it ollama ollama run llama3

二· 使用ollama运行大语言模型

2.1 ollama的基础指令

  • ollama serve:启动ollama服务
  • ollama create:创建一个模型
  • ollama show:展示模型信息
  • ollama run:运行模型
  • ollama pull:从registry拉取模型
  • ollama push:推送模型到registry
  • ollama list:列出模型
  • ollama cp:复制模型
  • ollama rm:删除模型
  • ollama help:查看帮助
  • ollama --version:查看ollama的版本
  • ollama --help:查看ollama的帮助

2.2 ollama支持的模型

通过查看ollama的官方网站ollama Library,可以看到ollama支持的模型,如llama3Phi3等。
400

llama3为例,可以通过ollama run llama3来运行llama3模型。

通用指令如下:

ollama run [model_name]:[model_tag]

例如,llama3模型分别有llama3:8bllama3:70b等版本,其中,8b 70b分别代表模型的参数量,运行70b模型的指令为:

ollama run llama3:70b

三· 使用open-webui进行交互

Open WebUI 是针对 LLM 用户友好的 WebUI, 支持的 LLM 运行程序包括 OllamaOpenAI 兼容的 API

3.1 Ubuntu安装open-webui

注:open-webui仅仅只是一个用于交互的WebUI,需要配合ollamaopenai等大语言模型服务一起使用。

注: 本文假设你已经在 11434 端口启动了 Ollama 服务,是否在本机不影响使用

镜像下载

官方没有在 docker hub 上发布镜像,而是发布在 ghcr.io,地址在 https://github.com/open-webui/open-webui/pkgs/container/open-webui

登录到Ubuntu系统,执行以下命令拉取镜像:

# 创建数据文件夹
mkdir -p /home/lujx/docker/ollama/data
# 切换到数据文件夹
cd /home/lujx/docker/ollama/data
# 拉取镜像
docker pull ghcr.io/open-webui/open-webui:git-df3675a-cuda

注:git-df3675a-cuda 是镜像的版本号,可以根据实际情况更改,可通过访问ghcr.io查看最新版本号,或者直接使用main

如果镜像下载速度较慢,可以试试 docker 代理网站:https://dockerproxy.com/,但是会多几个步骤

# 如果拉不动的话加个代理
docker pull ghcr.dockerproxy.com/open-webui/open-webui:main
# 重命名镜像(如果是通过代理下载的)
docker tag ghcr.dockerproxy.com/open-webui/open-webui:main ghcr.io/open-webui/open-webui:main
# 删除代理镜像(如果是通过代理下载的)
docker rmi ghcr.dockerproxy.com/open-webui/open-webui:main

启动容器:

docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway --gpus=all -v data:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama

注: 如需添加其他参数,可在启动容器是配置环境变量,如OPENAI_API_BASE_URL OPENAI_API_KEYS等。使用 -e 参数添加,如 -e OPENAI_API_BASE_URL=http:xxxx.com -e OPENAI_API_KEYS=xxxxxxxxxxx

运行完成后,使用浏览器访问http://localhost:3000,即可进入open-webui的交互界面。或者使用http://ip:3000访问。
400

第一次访问时,需要创建一个用户,输入用户名和密码,然后点击Sign Up即可。

3.2 Open WebUI的配置与使用

3.2.1 管理员权限与账号配置

首次注册登录的账号默认为管理员账号,也是唯一的管理员账号,为防止账号密码丢失导致无法登录,或者新注册的用户需要管理员激活等,建议在登录后,创建第二个账号,然后将第二个账号设置为管理员账号。

设置方法: 点击右下角的用户头像,选择Admin Panel,然后点击右上角的+号,创建一个RoleAdmin的用户,键入用户名、邮箱和密码,点击Submit即可。
400

设置新建用户无需激活:点击右下角的用户头像,选择Admin Panel,然后点击右上角的Admin Settings,选择General,将Default User Rolepending改为user即可。自此,新创建的用户无需管理员激活即可登录。
400

3.2.2 配置ollama服务链接与模型下载

连接ollama服务

点击右下角的用户头像,选择Settings,选择Connections,键入Ollama Base URLhttp://host.docker.internal:11434,点击右侧按钮测试Ollama服务的连接,连接成功会有信息提示。

如果ollama服务是在其他机器上,可以将host.docker.internal改为ip地址。

下载模型

点击右下角的用户头像,选择Settings,选择Models,在Pull a model from Ollama.com文本框中键入需要下载的模型,如llama3:8b号,点击下载按钮,等待下载完成后即可。

模型下载的来源和名称查询同ollama

3.3 异常问题与解决

3.3.1 open-webui无法连接ollama服务

如果遇到open-webui无法连接ollama服务的情况,通常是因为WebUI的docker容器无法访问到127.0.0.1:11434(host.docker.internal:11434)服务的原因,可以通过在docker命令中加入--network=host来解决。请注意:端口号由3000变为8080,访问链接为:http://localhost:8080

示例命令如下:

docker run -d --network=host -v open-webui:/app/backend/data -e OLLAMA_BASE_URL=http://127.0.0.1:11434 --name open-webui --restart always ghcr.io/open-webui/open-webui:main

官方文档地址 : https://docs.openwebui.com/getting-started/troubleshooting

3.3.2 open-webui下载模型失败或中断

因网络问题下载中断可直接重试继续下载,ollama支持断点续传,不会重复下载已下载的部分。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/637028.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

一张图看懂大模型性价比:能力、价格、并发量全面PK

最近,国内云厂商的大模型掀起一场降价风暴。火山引擎、阿里云、百度云等纷纷宣布降价,部分模型价格降幅据称高达99%,甚至还有些模型直接免费。 五花八门的降价话术,一眼望去遍地黄金。但事实真的如此吗?今天我们就拨开…

太阳诱电:顺应时代需求的新型电容器为何能在全球得到广泛应用(下)

随着汽车电动化和电子控制化的进展,车载计算机和电气部件也在逐渐向大功率化的方向发展。而构成这些车载设备电源电路的电子元器件也必须随之进行技术革新。太阳诱电集团携手全资子公司ELNA,开发并供应新型电容器“导电性高分子混合铝电解电容器”&#…

热爱无解 少年万丈光芒!首席艺人【彭禹锦】登陆第八季完美童模全球赛

2024年7月,一档由IPA模特委员会创办于2017年的王牌少儿模特大赛即将拉开全球总决赛的帷幕!作为家喻户晓的国民赛事——完美童模曾6季荣获CCTV央视新闻报道,以创意引领、美学引领、和兼具文化底蕴的赛事特色,收获了全球百万亲子家庭的喜爱。20…

工业镜头的参数、选型步骤

目录 一、如何选择合适的工业镜头 1. 工业镜头的基本参数 2. 选择工业镜头的步骤 3. 案例分析:如何选择合适的镜头 4. 远心镜头的设计目的 二、 介绍远心镜头 2.1 远心镜头的主要特性 2.2 远心镜头的类型 2.3 远心镜头的应用 2.4 远心镜头的工作原理 2.5 …

SOA半导体光放大器及其应用

---翻译自Michael Connelly于2015年发表的文章 1.简介 在过去的二十五年里,光纤通信网络的部署和容量迅速增长。这种增长得益于新光电技术的发展,这些技术可用于利用光纤的巨大带宽。如今,运行的系统比特率已超过 100 Gb/s。光技术是全球信…

Kubernetes的灵魂核心:kube-scheduler

Kubernetes(简称K8s)是一个开源的容器编排系统,用于自动化容器化应用程序的部署、扩展和管理。在Kubernetes集群中,kube-scheduler是一个至关重要的组件,它负责将Pod(Kubernetes中的最小部署单元&#xff0…

谷歌推出TransformerFAM架构,以更低的消耗处理长序列文本

Transformer对大模型界的影响力不言而喻,ChatGPT、Sora、Stable Difusion等知名模型皆使用了该架构。 但有一个很明显的缺点,其注意力复杂度的二次方增长在处理书籍、PDF等超长文档时会显著增加算力负担。 虽然会通过滑动窗口注意力和稀疏注意力等技术…

win11安装docker运行Open-Webui 界面化展示 ollama大模型

1.OpenWeb UI运行需要docker 环境下载docker Get Started | Docker 2.需要命令提示符docker -v 查询是否安装成功; 查询docker详情docker version 3.github拉取open-webUi镜像Package open-webui GitHub 复制命令运行在命令提示符; 等待下载完成 4.到…

打造一个增强版Kimi:可以生成图片、PPT、PDF文档、数据分析等

Kimi虽然在国内AI大模型中表现不错,但是和ChatGPT还是差不少功能。现在有一个很简单的方法,把kimi功能增强,使用效果大大改善,比如生成图片: 具体方法如下: 打开coze网站:https://www.coze.cn/…

AI大模型探索之路-实战篇4:DB-GPT数据应用开发框架调研实践

目录 前言一、DB-GPT总体概述二、DB-GPT关键特性1、私域问答&数据处理&RAG2、多数据源&GBI3、多模型管理4、自动化微调5、Data-Driven Multi-Agents&Plugins6、隐私安全 三、服务器资源准备1、创建实例2、打开jupyterLab 四、DB-GPT启动1、激活 conda 环境2、切…

使用VUE3+TS+elementplus创建一个增加按钮

一、前言 在上一篇文章中分享了创建table的过程&#xff0c;详见&#xff08;VUE3TSelementplus创建table&#xff0c;纯前端的table&#xff09;&#xff0c;本文在创建好的table的基础上&#xff0c;再创建一个增加按钮。 二、程序展示 1、前面创建table的程序 <templ…

Springboot+Vue项目-基于Java+MySQL的游戏交易系统(附源码+演示视频+LW)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;Java毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计 &…

关于智慧校园安全用电监测系统的设计

人生人身安全是大家关注的话题&#xff0c;2019年12月中国消防统计近五年发生在全国学生宿舍的火灾2314起&#xff08;中国消防2019.12.应急管理部消防救援局官方微博&#xff09;&#xff0c;违规电器是引发火灾的主因。如果在各寝室安装智能用电监测器实时监督线路参数&#…

足球走地数据分析之大小球策略及工具介绍

在足球走地数据分析中&#xff0c;大小球策略是一种非常实用的投注方式。以下是一些关于大小球策略的分析和建议&#xff1a; 理解大小球概念&#xff1a;大小球是足球走地投注中的一种玩法&#xff0c;主要预测的是一场比赛中的总进球数是否超过或低于一个预设的数值。例如&a…

浏览器API与协议

现代浏览器是一个囊括了数百个组件的操作系统&#xff0c;包括进程管理、安全沙箱、分层的优化缓存、JavaScript虚拟机、图形渲染和GPU管道、存储系统、传感器、音频和视频&#xff0c;网络机制等等。 在浏览器上运行的应用的性能。&#xff0c;取决于多个组件&#xff1a;解析…

C#利用WinForm实现可以查看指定目录文件下所有图片

目录 一、关于Winform 二、创建应用 三、功能实现 四、代码部分 一、关于Winform Windows 窗体是用于生成 Windows 桌面应用的 UI 框架。 它提供了一种基于 Visual Studio 中提供的可视化设计器创建桌面应用的高效方法。 利用视觉对象控件的拖放放置等功能&#xff0c;可…

适用于 Windows 7/8/10/11 的 6 款最佳免费分区软件

分区软件程序旨在帮助您创建、缩小、删除、扩展、合并或拆分硬盘和其他存储设备的分区。虽然可以在 Windows 中对硬盘进行分区而无需使用其他软件&#xff0c;但您可以执行的活动范围有限。例如&#xff0c;如果没有外部工具&#xff0c;您无法调整分区大小或合并分区。在这篇文…

Stable Diffusion|黑白老照片修复

在这个时代&#xff0c;我们习惯于拥有高清、色彩丰富的照片&#xff0c;然而&#xff0c;那些古老的黑白色老照片由于年代的久远&#xff0c;往往会出现模糊、破损等现象。 关于AI绘画技术储备 学好 AI绘画 不论是就业还是做副业赚钱都不错&#xff0c;但要学会 AI绘画 还是要…

解决 fatal: Not a git repository (or any of the parent directories): .git 问题

解决方法&#xff1a;在命令行 输入 git init 然后回车就好了

一些常见的程序设计问题

秒杀 redis缓存库存 1.判断库存名额是否充足&#xff0c;2.进行扣减 为了防止超卖&#xff0c;必须保证这两部的原子性 库存扣减后发送mq消息&#xff0c;去异步执行创建订单流程&#xff0c;创建订单失败会造成少卖。可加重试机制&#xff0c;对多次重试依旧失败的&#xff…