mac本地搭建ollama webUI

*简介:ollama-webUI是一个开源项目,简化了安装部署过程,并能直接管理各种大型语言模型(LLM)。本文将介绍如何在你的macOS上安装Ollama服务并配合webUI调用api来完成聊天。

开源地址

环境要求

  • macos系统
  • nodejs >= 18
  • 没错,其他的都不需要了

目标

  • 运行ollama
  • 启用webUI
  • 启用API服务
  • 启用RAG

安装ollama

  • 官网直接安装,ollama官网
  • 选择macos,点击download for mac下载
  • 得到的是个压缩包,解压,然后一路next
  • 安装完成,直接使用
  • 系统可会默认启动ollama,在电脑的右上角能看到这个标记,如果没有,请看下一步

在命令行使用ollama

  • 打开终端,输入ollama -h,查看到所有的命令。

  • 点击这里搜索你需要的模型,然后直接启动,例如:ollama run llama3,可看到下载速度非常快,取决于你的宽带。

  • 下载完成,现在可以与他聊天了

  • control + D退出聊天

调用ollama的API

  • ollama提供api的形式调用,直接查看官网文档
  • ollama serve启动服务,发现端口被占用

需要点击电脑右上角的ollama图标来退出ollama,再来运行ollama serve

  • ollama服务默认是http://127.0.0.1:11434,目前在macOS上修改ip和端口无效,官方未解决(2024-5-9)。
  • 调用api会出现跨域,所以需要做一个服务端。我已经做好了,点击查看源码,感谢star

安装ollama-webUI和serve

  • git clone https://github.com/812781385/ollama-webUI.git

  • cd client

  • pnpm i

  • 修改.env 里的VITE_APP_AXIOS_BASE_URL 为自己的ip地址

  • npm run dev 运行webUI

  • cd serve

  • npm i

  • npm run dev 运行服务端

  • 浏览器访问http://localhost:8080/

  • 点击设置按钮,打开设置对话框,输入模型名称,例如:qwen:0.5b,点击按钮开始拉取模型

  • 选择刚刚拉取好的模型后,点击确定。就可以开始聊天了

使用RAG

什么是RAG,例如你问AI:你的名字叫什么?,他会告诉你他是个ai模型...,这不是我想要的答案,怎么办?有两种方式,1.训练自己的模型。2.在prompt里嵌入自己的文案。例如:你的名字叫小虎,请参考这个问题来回答: 你的名字叫什么,这时候他会回答,他的名字叫小虎。

  • 如果你要使用RAG,请先安装chroma数据库,点击查看官网文档
  • chroma run 启动数据库服务
  • 你还需拉取ollama的嵌入式模型mxbai-embed-large,点击查看官网文档
  • 然后调用serve/app/router里的接口,添加数据router.post('/addData', controller.chat.addDataForDB);
  • 在webUI的设置对话框里,开启RAG开关,就可以聊天了

模型推理内存损耗

  • 以llama2为例计算

视频演示

播放

