首页 > 其他分享 >Ollama部署本地大模型

Ollama部署本地大模型

时间:2025-01-05 19:02:30浏览次数:3  
标签:安装 Ollama 模型 sudo 本地 ollama 下载

目录

Ollama

安装软件(Windows)

安装软件(Linux)

安装软件(Docker)最简单

下载模型

下载Ollama内置的模型

下载llama3模型(亲测垃圾机房都可以跑起来)

下载DeepSeek-V3模型

运行模型

搭建Web环境


Ollama

Ollama 是一个开源的大型语言模型服务工具,旨在帮助用户在本地环境中部署和运行大规模预训练语言模型(LLM)。它通过简化模型的下载、安装和管理流程,使得用户能够快速地在本地运行这些模型,并且支持多种流行模型如 GPT-4 和 LLaMA 等。

Ollama 提供了多种功能,包括:

  1. 模型管理:用户可以通过命令行工具(如 ollama serveollama runollama pull 等)来启动服务、运行模型、拉取模型、推送模型等操作。

  2. 多 GPU 支持:Ollama 支持多 GPU 配置,可以优化模型的运行效率,适应不同的计算资源需求。

  3. 热加载模型:用户可以在不重新启动服务的情况下切换不同的模型,这使得 Ollama 在灵活性和效率上具有优势。

  4. API 兼容性:Ollama 提供了与 OpenAI 兼容的 API 接口,方便用户通过 API 调用模型进行任务处理。

  5. Web 界面和客户端支持:Ollama 支持通过 WebUI 访问,并提供了多种客户端库(如 ollama-js 和 ollama-python),方便开发者在不同平台和语言环境中使用。

Ollama 的核心优势:

  1. 简单易用。用户只需通过简单的安装指令即可在本地运行复杂的 AI 模型。

  2. 通用性。可以在多种应用中使用,包括web方式部署。

  3. 安全性和私密性。模型、数据处理流程运行在本地机器。

  4. 支持并行请求和并发处理,进一步提升了其在多任务场景下的性能。

安装软件(Windows)

首先安装Ollama,它可以让我们非常方便地运行各种LLM。从Ollama官网直接下载傻瓜式安装即可,安装完成后在命令行测试Ollama是否已正常运行:

ollama -v

注意:Ollama默认安装在C盘中,如果想安装在别的盘,需要使用命令指定安装路径进行安装

OllamaSetup.exe /DIR=目录所在路径
例:OllamaSetup.exe /DIR=D:\LLM\OLLAMA

更改Ollama存储下载模型的位置(这个会占用很大的空间,建议修改),而不是使用你的C盘用户的AppData存储,可以在你的用户账户中设置环境变量 OLLAMA_MODELS。默认是安装在C盘用户的AppData中。如果 Ollama 已经在运行,请退出系统托盘中的应用程序,然后从开始菜单或在保存环境变量后启动的新终端中重新启动它。在cmd窗口中直接运行以下命令即可!

#默认安装路径
macOS: ~/.ollama/models 
Linux: **/usr/share/ollama/.ollama/models**
Windows: C:Users<username>.ollamamodels


set OLLAMA_MODELS=路径所在位置
例:set OLLAMA_MODELS=D:\LLM\OLLAMAMODELS

安装软件(Linux)

Ollama的安装极为简单,只需在终端中执行以下命令:

curl -fsSL https://ollama.com/install.sh | sh
#启动服务
sudo systemctl daemon-reload
sudo systemctl enable ollama
sudo systemctl start ollama

更改Ollama存储下载模型的位置

关闭ollama服务,命令停止:

sudo systemctl stop ollama
sudo systemctl disable ollama.service

默认下的路径:/usr/share/ollama/.ollama/models

先创建一个新文件夹,用于存储模型

sudo mkdir /path/to/ollama/models

路径下的文件的权限用户和组都要是root,并且权限全开,为777

如果不是,可以用如下命令设置:
将目标路径的所属用户和组改为root

sudo chown -R root:root /path/to/ollama/models
sudo chmod -R 777 /path/to/ollama/models

更改service文件

sudo vim /etc/systemd/system/ollama.service

[Service]下面加入一行新的Environment,新一行!

Environment="OLLAMA_MODELS=/path/to/ollama/models" # 记得替换路径!!!

