如果你想运行自己的大型语言模型,比如 ChatGPT,你很幸运。到目前为止,Ollama 是我的最爱之一。

在本教程中,我们将在您的 Ubuntu 机器上使用 WebUI 设置 Ollama。这是运行自己的 LLM 进行学习和实验的好方法,而且它是私有的——所有这些都在你自己的机器上运行。

Ubuntu 系统

系统使用:buntu 24.04 LTS。 默认系统没有安装其他软件,可以涵盖你可能需要的依赖项。

使用 Ubuntu 在本地部署运行Ollama_本地 LLM

因为要使用大模型,所以机器默认配备了一块 NVidia 卡,它有很大帮助,但也增加了复杂性,所以我们将介绍如何使用 Nvidia 卡进行安装。

检查您的驱动程序

如果您有 Nvidia 卡,则必须安装驱动程序并让它工作,以便 Ollama 使用它。

您可以检查

nvidia-smi -a

nvidia smi

以验证功能。

使用 Ubuntu 在本地部署运行Ollama_docker_02

获取 Ollama

我们今天将使用的工具在我们的机器上运行大型语言模型是 Ollama。这是一款很棒的产品。它具有易于安装和使用,同时又非常强大的罕见组合。

因此,我们前往 Ollama.com

前往下载

对于 Linux,你会得到一个脚本:

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

有些人对远程 shell 脚本执行感到紧张。如果你愿意,你可以拿起这个脚本,打开它,看看有没有你不喜欢的地方。

wget https://ollama.com/install.sh

使用 Ubuntu 在本地部署运行Ollama_docker_03

我是第一次这样做,这里没有什么奇怪的可担心的。

运行脚本后,它应该如下所示:

使用 Ubuntu 在本地部署运行Ollama_Nvidia Container Too_04

请注意,它显示“已安装 NVIDIA GPU”。如果您有正确配置的 Nvidia 卡,您应该会看到这一点。

获得您的第一个模型

让我们找一个大型语言模型来玩。

回到 Ollama 页面,我们将单击模型。

使用 Ubuntu 在本地部署运行Ollama_Ubuntu_05

在此页面上,如果您想尝试AI大模型的乐趣,可以从多种模型中进行选择。

这是我最近尝试过的 llama3 模型,反应速度很快捷。

在模型页面上,您可以通过下拉列表看到可用的不同模型:

使用 Ubuntu 在本地部署运行Ollama_本地 LLM_06

我们可以看到一个 70B、8B,并用这个模型进行指令和文本模型。

70B 是参数的数量。

一般来说,越大越好,但它需要更多的 GPU 能力和内存。

70B需要更大的内存、cpu、显卡,否则会非常慢和卡顿。

8B 是一款出色、快速的型号,占用空间更小(4.7GB 对 40GB)。

文本模型:这些模型针对聊天和与您进行“对话”进行了更优化。

指示模型:这些模型经过微调,可以遵循提示的指令,并针对被要求执行某些操作进行了优化。

对于此测试,我们将使用 llama3:8b 模型。

执行

ollama run llama3:8b

首次运行此操作时,需要下载模型。它只执行一次,然后加载速度要快得多。

使用 Ubuntu 在本地部署运行Ollama_docker_07

发送指令进行测试:

why is the sky blue?

我们可以看到反馈的提示界面。

使用 Ubuntu 在本地部署运行Ollama_本地 LLM_08

要退出此界面,请键入

/bye

您可以关闭它或运行另一个模型。


使用 Python 访问 Ollama API

使用 Python 访问 Ollama 非常容易。

创建新的 Python 环境:

python3 -m venv ollamatest
source ollamatest/bin/activate

然后安装 Ollama 库

pip install ollama

然后,创建简单的 Python 脚本,如下所示:

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

并运行它!

为 Ollama 创建 Web 界面

这个开源项目,提供了一个webui,打开 WebUI。它现在支持除 Ollama 之外的其他功能。

这是一个挺不错的项目,但设置起来比较麻烦,它运行在 Docker 容器中。

如果您查看 OpenUI 页面上的说明,如果您想运行内置 Ollama 和 Nvidia GPU 支持的 OpenUI,他们会为您提供一个 docker 命令,可以立即对其进行设置。但是,如果您使用的是新机器怎么办?为此需要安装什么?

步骤如下:

1. 添加 Docker

sudo apt install docker.io

为 Docker 添加组:

sudo groupadd docker

将您自己添加到此组:

sudo usermod -aG docker ${USER}

然后注销并重新登录。

2. 安装 Nvidia Container Toolkit

需要安装它,以便 Docker 容器中的应用程序可以使用 GPU。完整的说明在这里,但这里是目前完成此操作的命令。

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
 && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
 sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
 sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list

更新软件包列表:

sudo apt-get update

然后安装工具包:

sudo apt-get install -y nvidia-container-toolkit

并配置它:

sudo nvidia-ctk runtime configure --runtime=docker

现在你可以重新启动 docker,你应该准备好了。

sudo systemctl restart docker

太棒了,如果你没有错误,你就可以开始了。

3. 安装容器

现在运行以下命令:

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

它应该正在运行。

打开的 Web UI

加载 Web UI 后,您需要创建一个帐户。

使用 Ubuntu 在本地部署运行Ollama_本地 LLM_09

在设置中,您可以从 Ollama 下载模型。请注意,您还可以输入 OpenAI 密钥并在此界面中使用 ChatGPT。这是一个强大的工具,您绝对应该检查一下。

使用 Ubuntu 在本地部署运行Ollama_Ollama API_10

现在你有一个美观的AI聊天界面了!

使用 Ubuntu 在本地部署运行Ollama_docker_11

运行自己的本地 LLM 很有趣,您也不必担心月费或信息的泄露,它是完全私密的。