mac本地搭建ollama的更多相关文章

  1. Mac本地搭建kubernetes环境

    前言:之前在windows上面的虚拟机上面手工搭建了kubernetes集群,但是环境被破坏了,最近想要继续学习k8s,手工搭建太费事,所以选择了minikube,完全能够满足个人的需求,其实在Win ...

  2. mac本地搭建svn

    mac系统默认已经安装了svn,我们只需要配置并开启就可以了. 首先我们可以验证一下是否安装了svn,打开终端,输入命令 svnserve —version

  3. mac本地搭建wordpress

    1 下载安装最新的xampp 2 安装完成后,使用下面的命令开始运行 XAMPP.在终端下以系统管理员 root 的身份登录 管理员root身份登录 sudo su 使用命令启动XAMPP /Appl ...

  4. phpstorm破解 IntelliJ IDEA License Server本地搭建教程 http://blog.lanyus.com/archives/174.html/comment-page-6#comments 附件:mac环境

    ilanyu's Blog 搜索关键字搜索 首页IDEA注册码文件中转在线记事本老博客关于 IntelliJ IDEA License Server本地搭建教程 作者: ilanyu 时间: Marc ...

  5. Mac下搭建hexo

    Mac下搭建hexo 并部署到gitcafe 1.安装brewhome ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homeb ...

  6. MAC下搭建及使用XAMPP的详细教程

    Windows和Linux都可以搭建本地伺服器(LAMP和IIS),Mac當然也可以,下面教你怎麼使用XAMPP在Mac下搭建一個功能齊全的本地伺服器 所需條件 1.Mac系統(廢話) 2.最好有可用 ...

  7. 在MAC上搭建cordova3.4.0的IOS和android开发环境

    Hello,大家好,今天给大家说说在mac上搭建cordova3.4.0的iOS和Android开发环境,首先下载cordova,地址:https://cordova.apache.org/#down ...

  8. Mac下搭建php开发环境教程

    方案一:原生安装 这篇文章主要介绍了Mac下搭建php开发环境教程,Mac OS X 内置了Apache 和 PHP,这样使用起来非常方便.本文以Mac OS X 10.6.3为例,需要的朋友可以参考 ...

  9. Mac 上搭建基于 Hexo + GitHub 个人博客

    环境配置 本人电脑系统:macOS Node.js 生成静态页面.安装Node.js Git 用于将本地 Hexo 内容提交到 Github.Xcode自带Git(前提:macOS已经安装了Xcode ...

  10. Mac环境搭建以太坊私有链

    原文地址: 石匠的blog 为了测试以太坊智能合约,最方便的是在本地搭建一个以太坊私有链.在mac上搭建环境主要需要以下步骤. geth安装 geth是go-ethereum的简写,是一个用go语言编 ...

随机推荐

  1. 解决raw.githubusercontent.com图片无法访问的问题(github图床图片无法显示,但仓库已存储成功)

    解决raw.githubusercontent.com无法访问的问题(picgo+github配置图床图片不显示,但仓库已存储成功) 关于如何配置picgo+github图床参考我的这篇文章: htt ...

  2. Scala变量和常量的声明

    标示符的命名规则 1. 字母或下划线开头 2. 以操作符开头,且只包含操作符(+ - * / # !等) 3. 用反引号`....`包括的任意字符串,即使是 Scala 关键字(39 个)也可以• p ...

  3. 14 JavaScript神奇的windows

    14 神奇的windows window对象是一个很神奇的东西. 你可以把这东西理解成javascript的全局. 如果我们默认不用任何东西访问一个标识符. 那么默认认为是在用window对象. 例如 ...

  4. #交互#CF1375F Integer Game

    题目 有三堆石子初始石子数分别为\(a,b,c\),可以选择先手还是后手操作, 每次操作形如先手选择一个正整数 \(k\) ,后手自由选择一堆石子加上 \(k\) , 但是不能和上一次操作选择的石堆相 ...

  5. HTTPS加密套件的笔记

    本文于2016年5月份完成,发布在个人博客网站上. 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来. 按照如下配置(适用于Tomcat 7.0.x),为Tomcat启用了 ...

  6. Wasm软件生态系统安全分析

    演讲嘉宾 | 王浩宇 回顾整理 | 廖   涛 排版校对 | 李萍萍 嘉宾简介 王浩宇,华中科技大学教授,博士生导师,华中科技大学OpenHarmony技术俱乐部主任.研究关注于新兴软件系统中的安全. ...

  7. 多次复制Excel符合要求的数据行:Python批量实现

      本文介绍基于Python语言,读取Excel表格文件数据,并基于其中某一列数据的值,将这一数据处于指定范围的那一行加以复制,并将所得结果保存为新的Excel表格文件的方法.   首先,我们来明确一 ...

  8. MFC程序隐藏托盘+右键关闭菜单

    背景介绍: 我的程序是启动后,默认就隐藏到托盘中,等待http请求后,显示界面.所以最小化到托盘的代码,我是写在初始化里面.     正文: 一.自定义消息 WM_SHOWTASK #define W ...

  9. innoSetup打包文件编写模板

    现在打包主要是使用 innosetup 这个软件来进行打包,支持录制脚本和手动编写脚本,比较好用. 此文章主要记录手写脚本,便于后期查询,借鉴. 文档: inno setup :https://blo ...

  10. HarmonyOS分布式文件系统开发指导

      分布式文件系统概述 分布式文件系统(hmdfs,HarmonyOS Distributed File System)提供跨设备的文件访问能力,适用于如下场景: ● 两台设备组网,用户可以利用一台设 ...