linux 部署Ollama本地大模型

2024-09-05 15:28

本文主要是介绍linux 部署Ollama本地大模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

简介

llama 是一个大模型的管理框架,其作用类似于 Docker:如果将每一个标准化的大模型视为“镜像”,那么 Ollama 就能够通过一行命令快速拉取并运行这些大模型。然而,Ollama 本身是基于命令行的服务,所以为了方便我们对大模型进行微调和使用,还需要引入 maxkb 。maxkb 提供了一个 ChatBot 界面,它会把我们输入的结构化知识、转换成大模型可以理解的语言(即嵌入向量),从而实现有效的交互。在本文中,将会引导大家何利用 Ollama 快速搭建本地的大模型服务,并结合 maxkb 构建一个私人定制知识库。

优势

  • 开源免费: Ollama 及其支持的模型完全开源免费,任何人都可以自由使用、修改和分发。
  • 简单易用: 无需复杂的配置和安装过程,只需几条命令即可启动和运行 Ollama。
  • 模型丰富: Ollama 支持 Llama 3、Mistral、Qwen2 等众多热门开源 LLM,并提供一键下载和切- 换功能。
  • 资源占用低: 相比于商业 LLM,Ollama 对硬件要求更低,即使在普通笔记本电脑上也能流畅运行。
  • 社区活跃: Ollama 拥有庞大且活跃的社区,用户可以轻松获取帮助、分享经验和参与模型开发。

如何使用

Ollama 支持在 ollama.com/library 上获取的模型列表,以下是一些可下载的示例模型:

模型列表

注意:运行 7B 模型至少需要 8 GB 的 RAM,运行 13B 模型需要 16 GB,运行 33B 模型需要 32 GB。

安装Ollama

第一步:按照
 curl -fsSL https://ollama.com/install.sh | sh
第二步:运行
ollama run llama3
第三步:查看状态
systemctl status ollama

● ollama.service - Ollama Service
Loaded: loaded (/etc/systemd/system/ollama.service; enabled; vendor preset: disabled)
Active: active (running) since 四 2024-08-15 19:02:40 CST; 3s ago
Main PID: 128252 (ollama)
Tasks: 10
Memory: 414.1M
CGroup: /system.slice/ollama.service
└─128252 /usr/local/bin/ollama serve

第三步:修改端口
netstat -tunlp|grep ollama
vim /etc/systemd/system/ollama.service

下面添加一行

Environment="OLLAMA_HOST=0.0.0.0"

在这里插入图片描述

第四步:更改模型存放位置(可选步骤)
vim /etc/systemd/system/ollama.service

Environment=“OLLAMA_MODELS=/data/ollama/models”

位置同上

第五步: 重启 ollama
systemctl daemon-reload
systemctl restart ollama

安装maxkb

MaxKB 是一款基于 LLM 大语言模型的知识库问答系统,由飞致云开发。通过MaxKB可以实现在网页上可视化使用大语言模型。本次采用docker的方式直接部署。

docker run -d --name=maxkb -p 8080:8080 -v ~/.maxkb:/var/lib/postgresql/data cr2.fit2cloud.com/1panel/maxkb

访问(默认账号:admin 密码:MaxKB@123…)
在这里插入图片描述

导入模型

系统管理---->模型设置---->Ollama---->添加模型
在这里插入图片描述

模型配置(API Key处任意输入:我这里输的是123)

在这里插入图片描述

注意这里你的 xxx:11435 必须是 Ollama is running
在这里插入图片描述

点击修改之后,会自动导入配置
在这里插入图片描述

创建应用

在应用处点击创建应用
在这里插入图片描述

输入自定义的应用名称,我这里输入ai

在这里插入图片描述

选择关联好的ai模型,点击右上角的保存并发布
在这里插入图片描述
回到概览,点击演示。可以根据需求修改参数

在这里插入图片描述
即可对话大语言模型
在这里插入图片描述

这篇关于linux 部署Ollama本地大模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1139342

相关文章

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

Linux云服务器手动配置DNS的方法步骤

《Linux云服务器手动配置DNS的方法步骤》在Linux云服务器上手动配置DNS(域名系统)是确保服务器能够正常解析域名的重要步骤,以下是详细的配置方法,包括系统文件的修改和常见问题的解决方案,需要... 目录1. 为什么需要手动配置 DNS?2. 手动配置 DNS 的方法方法 1:修改 /etc/res

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

Linux下利用select实现串口数据读取过程

《Linux下利用select实现串口数据读取过程》文章介绍Linux中使用select、poll或epoll实现串口数据读取,通过I/O多路复用机制在数据到达时触发读取,避免持续轮询,示例代码展示设... 目录示例代码(使用select实现)代码解释总结在 linux 系统里,我们可以借助 select、

Linux挂载linux/Windows共享目录实现方式

《Linux挂载linux/Windows共享目录实现方式》:本文主要介绍Linux挂载linux/Windows共享目录实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录文件共享协议linux环境作为服务端(NFS)在服务器端安装 NFS创建要共享的目录修改 NFS 配

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信