当前位置: 首页 > news >正文

【LLM】Ollama:本地大模型使用

本指南将详细介绍如何在Linux系统上使用Ollama进行本地大模型的快速部署与管理。通过Docker容器化技术,您可以轻松部署Ollama及其WebUI,实现通过浏览器访问和管理大型语言模型。

快速部署,Web访问

安装Docker

根据操作系统下载并安装 Docker Desktop(Windows/macOS)或使用包管理工具(如 apt)安装 Docker(Linux)。

使用Ollama和Open WebUI独立部署

部署Ollama容器

首先,启动Ollama服务容器。

docker run -d --name ollama \-p 11434:11434 \-v ollama_data:/ollama/data \--restart always \ollama/ollama:latest

命令解析:

  • -d:后台运行容器。
  • --name ollama:指定容器名称为ollama
  • -p 11434:11434:将主机的11434端口映射到容器的11434端口,用于API访问。
  • -v ollama_data:/ollama/data:挂载卷,确保数据持久化。
  • --restart always:设置容器自动重启策略。
  • ollama/ollama:latest:指定使用最新版本的Ollama镜像。
部署Open WebUI容器

接下来,启动Open WebUI服务容器,并连接到本地运行的Ollama服务。

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

命令解析:

  • -d:后台运行容器。
  • -p 3000:8080:将主机的3000端口映射到容器的8080端口,用于WebUI访问。
  • --add-host=host.docker.internal:host-gateway:在容器内添加主机的内部地址,使WebUI能够访问本地Ollama服务。
  • -v open-webui:/app/backend/data:挂载卷,确保WebUI数据持久化。
  • --name open-webui:指定容器名称为open-webui
  • --restart always:设置容器自动重启策略。
  • ghcr.io/open-webui/open-webui:main:指定使用Open WebUI的主分支镜像。
访问Open WebUI

部署完成后,通过浏览器访问http://localhost:3000即可打开Open WebUI界面。在此界面中,您可以:

  • 输入提示(prompt)与大模型进行交互。
  • 管理和切换不同的模型。
  • 调整生成参数,如温度(temperature)和最大生成长度(max_tokens)。

使用Bundled Ollama进行一体化部署

Bundled Ollama提供了一个包含Open WebUIOllama的单一Docker镜像,简化了部署过程,适合希望快速上手且不需要单独管理服务的用户。

使用CPU进行部署

如果您的系统不具备NVIDIA GPU,或者不需要GPU加速,可以使用以下命令启动Bundled Ollama:

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

命令解析:

  • -d:后台运行容器。
  • -p 3000:8080:将主机的3000端口映射到容器的8080端口,用于WebUI访问。
  • -v ollama:/root/.ollama:挂载卷,确保Ollama数据持久化。
  • -v open-webui:/app/backend/data:挂载卷,确保WebUI数据持久化。
  • --name open-webui:指定容器名称为open-webui
  • --restart always:设置容器自动重启策略。
  • ghcr.io/open-webui/open-webui:ollama:指定使用Bundled Ollama的镜像。
使用Nvidia GPU支持进行部署

如果您的系统配备NVIDIA GPU,并希望利用GPU加速模型推理,请确保已安装NVIDIA Container Toolkit以支持GPU资源分配。然后,使用以下命令启动Bundled Ollama:

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

命令解析:

  • --gpus all:将所有可用的GPU资源分配给容器,以加速模型推理。
  • 其他参数与CPU部署方法相同。
访问Open WebUI

同样,通过浏览器访问http://localhost:3000即可打开Open WebUI界面。由于Bundled Ollama已经包含了Ollama服务,您无需进行额外的配置即可开始使用。

停止和管理容器

无论您选择哪种部署方法,都可以使用以下Docker命令来管理Open WebUIOllama容器。

