1. 引言
本文主要采用ollama 和 open webui 进行大模型私有化部署。 以下是使用Markdown语法对Ollama框架特点和功能进行分类总结的输出:
Ollama 框架特点和功能概述
Ollama是一个开源框架,专为在本地机器上便捷部署和运行大型语言模型(LLM)而设计。gitlab 地址:https://github.com/ollama/ollama
以下是其主要特点和功能:
简化部署
目标:简化在Docker容器中部署大型语言模型的过程。
用户友好:使得非专业用户也能方便地管理和运行这些复杂的模型。
轻量级与可扩展
资源占用:作为轻量级框架,保持了较小的资源占用。
可扩展性:允许用户根据需要调整配置以适应不同规模的项目和硬件条件。
API支持
简洁API:提供简洁的API,方便开发者创建、运行和管理大型语言模型实例。
降低门槛:降低与模型交互的技术门槛。
预构建模型库
预先训练模型:包含一系列预先训练好的大型语言模型。
直接应用:用户可以直接选用这些模型应用于自己的应用程序。
模型导入与定制
从GGUF导入:支持从特定平台(如GGUF)Hugging Face 导入已有的大型语言模型。
从PyTorch或Safetensors导入:兼容这两种深度学习框架,允许用户集成模型到Ollama中。
自定义提示:允许用户添加或修改提示,引导模型生成特定类型或风格的文本输出。
跨平台支持
命令行工具与环境变量
命令行启动:通过命令
ollama serve
或其别名start
可以启动Ollama服务。环境变量配置:
OLLAMA_HOST
:用于指定服务绑定的主机地址和端口,默认值为127.0.0.1:11434
。OLLAMA_MODELS
:用于指定模型存储位置。不同系统默认存储路径如下macOS:
~/.ollama/modelsLinux:
/usr/share/ollama/.ollama/modelsWindows:
C:\Users<username>.ollama\models自定义配置:用户可以根据需要进行修改。
Open WebUI 概述
Open WebUI是一个可扩展、功能丰富且用户友好的自托管Web用户界面,设计用于完全离线操作。gitlab地址以下是其主要特点:
完全离线操作
自托管:用户可以完全控制自己的数据和操作环境。
离线运行:无需互联网连接即可运行,保障隐私和数据安全。
支持多种LLM运行器
Ollama支持:支持使用Ollama框架的大型语言模型。
OpenAI兼容:兼容OpenAI的API,方便用户接入和使用现有的OpenAI模型。
可扩展性
模块化设计:允许用户根据需要添加或移除功能模块。
定制化:用户可以根据自己的需求定制界面和功能。
用户友好
直观界面:提供直观易用的用户界面,降低使用门槛。
交互设计:注重用户体验,确保交互流畅。
易于集成
多种集成选项:支持与不同的后端服务和数据库集成。
简化部署过程:简化了与大型语言模型集成的复杂性,便于部署和维护。
OLLAMA 部署
修改/etc/hosts添加如下配置,加速ollama 安装
# github 注意下面的IP地址和域名之间有一个空格
140.82.114.3 github.com
199.232.69.194 github.global.ssl.fastly.net
185.199.108.153 assets-cdn.github.com
185.199.109.153 assets-cdn.github.com
185.199.110.153 assets-cdn.github.com
185.199.111.153 assets-cdn.github.com
执行安装命令
curl -fsSL https://ollama.com/install.sh | sh
部署成功
ollama --version
ollama version is 0.1.32
# 执行 ollama serve --help
ollama serve --help
Start ollama
Usage:
ollama serve [flags]
Aliases:
serve, start
Flags:
-h, --help help for serve
Environment Variables:
OLLAMA_HOST The host:port to bind to (default "127.0.0.1:11434")
OLLAMA_ORIGINS A comma separated list of allowed origins.
OLLAMA_MODELS The path to the models directory (default is "~/.ollama/models")
OLLAMA_KEEP_ALIVE The duration that models stay loaded in memory (default is "5m")
OLLAMA_DEBUG Set to 1 to enable additional debug logging
备注说明:ollama 模型 真实的存储路径如下:
macOS: ~/.ollama/models
Linux: /usr/share/ollama/.ollama/models
Windows: C:\Users\<username>\.ollama\models
修改模型存储路径
vim /etc/systemd/system/ollama.service
# 以下为配置文件
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/local/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=/opt/data1/app/anaconda3/envs/py3.11_llm/bin:/opt/data1/app/anaconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"
Environment="OLLAMA_MODELS=/mnt/data1/ollama/models"
[Install]
WantedBy=default.target
安装模型 Ollama 模型地址:https://ollama.com/library
ollama pull phi3