这里注意UserGroup都要设成root

重载配置并重启ollama

sudo systemctl daemon-reload
sudo systemctl restart ollama.service

可以删除默认的模型路径,让它重新生成

安装软件(Docker)最简单

一句话安装Ollama和WebUI

docker run -d -p 3000:8080 --gpus=all -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama

这个命令的作用是:启动一个名为 open-webui 的容器,基于 ghcr.io/open-webui/open-webui:ollama 镜像。容器将在后台运行,暴露端口 8080,并将其映射到宿主机的端口 3000。
容器会使用所有可用的 GPU,且具有持久化存储(ollama 和 open-webui 卷)。
如果容器停止,它会自动重启,确保服务持续运行。这是一个针对 Web 应用程序的 Docker 配置,可能用于机器学习或 Web 服务的部署,尤其是在有 GPU 加速需求时。

安装后,可以通过http://localhost:3000访问 Open WebUI,初次访问会让你创建管理员账号,创建好即可!注意:初次也是没有模型的也就不能用,所以需要自行下载模型,可以使用以下命令直接完成阿里通义千问4b-chat模型的下载(没有好的网络和镜像可能很卡),如需要其他模型可看下面的教程,无非就是进入docker镜像里面操作。

docker exec -it ollama ollama run qwen:4b-chat

下载模型

下载Ollama内置的模型

Ollama可以直接下载内置的几种模型,但选择有限

内置的模型可通过以下命令直接拉取:

ollama pull 模型名称
例:ollama pull qwen2.5

下载llama3模型(亲测垃圾机房都可以跑起来)

HuggingFace(需要梯子)搜索llama3 ,设置LanguagesChinese,可以看到若干基于LLaMa3的中文模型

选择一个GGUF格式的模型,GGUF格式是llama.cpp团队搞的一种模型存储格式,一个模型就是一个文件,方便下载:

点击Files,可以看到若干GGUF文件,其中,q越大说明模型质量越高,同时文件也更大,我们选择q6,直接点击下载按钮,把这个模型文件下载到本地。

下载到本地的模型文件不能直接导入到Ollama,需要编写一个配置文件,随便起个名字,如config.txt,配置文件内容如下:

FROM "./Llama3-8B-Chinese-Chat.q6_k.GGUF"

TEMPLATE """{{- if .System }}
<|im_start|>system {{ .System }}<|im_end|>
{{- end }}
<|im_start|>user
{{ .Prompt }}<|im_end|>
<|im_start|>assistant
"""

SYSTEM """"""

PARAMETER stop <|im_start|>
PARAMETER stop <|im_end|>

第一行FROM "..."指定了模型文件路径,需要修改为实际路径(我这里配置的就是在当前路径下有个Llama3-8B-Chinese-Chat.q6_k.GGUF文件),后面的模板内容是网上复制的,无需改动。

然后,使用以下命令导入模型:

ollama create llama3-cn -f ./config.txt

llama3-cn是我们给模型起的名字,成功导入后可以用list命令查看:

ollama list

NAME              ID            SIZE    MODIFIED
llama3-cn:latest  f3fa01629cab  6.6 GB  2 minutes ago

可以下载多个模型,给每个模型写一个配置文件(仅需修改路径),导入时起不同的名字,我们就可以用Ollama方便地运行各种模型。

下载DeepSeek-V3模型

 在HuggingFace(需要梯子)搜索deepseek,找到后缀为GGUF的都可以

选择Use this model,然后点击Ollama,然后点击Copy就可以把拉取命令拷贝到剪切板上,通过以下命令就可以安装DeepSeek-V3

ollama run hf.co/bullerwins/DeepSeek-V3-GGUF:BF16

运行模型

使用Ollama的run命令可以直接运行模型。我们输入命令

ollama run llama3-cn

搭建Web环境

使用命令行交互不是很方便,所以我们需要另一个使用Vue开源的[ollama-gui],搭建一个能通过浏览器访问的界面,这个比较轻量化使用体验还可以。直接把代码拉取下来使用Node.js16及以上版本进行构建即可!

标签:安装,Ollama,模型,sudo,本地,ollama,下载
From: https://blog.csdn.net/m0_63823719/article/details/144937845

