当前位置: 首页 > news >正文

Ollama在MacOS、Linux本地部署千问大模型及实现WEB UI访问

一、前言

阿里通义千问发布了Qwen2,提供了0.5B~72B的量级模型,在​​Ollama官网​​可以搜索qwen2查看,本文提供了Ollama的下载(在线/离线安装)、Ollama运行模型、使用WebUI连接模型以及页面简单配置。
请添加图片描述

二、实现效果

  1. 控制台直接提问
    请添加图片描述

  2. Web界面访问
    请添加图片描述

三、实现步骤

  1. Windows、MacOS、Linux安装Ollama(我这里只在Macos、Linux上进行了安装)
  2. 使用Ollama拉取、运行模型(这步完成可以使用控制台、Api提问)
  3. 用Web UI实现可视化提问,方便管理。

四、开始实现

1.1 安装

请添加图片描述
首先我们需要在​​Ollama官网​​​点击“Download”按钮,选择适合系统的版本点击下载,但由于网络问题,会非常慢,建议去​​他的github​​上下载release。

请添加图片描述

可以看见Ollama还是非常活跃的,在这里选择合适的版本下载安装。
请添加图片描述

Mac版本下载后放到应用文件夹内,打开后根据提示即可完成安装,Linux的安装稍微麻烦点,官方提供的命令是:
curl https://ollama.ai/install.sh | sh
就是下载install.sh并执行,脚本还是先下载好安装包再进行安装,网络问题会非常慢或者下载失败,所以我们这里需要把脚本使用下面脚本下载下来:
wget https://ollama.ai/install.sh
vim编辑这个脚本总共需要修改两个地方:
• 注释下载链接(install.sh的第66行左右)

status "Downloading ollama..."
#curl --fail --show-error --location --progress-bar -o $TEMP_DIR/ollama "https://ollama.com/download/ollama-linux-${ARCH}${VER_PARAM}"

• 修改Ollama安装目录(install.sh的第73行左右)

status "Installing ollama to $BINDIR..."
$SUDO install -o0 -g0 -m755 -d $BINDIR
#$SUDO install -o0 -g0 -m755 $TEMP_DIR/ollama $BINDIR/ollama
$SUDO install -o0 -g0 -m755 ./ollama-linux-amd64  $BINDIR/ollama

以上步骤做好,就可以进入到install.sh脚本所在目录使用sh ./install.sh开始安装了,安装完,输入如图ollama -v出现版本代表安装成功。

1.2 模型拉取、运行

文章开头提到的在官网找到qwen2,选择需要的版本,如下图选择了1.5b版本,右边对应着执行命令,复制命令在MacOS或者Linux终端中执行。
请添加图片描述

这里如果没有模型会自动拉取模型,拉取速度非常快,拉取完后显示“>>> Send a message (/? for help)”代表可以直接输入问题进行提问了。
请添加图片描述

1.3 用Web UI实现可视化提问。

本文使用docker运行web界面,docker的安装这里不做过多赘述,终端中执行:

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

docker会自动拉取镜像运行容器,运行成功后访问http://127.0.0.1:3000进入界面,首次注册登录的是管理员账号,可以设置成中文,也可以在设置中配置后面注册的默认角色。

请添加图片描述
请添加图片描述
需要注意的是需要选择提问的模型,在进行提问。

五、总结

总体还是比较简单的,更高阶的玩法,看小伙伴的反馈,后面更新比如自定义智能体、训练等。

相关文章:

  • 手机IP地址距离多远会变:解析移动设备的网络定位奥秘
  • 使用TensorFlow和Keras对以ResNet50模型进行微调
  • ArcGIS JSAPI 高级教程 - ArcGIS Maps SDK for JavaScript - 高斯模糊效果
  • 【第10章】Vue之Element Plus常用组件
  • 【考研数据结构——C语言描述】第四章 串
  • 基于51单片机的电子秤的设计
  • 公差基础-配合(互换性和测量基础)-2
  • 推荐系统算法
  • 网页五子棋对战项目测试(selenium+Junit5)
  • Python数据分析与建模库-02科学计算库Numpy01-05合集
  • Java高阶数据结构-----并查集(详解)
  • Matlab实现DBO-BiTCN-BiGRU-Attention蜣螂算法优化双向时间卷积双向门控循环单元融合注意力机制多变量回归预测
  • php收银系统源码推荐
  • tsp可视化python
  • C# 中的日志记录技术详细解析与示例
  • JS 中的深拷贝与浅拷贝
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • 【笔记】你不知道的JS读书笔记——Promise
  • AWS实战 - 利用IAM对S3做访问控制
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • Facebook AccountKit 接入的坑点
  • nodejs:开发并发布一个nodejs包
  • Python - 闭包Closure
  • Shell编程
  • Spring技术内幕笔记(2):Spring MVC 与 Web
  • Stream流与Lambda表达式(三) 静态工厂类Collectors
  • 半理解系列--Promise的进化史
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 动态规划入门(以爬楼梯为例)
  • 基于HAProxy的高性能缓存服务器nuster
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 消息队列系列二(IOT中消息队列的应用)
  • 小程序01:wepy框架整合iview webapp UI
  • 学习ES6 变量的解构赋值
  • 在GitHub多个账号上使用不同的SSH的配置方法
  • [地铁译]使用SSD缓存应用数据——Moneta项目: 低成本优化的下一代EVCache ...
  • ​如何使用QGIS制作三维建筑
  • ​无人机石油管道巡检方案新亮点:灵活准确又高效
  • # 移动硬盘误操作制作为启动盘数据恢复问题
  • #162 (Div. 2)
  • #stm32整理(一)flash读写
  • (30)数组元素和与数字和的绝对差
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (八)Spring源码解析:Spring MVC
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)spring boot北京冬奥会志愿者报名系统 毕业设计 150947
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • (免费分享)基于springboot,vue疗养中心管理系统
  • (三) prometheus + grafana + alertmanager 配置Redis监控
  • (十七)、Mac 安装k8s
  • (原)Matlab的svmtrain和svmclassify
  • (转)视频码率,帧率和分辨率的联系与区别
  • (转载)利用webkit抓取动态网页和链接
  • .a文件和.so文件
  • .NET : 在VS2008中计算代码度量值