Ollama简介

Ollama 是一个开源的大型语言模型(LLM)平台,旨在让用户能够轻松地在本地运行、管理和与大型语言模型进行交互。

Ollama 提供了一个简单的方式来加载和使用各种预训练的语言模型,支持文本生成、翻译、代码编写、问答等多种自然语言处理任务。

Ollama 的特点在于它不仅仅提供了现成的模型和工具集,还提供了方便的界面和 API,使得从文本生成、对话系统到语义分析等任务都能快速实现。

与其他 NLP 框架不同,Ollama 旨在简化用户的工作流程,使得机器学习不再是只有深度技术背景的开发者才能触及的领域。

Ollama 支持多种硬件加速选项,包括纯 CPU 推理和各类底层计算架构(如 Apple Silicon),能够更好地利用不同类型的硬件资源。

官方网站:https://ollama.com/download

Ollama安装

Windows 系统安装

访问官网下载安装包

打开浏览器,访问 Ollama 官方网站:https://ollama.com/download,下载适用于 Windows 的安装程序。
下载地址为:https://ollama.com/download/OllamaSetup.exe。
下载完成后,双击安装程序并按照提示完成安装。
在这里插入图片描述

更改安装路径(可选)

如果需要将 Ollama 安装到非默认路径,可以在安装时通过命令行指定路径,例如:

OllamaSetup.exe /DIR="d:\some\location"

这样可以将 Ollama 安装到指定的目录。

验证安装

打开命令提示符或 PowerShell,输入以下命令验证安装是否成功:

ollama --version

在这里插入图片描述
如果显示版本号,则说明安装成功。

macOS 系统安装

访问官网下载安装包

打开浏览器,访问 Ollama 官方网站:https://ollama.com/download,下载适用于 macOS 的安装程序。
下载地址为:https://ollama.com/download/Ollama-darwin.zip。
下载完成后,双击安装包并按照提示完成安装。

安装完成后,通过以下命令验证:

ollama --version

如果显示版本号,则说明安装成功。

Linux 系统安装

Linux 下可以使用一键安装脚本,我们打开终端,运行以下命令:

curl -fsSL https://ollama.com/install.sh | bash

安装完成后,通过以下命令验证:

ollama --version

如果显示版本号,则说明安装成功。

Docker 安装

如果你熟悉 Docker,也可以通过 Docker 安装 Ollama。

官方 Docker 镜像 ollama/ollama 可在 Docker Hub 上获取:https://hub.docker.com/r/ollama/ollama。

拉取 Docker 镜像:

docker pull ollama/ollama

运行容器:

docker run -p 11434:11434 ollama/ollama

访问 http://localhost:11434 即可使用 Ollama。

Ollama 运行模型

命令行运行

Ollama 运行模型使用 ollama run 命令。

ollama run deepseek-r1:671b

Ollama 支持的模型可以访问:https://ollama.com/library
在这里插入图片描述

python SDK运行

安装 Python SDK

首先,需要安装 Ollama 的 Python SDK,打开终端,执行以下命令:

pip install ollama

编写 Python 脚本

接下来,你可以使用 Python 代码来加载和与模型交互。

以下是一个简单的 Python 脚本示例,演示如何使用 LLama3.2 模型来生成文本:
实例
import ollama
response = ollama.generate(
model=“llama3.2”, # 模型名称
prompt=“你是谁。” # 提示文本
)
print(response)

运行 Python 脚本

在终端中运行你的 Python 脚本:

python test.py

你会看到模型根据你的输入返回的回答。

对话模式

实例

from ollama import chat
response = chat(
    model="llama3.2",
    messages=[
        {"role": "user", "content": "为什么天空是蓝色的?"}
    ]
)
print(response.message.content)

此代码会与模型进行对话,并打印模型的回复。

流式响应

实例

from ollama import chat
stream = chat(
    model="llama3.2",
    messages=[{"role": "user", "content": "为什么天空是蓝色的?"}],
    stream=True
)
for chunk in stream:
    print(chunk["message"]["content"], end="", flush=True)

此代码会以流式方式接收模型的响应,适用于处理大数据。

Ollama相关命令

模型管理

拉取模型
从模型库中下载模型:

ollama pull <model-name>

例如:

ollama pull llama2

运行模型

运行已下载的模型:

ollama run <model-name>

例如:

ollama run llama2

列出本地模型

查看已下载的模型列表:

ollama list

删除模型

删除本地模型:

ollama rm <model-name>

例如:

ollama rm llama2

自定义模型

创建自定义模型

基于现有模型创建自定义模型:

ollama create <custom-model-name> -f <Modelfile>

例如:

ollama create my-llama2 -f ./Modelfile

复制模型

复制一个已存在的模型:

ollama cp <source-model-name> <new-model-name>

例如:

ollama cp llama2 my-llama2-copy

推送自定义模型

将自定义模型推送到模型库:

ollama push <model-name>

例如:

ollama push my-llama2

服务管理

启动 Ollama 服务

启动 Ollama 服务以在后台运行:

ollama serve

停止 Ollama 服务

停止正在运行的 Ollama 服务:

ollama stop

重启 Ollama 服务

重启 Ollama 服务:

ollama restart

其他常用命令

查看帮助

查看所有可用命令:

ollama --help

查看版本信息

查看当前安装的 Ollama 版本:

ollama version

更新 Ollama

更新 Ollama 到最新版本:

ollama update

查看日志

查看 Ollama 的日志信息:

ollama logs

清理缓存

清理 Ollama 的缓存:

ollama clean

模型信息

查看模型详细信息

查看指定模型的详细信息:

ollama show <model-name>

例如:

ollama show llama2

查看模型依赖

查看模型的依赖关系:

ollama deps <model-name>

例如:

ollama deps llama2

查看模型配置

查看模型的配置文件:

ollama config <model-name>

例如:

ollama config llama2

导入与导出

导出模型

将模型导出为文件:

ollama export <model-name> <output-file>

例如:

ollama export llama2 llama2.tar

导入模型

从文件导入模型:

ollama import <input-file>

例如:

ollama import llama2.tar

系统信息

查看系统信息

查看 Ollama 的系统信息:

ollama system

查看资源使用情况

查看模型的资源使用情况:

ollama resources <model-name>

例如:

ollama resources llama2

模型性能

查看模型性能

查看模型的性能指标:

ollama perf <model-name>

例如:

ollama perf llama2

模型历史

查看模型历史记录
查看模型的历史记录:

ollama history <model-name>

例如:

ollama history llama2

模型状态

检查模型状态

检查指定模型的状态:

ollama status <model-name>

例如:

ollama status llama2

Ollama 模型交互

Ollama 提供了多种方式与模型进行交互,其中最常见的就是通过命令行进行推理操作。

命令行交互

通过命令行直接与模型进行交互是最简单的方式。

运行模型
使用 ollama run 命令启动模型并进入交互模式:

ollama run <model-name>

例如我们下载 deepseek-coder 模型:

实例

ollama run deepseek-coder

启动后,您可以直接输入问题或指令,模型会实时生成响应。

>>> 你好,你能帮我写一段代码吗?
当然可以。但是首先我想知道您希望在哪种编程语言中实现这个功能(例如Python、JavaScript等)和要解决什么问题或者完成的任务是什么样的例子呢?这样我们可以为您提供更准确的
内容,同时也方便我帮助你写出最适合您的代码片段。


>>> 写一段 python hello world
当然可以!这是一个简单的 "Hello, World!" 程序:
print("Hello, World!")

这个脚本会输出 Hello, World!,并将其打印到控制台上。这只是最基本的 Python Hello world示例;Python是一种解释型、通用型的编程语言以其简洁性和易读性而闻名。它还允许
用户在代码中插入变量和表达式来创建复杂的行为。
退出交互模式
在交互模式下,输入 /bye 或按下 Ctrl+d 退出。

单次命令交互

如果您只需要模型生成一次响应,可以直接在命令行中传递输入。

使用管道输入
通过管道将输入传递给模型:

实例

echo "你是谁?" | ollama run deepseek-coder

输出结果如下:

我是由中国的深度求索(DeepSeek)公司开发的编程智能助手,名为DeepCoder。我专注于解答计算机科学相关的问题和任务。如果你有任何关于这个领域的话题或者需要帮助的地方,请
随时提问!

使用命令行参数
直接在命令行中传递输入:

ollama run deepseek-coder "Python 的 hello world 代码?"

输出结果如下:
在 Python 中,“Hello World!” 通常是这段简单的脚本:

print("Hello World!")

