Ollama—87.4k star 的开源大模型服务框架!!

ops/2024/11/17 22:41:25/
aidu_pl">

这一年来,AI 发展的越来越快,大模型使用的门槛也越来越低,每个人都可以在自己的本地运行大模型。今天再给大家介绍一个最厉害的开源大模型服务框架——ollama。

项目介绍

Ollama 是一个开源的大语言模型(LLM)服务工具,它允许用户在本地环境快速实验、管理和部署大型语言模型。它支持多种流行的开源大型语言模型,如 Llama 3.1、Phi 3、Mistral、Gemma 2 等,并且可以通过命令行界面轻松下载、运行和管理这些模型。

Ollama 的出现是为了降低使用大型语言模型的门槛,是让大型语言模型更加普及和易于访问。

项目安装

既然说到要降低门槛,Ollama 的安装也自然是非常的方便了。

Ollama 支持 macOS、Windows 和 Linux 操作系统,同时也提供了 Docker 镜像,方便在不同环境中部署。

  • macOS: 可以通过 Homebrew 安装,使用命令 brew install ollama。也可以直接下载安装包运行。

  • Windows: 需要下载安装包并运行。

  • Linux: 可以通过包管理器或使用命令 curl -fsSL ``https://ollama.com/install.sh`` | sh安装。

  • Docker: 可以使用 docker pull ollama/ollama 命令拉取镜像,并运行容器。

这里以 macOS 为例,下载了 ollama 的安装包后,直接双击运行这个可爱羊驼的应用,程序会提示你将应用移动到 application 文件夹,并且有后续的提示操作,我们按照指引去安装就可以了。

图片

图片

项目使用

安装完成后,我们可以直接执行 ollama 应用启动,也可以在命令行中执行 ollama serve 来启动 Ollama 服务。

当然,现在的我们主要在命令行中去操作 ollama。

执行 ollama list:可以列出已下载的模型,如图:

图片

执行 ollama pull <model> 可以从远程仓库拉取模型。

执行 ollama run <model> 可以运行指定的模型,我们使用 ollama run llama3:8b 来运行已经安装的模型,并且开始对话,如图:

图片

web 界面

如果都是用命令行交互,还是挺麻烦的。这里再给大家介绍一个好用的 ollama 的 web 界面:open-webui。

这也是一个开源项目,我们可以使用 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

之后在浏览器访问 localhost:3000,可以打开一个和 ChatGPT 很像的页面:

图片

点击上方的“选择一个模型”,便可以看到 ollama 中已经下载的模型,选中后直接开启聊天就可以啦。

图片

总结

Ollama 是一个功能强大且易于使用的工具,它为本地部署和运行大型语言模型提供了一个简单而有效的方法。无论是研究、开发还是日常使用,Ollama 都能满足用户对大型语言模型的需求。Ollama 拥有庞大的社区用户和相关的开源项目,配合 open-webui,我们可以更好的使用 Ollama,并为朋友们提供一个类似于 ChatGPT 的对话界面。

感兴趣的朋友们,赶紧去试试吧。

项目地址:
https://github.com/ollama/ollama
https://github.com/open-webui/open-webui

http://www.ppmy.cn/ops/134554.html

相关文章

【H3C华三 】VRRP与BFD、Track联动配置案例

原创 厦门微思网络 组网需求 如图1所示&#xff0c;区域A和区域B用户所在网络的出口处部署了两台汇聚层设备&#xff08;Device A和Device B&#xff09;。 现要求使用VRRP与BFD、Track联动功能&#xff0c;实现以下需求&#xff1a; • 在Device A和Device B上分别配置两个…

【机器学习】特征工程、降维与超参数调优:提升机器学习模型表现的三大核心技术

&#x1f497;&#x1f497;&#x1f497;欢迎来到我的博客&#xff0c;你将找到有关如何使用技术解决问题的文章&#xff0c;也会找到某个技术的学习路线。无论你是何种职业&#xff0c;我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章&#xff0c;也欢…

用指针遍历数组

#include<stdio.h> int main() {//定义一个二维数组int arr[3][4] {{1,2,3,4},{2,3,4,5},{3,4,5,6},};//获取二维数组的指针int (*p)[4] arr;//二维数组里存的是一维数组int[4]for (int i 0; i < 3; i){//遍历一维数组for (int j 0; j <4; j){printf("%d &…

elementui el-table中给表头 el-table-column 加一个鼠标移入提示说明

前言 在使用el-table 表格中有些表格的表头需要加入一些提示&#xff0c;鼠标移入则出现提示&#xff0c;非常实用&#xff0c;我是通过el-table中的el-tooltip实现的&#xff0c;以下的效果预览 代码实现 <el-table ref"multipleTable" :data"data"…

SRIO RapidIO 笔记

RapidIO 基础与底层包类型 1.RapidIO 是基于数据包交换的互联体系结构 类似 Mac 层使用以太网的计算机网络&#xff08;IEEE802.3&#xff09;&#xff1f; 首先 RapidIO 是一个互联协议&#xff08;类似计算机网络 IEEE802.3&#xff09;&#xff0c;包含硬件与软件的定义&…

Eureka、Zookeeper 与 Nacos:服务注册与发现功能大比拼

一、引言 在当今分布式系统和微服务架构蓬勃发展的时代&#xff0c;服务注册与发现机制已然成为了构建可靠、灵活且易于扩展的系统的关键要素。它就像是分布式系统中的 “通讯录”&#xff0c;让各个微服务能够轻松找到彼此&#xff0c;协同完成复杂的业务流程。Eureka、Zookee…

树状数组+概率论,ABC380G - Another Shuffle Window

目录 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 G - Another Shuffle Window 二、解题报告 1、思路分析 不难用树状数组计…

【大语言模型】ACL2024论文-12 大型语言模型的能力如何受到监督式微调数据组成影响

【大语言模型】ACL2024论文-12 大型语言模型的能力如何受到监督式微调数据组成影响 论文&#xff1a;https://arxiv.org/pdf/2310.05492 目录 文章目录 【大语言模型】ACL2024论文-12 大型语言模型的能力如何受到监督式微调数据组成影响论文&#xff1a;https://arxiv.org/p…