6. 查看模型配置修改是否生效
ls /mnt/data1/ollama/models/manifests/registry.ollama.ai/library/
llama3/ llava/ phi3/ qwen/ wizardlm2/
ollama run phi3
>>> 天空 是 什么颜色
在这里,我无法直接回答您的问题。但是可以告诉您,世界上有很多颜色,例如:红、青、黄、绿、蓝、紫等。根据您所在地区和设备的显示效果,这些颜色可能会有微妙的变化。
Open Ui 部署
Open webui 地址 https://github.com/open-webui/open-webui
Docker 加速安装代理网站:https://dockerproxy.com/
docker pull ghcr.dockerproxy.com/open-webui/open-webui:main
# docker pull
docker pull ghcr.dockerproxy.com/open-webui/open-webui:main
main: Pulling from open-webui/open-webui
Digest: sha256:c75e215751eb741878f34fd841d910a018eb1bf2d17a9ffe731f24ab2bf3cca2
Status: Image is up to date for ghcr.dockerproxy.com/open-webui/open-webui:main
ghcr.dockerproxy.com/open-webui/open-webui:main
# docker images 查看
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ghcr.dockerproxy.com/open-webui/open-webui main 183b6b7f01cd 47 hours ago 3.39GB
ghcr.io/open-webui/open-webui main 183b6b7f01cd 47 hours ago 3.39GB
启动docker 采用localhost 地址
docker run -d \
--network=host \
-v open-webui:/mnt/data1/ollama \
-e OLLAMA_BASE_URL=http://127.0.0.1:11434 \
--name open-webui \
--restart always ghcr.io/open-webui/open-webui:main
# ghcr.dockerproxy.com/open-webui/open-webui
启动的时候如果修改默认的8080端口则执行以下命令: docker run -d \
-e PORT=1234 \
--network=host \
-v open-webui:/mnt/data1/ollama \
-e OLLAMA_BASE_URL=127.0.0.1:11434 \
--name open-webui \
--restart always ghcr.io/open-webui/open-webui:main
由于之前已经启动了docker 此次直接把历史的image 进行重新启动
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
21ab2f387500 ghcr.io/open-webui/open-webui:main "bash start.sh" 41 hours ago Exited (0) 50 minutes ago open-webui
docker start 21ab2f387500
21ab2f387500
Open webui 启动的时候需要一段时间,可以通过docker logs image-id 查看
docker logs 0f05d2ab671a
No WEBUI_SECRET_KEY provided
Generating WEBUI_SECRET_KEY
Loading WEBUI_SECRET_KEY from .webui_secret_key
INFO: Started server process [1]
INFO: Waiting for application startup.
___ __ __ _ _ _ ___
/ _ \ _ __ ___ _ __ \ \ / /__| |__ | | | |_ _|
| | | | '_ \ / _ \ '_ \ \ \ /\ / / _ \ '_ \| | | || |
| |_| | |_) | __/ | | | \ V V / __/ |_) | |_| || |
\___/| .__/ \___|_| |_| \_/\_/ \___|_.__/ \___/|___|
|_|
v0.1.121 - building the best open-source AI user interface.
https://github.com/open-webui/open-webui
INFO:apps.litellm.main:start_litellm_background
INFO:apps.litellm.main:run_background_process
INFO:apps.litellm.main:Executing command: ['litellm', '--port', '14365', '--host', '127.0.0.1', '--telemetry', 'False', '--config', '/app/backend/data/litellm/config.yaml']
INFO: Application startup complete.
INFO:apps.litellm.main:Subprocess started successfully.
INFO: Uvicorn running on http://0.0.0.0:8080 (Press CTRL+C to quit)
访问本地 http://localhost:8080 第一次需要进行注册

其他教程:https://docs.openwebui.com/
总结
本文主要是对ollama 和 open ui 进行部署,以及部署中如何进行加速,下一篇文章讲解如何用ollama 支持 hugging face 模型,以及下载hugging face 模型加速的方法。加速不是采用
export HF_ENDPOINT=https://hf-mirror.com
原因是这个相对而言,不如后面这篇文章下载更加稳定。
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://hqyman.cn/post/9540.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~