大语言模型极速部署:Ollama 、 One-API、OpenWebUi 完美搭建教程

ops/2025/2/7 12:55:28/

语言模型极速部署:Ollama 、 One-API、OpenWebUi 完美搭建教程

本文将介绍如何通过命令行工具部署 Ollama 和 One-API 以及 OpenWebUi,帮助你快速搭建私有化大模型。

  1. Ollama 是一个容器化工具,简化了大语言模型的管理与运行,支持模型的下载、运行、更新和删除。
  2. One-API 是一个开源 API 服务框架,通过 Docker 容器快速搭建 RESTful 接口,支持 SQLite 或 MySQL 数据库作为后端存储。
  3. OpenWebUI 提供了一个基于 Web 的用户界面,帮助用户通过简洁的操作与 Ollama 进行交互,管理和展示模型的运行状态。

一、安装 Ollama

Ollama 是一个容器化的应用,方便部署和管理 AI 模型。以下是安装 Ollama 的步骤。

1. 使用安装脚本安装 Ollama

首先,执行以下命令来安装 Ollama:

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

这会自动下载并执行安装脚本,安装完毕后,Ollama 应该已经成功安装到你的系统中。你可以通过以下命令验证安装是否成功:

ollama --version

如果你看到版本号输出,说明安装成功。

2. 常用命令

Ollama 提供了许多实用的命令,可以帮助你轻松管理 AI 模型和容器服务。

1. 查看 Ollama 版本

查看当前安装的 Ollama 版本:

ollama --version
2. 搜索模型

Ollama 提供了一个方便的搜索界面,可以让你快速查找并下载模型。访问以下链接来搜索模型:

Ollama 模型搜索地址

你可以根据关键词、类别或者模型类型搜索感兴趣的模型。

3. 列出已安装模型

查看当前 Ollama 上已经安装的所有模型:

ollama models list
4. 拉取(Pull)模型

要下载一个模型,你可以使用 ollama pull 命令。假设你已经找到并决定下载一个模型,例如 “gpt4”:

ollama pull gpt4

这会从 Ollama 的在线仓库下载 gpt4 模型,并将其存储到本地。

5. 运行模型

运行一个已下载的模型,你可以使用 ollama run 命令。例如,运行 gpt4 模型:

ollama run gpt4

这会启动 gpt4 模型并开始处理输入请求。

6. 删除已安装的模型

如果你不再需要某个模型,可以使用 ollama remove 命令删除它:

ollama remove gpt4
7. 更新模型

保持你的模型更新也是很重要的。使用以下命令来更新所有已安装的模型:

ollama update

3.Ollama 端口修改

如何自定义ollama的服务器地址和端口? #1357

添加 OLLAMA_HOST=0.0.0.0:6006 系统环境变量,并重启 ollama。

二、部署 One-API

One-API 是一个开源项目,可以帮助你在容器中快速搭建 API 服务。你可以选择使用 SQLite 或 MySQL 作为后端数据库存储。

1. 使用 SQLite 部署 One-API

如果你选择使用 SQLite 数据库进行存储,可以通过 Docker 来快速部署 One-API。

执行以下命令:

docker run --name one-api -d --restart always -p 3000:3000 -e TZ=Asia/Shanghai -v /data/one-api:/data justsong/one-api:v0.6.11-alpha.7
  • --name one-api:指定容器名称为 one-api
  • -d:让容器在后台运行。
  • --restart always:容器退出后会自动重启。
  • -p 3000:3000:映射容器的 3000 端口到宿主机的 3000 端口。
  • -e TZ=Asia/Shanghai:设置容器时区为上海。
  • -v /data/one-api:/data:将宿主机的 /data/one-api 目录挂载到容器内的 /data 目录,以便持久化数据。

如果你使用 SQLite,可以通过上述命令完成 One-API 的部署。

2. 使用 MySQL 部署 One-API

如果你希望使用 MySQL 数据库,你需要在上面的命令基础上增加数据库连接的环境变量。你可以通过如下命令进行部署:

docker run --name one-api -d --restart always -p 3000:3000 -e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi" -e TZ=Asia/Shanghai -v /data/one-api:/data justsong/one-api
  • -e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi":设置数据库连接字符串,root:123456 是数据库的用户名和密码,localhost:3306 是 MySQL 数据库的地址和端口,oneapi 是数据库名称。请根据实际情况修改这些参数。

3. 配置数据库

在使用 MySQL 时,你需要确保 MySQL 数据库已经安装并配置好。以下是 MySQL 数据库的创建和配置步骤:

  1. 登录 MySQL:

    mysql -u root -p
    
  2. 创建数据库:

    CREATE DATABASE oneapi;
    
  3. 创建数据库用户并授权:

    CREATE USER 'root'@'%' IDENTIFIED BY '123456';
    GRANT ALL PRIVILEGES ON oneapi.* TO 'root'@'%';
    FLUSH PRIVILEGES;
    
  4. 确保 MySQL 数据库正常运行,且可以通过 localhost:3306 进行访问。

4. 启动和验证服务