查看正在运行的容器
docker ps
停止容器
docker stop open-webui
docker stop ollama
启动已停止的容器
docker start open-webui
docker start ollama
重启容器
docker restart open-webui
docker restart ollama
查看容器日志
docker logs open-webui
docker logs ollama
删除容器
docker rm open-webui
docker rm ollama

注意: 删除容器不会删除挂载的卷中的数据。如果需要删除数据,请手动移除相应的Docker卷:

docker volume rm open-webui
docker volume rm ollama_data

管理数据卷

在 Docker 中,数据卷用于持久化容器中的数据。您在部署命令中使用了以下数据卷:

  • -v ollama_data:/ollama/data
  • -v open-webui:/app/backend/data
列出和查看数据卷

要查看系统中的所有 Docker 数据卷,使用以下命令:

docker volume ls

要获取特定数据卷的信息,如 ollama_data,使用:

docker volume inspect ollama_data
备份数据卷

可以使用 tar 命令将数据卷备份:

docker run --rm -v ollama_data:/volume -v $(pwd):/backup alpine tar czf /backup/ollama_data_backup.tar.gz -C /volume .
恢复数据卷

从备份恢复数据卷:

docker run --rm -v ollama_data:/volume -v $(pwd):/backup alpine sh -c "tar xzf /backup/ollama_data_backup.tar.gz -C /volume"
删除数据卷

删除数据卷(例如 ollama_data):

docker volume rm ollama_data
主机目录作为数据卷

可以将主机目录挂载为数据卷以直接访问和管理数据:

docker run -d --name ollama -v /home/user/ollama_data:/ollama/data --restart always ollama/ollama:latest

管理Ollama

除了部署和运行,您还需要了解如何管理Ollama,包括进入容器、执行常用指令等。

进出容器

有时您需要进入运行中的Docker容器,执行一些管理任务或查看配置。

进入容器
docker exec -it ollama /bin/bash

命令解析:

  • exec:在运行的容器中执行命令。
  • -it:交互式终端。
  • open-webui:容器名称。
  • /bin/bash:启动bash shell。
退出容器

在容器内执行exit命令即可退出交互式会话。

exit

Ollama常用指令

在管理Ollama时,以下是一些常用的命令和指令:

查看可用模型列表
ollama list
下载模型
ollama pull <model-name>

例如,下载qwen2.5:0.5b模型:

ollama pull qwen2.5:0.5b
运行模型
ollama run <model-name>

例如:

ollama run qwen2.5:0.5b
删除模型
ollama rm <model-name>

例如:

ollama rm qwen2.5:0.5b
查看已下载的模型
ollama models
获取Ollama版本信息
ollama version
查看Ollama帮助信息
ollama help

http://www.mrgr.cn/news/33284.html

相关文章:

  • 从编辑器到自动化脚本,提高编程效率的必备工具秘籍
  • 【C语言】const char*强制类型转换 (type cast)的告警问题
  • Qt 每日面试题 -2
  • react:React Hook函数
  • 华为OD机试真题-IPv4地址转换成整数-2024年OD统一考试(E卷)
  • 打开C嘎嘎的大门:你好,C嘎嘎!(2)
  • 语言RPA流程组件介绍--获取网页信息
  • 上位机图像处理和嵌入式模块部署(linux小系统开发)
  • 字符串 下【KMP再续】
  • GitHub每日最火火火项目(9.22)
  • 【Elasticsearch系列十八】Ik 分词器
  • 解锁电商新视野:京东商品详情API——您的精准商品信息探索利器
  • Java后端中的延迟队列实现:使用Redis与RabbitMQ的不同策略
  • AI学习指南深度学习篇-Adadelta简介
  • JavaScript(二)
  • 【Linux 从基础到进阶】 AWS云服务在Linux上的应用
  • C\C++内存管理详解
  • PHP在将数据存储到数据库之前如何转义数据
  • Java项目实战II基于Java+Spring Boot+MySQL的植物健康系统(开发文档+源码+数据库)
  • 算法题之每日温度