相关文章

  • 大模型基础组件 - 位置编码
    为什么需要位置编码自注意力机制没有顺序感知:Transformer模型中的自注意力(Self-Attention)机制计算的是输入序列中所有位置的元素之间的关系,而这些关系仅仅依赖于元素的内容,而不考虑它们在序列中的顺序。例如,模型并不能自动地识别“第一个词”和“最后一个词”之间的顺序关系......
  • 4.3 C++对象模型和this指针
    4.3.1成员变量和成员函数分开存储只有非静态成员变量才属于类的对象上1.空对象占用的内存空间为1,为了区分空对象占用的位置2.非静态成员变量占用4个内存空间,属于类的对象上的3.静态成员变量static不占对象空间,不属于类的对象上的4.函数不占对象空间,所有函数共享一个......
  • 本地搭建ElasticSearch
    1:在elastic.co下载安装包https://www.elastic.co/downloads/elasticsearchwindows版本的是个zip包,下载解压缩后可直接通过命令行运行cd[安装路径]/binelasticsearch2:配置默认需要ssl、密码等安全配置,会导致localhost:9200访问失败。可通过以下方式关闭安全配置,再重启服务......
  • 【零基础到精通】AI大模型技术基础学习路线:掌握必备能力,轻松成为大模型专家!
    “**大模型技术的基础学习,是未来在大模型领域能否站稳脚跟的关键**”随着大模型技术的发展,越来越多的人开始进入大模型领域,但大模型作为一门技术,因此它的本质上是一个工具,因此这也让学习大模型有了不同的学习方向。从工具的角度来看,学习一个工具主要有两个方向,一个是使......
  • 为什么要把数据模型分为:Entity,DTO,Response,Request呢?具体有什么作用呢
    开发中,我们通常把数据模型分为几个部分,探讨下他们具体都有那些作用。1.Entity(实体)实体类代表数据库表结构,与数据库表一一对应。//例如User.cspublicclassUser:BaseEntity{publicstringUsername{get;set;}publicstringPassword{get;set;}/......
  • 大模型agent开发之给agent增加记忆的方法
    增加memory的方法给langchain的内置agent增加memory,本方法首先通过ConversationBufferMemory实例化并传递到initialize_agent的memory参数中,从而实现对话记忆的功能,还使用MessagePlaceHolder,该方法可以将memory的key传递到提示词模版中,提升agent记忆能力。fromlangchain......
  • 自学资料 - Dalle2模型 - 文生图技术
    Dalle2模型-论文中为unCliP目录Dalle2模型-论文中为unCliP1.Dalle2的引言2.GAN模型优缺点优点缺点3.AE和DAE(denoisingAE)原理共同点4.VAE(变分自编码器)优点5.VQVAE(向量自编码器)原理优点6.Dalle模型原理7.Diffusion模型模型更新过程优点缺点:8.Dalle2......
  • 基于SMO+PLL滑膜观测器、MARS模型参考自适应观测器二合一的simulink仿真模型
      一、在永磁同步电机滑模观测器控制中,转子的位置和转速信息与反动电势密切相关。滑模观测器控制基本设计思路是:利用永磁同步电机的电压、电流信息,通过永磁同步电机数学模型,估算出电机在两相静止坐标系中的反电动势信息,估算出转子位置与转速,分别将其反馈给矢量控制的电流环......
  • 基于simulink的HSMO高阶滑膜观测器仿真模型
     一、引言高阶滑模观测器(HSMO)‌是一种基于滑模变结构理论的观测器,主要用于实时估计电机转子的位置和速度。它通过设计合适的滑模面和控制器,能够在电机运动过程中实现快速而准确的转子位置和速度估计‌。工作原理高阶滑模观测器的工作原理基于滑模控制理论,通过设计特定的滑......
  • DeepSurv:Cox比例风险深度神经网络模型(神经网络+疾病预后模型)
    DeepSurv,一个Cox比例风险深度神经网络和先进的生存分析方法,用于模拟患者的预后变量(协变量)与治疗效果之间的相互作用。一、Cox比例风险模型当下,医学研究者使用生存模型来评估预后变量在如死亡或癌症复发等结果中的重要性。一个常用且标准的生存模型是Cox比例风险模型 (CPH......