启动容器后,可以通过浏览器访问 http://localhost:3000 来验证 One-API 是否正常运行。如果看到 API 文档界面或者返回相关的数据,说明部署成功。

三、部署 OpenWebUI

OpenWebUi 是一个基于 Docker 容器的前端 WebUI,可以用于与 Ollama(一个机器学习平台)交互。它提供了一个简洁、易于使用的用户界面来管理和展示模型的运行状态。

1.运行 OpenWebUI 容器

打开终端,执行以下命令来拉取并启动 OpenWebUI 容器:

docker run -d -p 3001:8080 -e OLLAMA_BASE_URL=http://192.168.2.10:8080 -v /data/open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

参数说明:

  • -d: 在后台运行容器。
  • -p 3001:8080: 将主机的端口 3001 映射到容器的 8080 端口,这意味着你可以通过访问 http://localhost:3001 来使用 WebUI。
  • -e OLLAMA_BASE_URL=http://192.168.2.10:8080: 设置 Ollama 服务的基础 URL。确保这个地址正确并且 Ollama 服务正在运行。
  • -v /data/open-webui:/app/backend/data: 将主机的 /data/open-webui 路径挂载到容器内的 /app/backend/data 路径,用于持久化 OpenWebUI 的数据。
  • --name open-webui: 为容器指定一个名字 open-webui
  • --restart always: 配置容器在系统重启后自动重启。

2. 访问 OpenWebUI

容器启动完成后,你可以通过访问 http://localhost:3001 来使用 OpenWebUI。如果你在不同的机器或服务器上运行,替换 localhost 为服务器的 IP 地址。

3. 常见问题排查
  • 无法连接到 Ollama 服务:请检查 Ollama 是否正在运行,并确保 OLLAMA_BASE_URL 地址配置正确。
  • 端口被占用:如果 3001 端口已被其他应用占用,可以更改容器的映射端口,例如使用 -p 3002:8080

四、总结

通过 Docker 部署 Ollama 和 One-API以及OpenWebUi,可以帮助你快速搭建 AI 模型和 API 服务和Web交互。选择使用 SQLite 或 MySQL 数据库,具体根据你的需求来决定。如果有进一步的配置需求,可以参考相关文档。


http://www.ppmy.cn/ops/156440.html

相关文章

TongSearch3.0.4.0安装和使用指引(by lqw)

文章目录 安装准备手册说明支持的数据类型安装控制台安装单节点(如需集群请跳过这一节)解压和启动开启X-Pack Security和生成p12证书(之后配置内置密码和ssl要用到)配置内置用户密码配置ssl(先配置内置用户密码再配ssl)配置控制台…

linux环境自动化golang项目启动脚本解析

一.场景介绍 当在本地创建了golang项目,修改了代码功能,怎么在远程测试服务器上更新该功能呢,可以使用下面的步骤来解决该问题(这只是其中一种方法): (1).推送最新代码到远程仓库 (2).在测试服务器上创建该项目并拉取最新代码 (3).创建deploy.sh脚本 (4).运行deploy.sh脚本 二.…

deepseek接入pycharm 进行AI编程

要将DeepSeek接入PyCharm进行AI编程,可以按照以下步骤操作: ### 1. 获取DeepSeek API访问权限 DeepSeek通常以API的形式对外提供服务,你需要在其官方网站注册账号,申请API访问权限。在申请通过后,会获得API密钥(API Key),这是后续调用API的关键凭证。 ### 2. 安装必要…

游戏引擎 Unity - Unity 下载与安装

Unity Unity 首次发布于 2005 年,属于 Unity Technologies Unity 使用的开发技术有:C# Unity 的适用平台:PC、主机、移动设备、VR / AR、Web 等 Unity 的适用领域:开发中等画质中小型项目 Unity 适合初学者或需要快速上手的开…

visual studio安装

一、下载Visual Studio 访问Visual Studio官方网站。下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux 在主页上找到并点击“下载 Visual Studio”按钮。 选择适合需求的版本,例如“Visual Studio Community”(免费版本)&#x…

通过docker安装部署deepseek以及python实现

前提条件 Docker 安装:确保你的系统已经安装并正确配置了 Docker。可以通过运行 docker --version 来验证 Docker 是否安装成功。 网络环境:保证设备有稳定的网络连接,以便拉取 Docker 镜像和模型文件。 步骤一:拉取 Ollama Docker 镜像 Ollama 可以帮助我们更方便地管理…

图论——最小生成树

最小生成树 给定一个无向图,在图中选择若干条边把图的所有节点连起来。要求边长之和最小。在图论中,叫做求最小生成树。 prim算法 prim 算法采用的是一种贪心的策略。 每次将离连通部分的最近的点和点对应的边加入的连通部分,连通部分逐渐扩大…

python学opencv|读取图像(五十三)原理探索:使用cv.matchTemplate()函数实现最佳图像匹配

【1】引言 前序学习进程中,已经探索了使用cv.matchTemplate()函数实现最佳图像匹配的技巧,并且成功对两个目标进行了匹配。 相关文章链接为:python学opencv|读取图像(五十二)使用cv.matchTemplate()函数实现最佳图像…