当你运行这个程序时,它会输出 Hello, World。这是因为 print() 函数将字符串 “Hello, World” 打印到标准输出设备 (stdout) - 也就是你的屏幕上显示的信息(在这种情况下是命
令行终端或类似的工具中运行 Python 脚本时,它会直接写入控制台。

多轮对话

Ollama 支持多轮对话,模型可以记住上下文。

实例

>>> 你好,你能帮我写一段 Python 代码吗?
当然可以!请告诉我你需要实现什么功能。

>>> 我想写一个计算斐波那契数列的函数。
好的,以下是一个简单的 Python 函数:
def fibonacci(n):
    if n <= 1:
        return n
    else:
        return fibonacci(n-1) + fibonacci(n-2)

文件输入

可以将文件内容作为输入传递给模型。

假设 input.txt 文件内容为:

Python 的 hello world 代码?
将 input.txt 文件内容作为输入:

ollama run deepseek-coder < input.txt

自定义提示词

通过 Modelfile 定义自定义提示词或系统指令,使模型在交互中遵循特定规则。

创建自定义模型

编写一个 Modelfile:(Modelfile文件为以Modelfile命名无扩展名的文件)
在这里插入图片描述

实例

FROM deepseek-coder
SYSTEM "你是一个编程助手,专门帮助用户编写代码。"
然后创建自定义模型:
ollama create runoob-coder -f ./Modelfile
运行自定义模型:
ollama run runoob-coder

在这里插入图片描述

交互日志

Ollama 会记录交互日志,方便调试和分析。

查看日志:

ollama logs

创建模型

准备Modelfile文件

FROM deepseek-r1
SYSTEM "你是华星重工智能助理,专门帮助华星重工及客户解决问题"

在ollama官网创建一个模型

在这里插入图片描述

ollama配置本地秘钥

找到本地的秘钥

不同系统对应的地址如下:

macOS

~/.ollama/id_ed25519.pub

Linux

/usr/share/ollama/.ollama/id_ed25519.pub

Windows

C:\Users\<username>\.ollama\id_ed25519.pub

Next, add it as a key in settings↗.

点击settings将本地的秘钥添加进去

推送本地模型到ollama

使用命名行进行推送

ollama push rckj/hxjx-AI

Ollama Open WebUI

Open WebUI 用户友好的 AI 界面(支持 Ollama、OpenAI API 等)。

Open WebUI 支持多种语言模型运行器(如 Ollama 和 OpenAI 兼容 API),并内置了用于检索增强生成(RAG)的推理引擎,使其成为强大的 AI 部署解决方案。

Open WebUI 可自定义 OpenAI API URL,连接 LMStudio、GroqCloud、Mistral、OpenRouter 等。

Open WebUI 管理员可创建详细的用户角色和权限,确保安全的用户环境,同时提供定制化的用户体验。

Open WebUI 支持桌面、笔记本电脑和移动设备,并提供移动设备上的渐进式 Web 应用(PWA),支持离线访问。

开源地址:https://github.com/open-webui/open-webui

官方文档:https://docs.openwebui.com/

安装

Open WebUI 提供多种安装方式,包括通过 Python pip 安装、Docker 安装、Docker Compose、Kustomize 和 Helm 等。

使用 Docker 快速开始

如果 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

使用 Nvidia GPU 支持运行 Open WebUI:

docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda
Open WebUI 与 Ollama 捆绑安装

此安装方法使用一个单一的容器镜像,将 Open WebUI 与 Ollama 捆绑在一起,可以通过一个命令轻松设置。

根据你的硬件配置选择合适的命令。

启用 GPU 支持:

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
仅使用 CPU:

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
这两个命令都能帮助你简化安装过程,让 Open WebUI 和 Ollama 无缝运行。

安装完成后,你可以通过访问 http://localhost:3000 使用 Open WebUI。

更新 Open WebUI

手动更新

使用 Watchtower 手动更新 Docker 容器:

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once open-webui
自动更新

每 5 分钟自动更新容器:

docker run -d --name watchtower --restart unless-stopped -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --interval 300 open-webui

注意:如果你的容器名不同,请将 open-webui 替换为你的容器名。

手动安装

Open WebUI 的安装有两种主要方法:使用 uv runtime manager 或 Python 的 pip。

推荐使用 uv,因为它简化了环境管理,减少了潜在的冲突。

使用 uv 安装(推荐)
macOS/Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

运行 Open WebUI

安装 UV 后,运行 Open WebUI 就比较简单了。

使用以下命令,确保设置 DATA_DIR 环境变量,以避免数据丢失。

macOS/Linux:

DATA_DIR=~/.open-webui uvx --python 3.11 open-webui@latest serve

Windows:

$env:DATA_DIR="C:\open-webui\data"; uvx --python 3.11 open-webui@latest serve

通过 pip 安装

Open WebUI 可以通过 Python 的包安装程序 pip 进行安装,在开始安装之前,请确保您使用的是 Python 3.11,以避免可能出现的兼容性问题。

打开您的终端,运行以下命令以安装 Open WebUI:

pip install open-webui

安装完成后,您可以通过以下命令启动 Open WebUI:

open-webui serve

启动后,Open WebUI 服务器将运行在 http://localhost:8080,您可以通过浏览器访问该地址来使用 Open WebUI。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