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. 【Java】使用位运算完成数组中两个变量交换位置

    1 /** 2 * 3 */ 4 package com.raliable.chapter_0; 5 /** 6 * @author : Administrator 7 * @date :2022年4 ...

  2. 双向循环链表(DoubleLoopLinkList)

    双向循环链表 关于双向循环链表可以先阅读这篇文章这里就不再赘述:双向链表(DoubleLinkList) Node template<typename T> class Node { pu ...

  3. .Net单元测试xUnit和集成测试指南(1)

    引言 在现代化的软件开发中,单元测试和集成测试是确保代码质量和可靠性的关键部分.ASP.NET Core 社区内提供了强大的单元测试框架,xUnit 是其中之一,它提供了简单.清晰和强大的测试功能,编 ...

  4. Postman模拟浏览器网页请求并获取网页数据

      本文介绍在浏览器中,获取网页中的某一个请求信息,并将其导入到Postman软件,并进行API请求测试的方法.   Postman是一款流行的API开发和测试工具,它提供了一个用户友好的界面,用于创 ...

  5. #并查集,单调栈#美团2018年CodeM大赛-决赛 C-Traffic

    题目 分析 首先如果枚举起点\(i\),点\(i\)到点\(j\)(i<j)的距离跳到点\(k\)(k<i)一定不优,所以可以先处理这种情况, 用单调栈维护\(dp\)单调递增,并且如果栈 ...

  6. #线段树#LOJ 6029「雅礼集训 2017 Day1」市场

    题目 在长度为\(n(n\leq 10^5)\)的数列中, 需要满足区间加,区间下取整的操作 以及能够查询区间和以及区间最小值 除数\(d\)满足\(2\leq d\leq 10^9\) 加数\(c\ ...

  7. #莫比乌斯函数,Miller-Rabin#洛谷 3653 小清新数学题

    题目 求\(\sum_{i=l}^r\mu(i),r-l\leq 10^5,1\leq l\leq r\leq 10^{18}\) 分析 其实有一道可以算是弱化版的题目 这种类型的tricks就是枚举 ...

  8. HDC2021技术分论坛:鸿蒙智联设备开发,这五大法宝你应该拥有

    作者:zhaowenguang,dinglu, 华为高级工程师 Huawei LiteOS是轻量级的开源物联网操作系统.智能硬件使能平台,可广泛应用于智能家居.穿戴式.车联网.制造业等领域,使物联网终 ...

  9. 为你推荐一款高效的IO组件——okio

    原文:https://mp.weixin.qq.com/s/XnNhSq8ESoslb2DQEzMbCQ,点击链接查看更多技术内容.   前不久,三方组件库上新了一批JS/eTS组件,其中就包括oki ...

  10. 中间件之Mycat

    一.概念 介绍 Mycat是开源的.活跃的.基于Java语言编写的MySQL数据库中间件.可以像使用mysql一样来使用mycat,对于开发人员来说根本感觉不到mycat的存在 Mycat不负责存储数 ...