Ollama + OpenWebUI 本地部署大模型与可视化聊天
本文详细介绍了如何在本地环境中部署 Ollama 与 OpenWebUI 以实现大型语言模型的交互式聊天。内容涵盖 Ollama 的安装方法(Mac、Windows、Linux)、模型管理与自定义 Modelfile 配置,以及基于 Docker 部署 OpenWebUI 的具体步骤。此外,还补充了跨服务器连接、API 兼容性设置、常见问题排查及高级功能配置指南,帮助用户构建安全、私有的 AI 对话平台。

本文详细介绍了如何在本地环境中部署 Ollama 与 OpenWebUI 以实现大型语言模型的交互式聊天。内容涵盖 Ollama 的安装方法(Mac、Windows、Linux)、模型管理与自定义 Modelfile 配置,以及基于 Docker 部署 OpenWebUI 的具体步骤。此外,还补充了跨服务器连接、API 兼容性设置、常见问题排查及高级功能配置指南,帮助用户构建安全、私有的 AI 对话平台。

Ollama 是一个开源平台,旨在简化在本地环境中启动和运行大型语言模型(LLM)的过程。它提供了一个类似 OpenAI 的 API 接口,但无需复杂的开发配置即可直接通过命令行或集成工具与模型交互。Ollama 支持热切换模型,允许用户在同一会话中灵活加载不同的模型权重,为开发者提供了极大的便利性和多样性。
在开始部署之前,请确保您的系统满足以下基本要求:
对于 macOS 用户,可以直接访问 Ollama 官网下载页面获取安装包。双击下载的 .dmg 文件并按照提示完成安装。安装完成后,终端将自动配置环境变量。
Windows 用户可下载官方提供的 MSI 安装包。安装过程中建议勾选'添加到 PATH'选项,以便在任何目录使用 ollama 命令。安装后重启终端以生效。
Linux 系统推荐使用官方脚本进行一键安装,该脚本会自动处理依赖关系并配置 systemd 服务。
curl -fsSL https://ollama.com/install.sh | sh
安装成功后,服务将自动启动并在后台运行。
Ollama 提供了丰富的模型库,涵盖多种架构和参数量级。您可以通过以下命令列出已安装的模型:
ollama list
输出示例:
NAME ID SIZE MODIFIED
gemma:2b b50d6c999e59 1.7 GB About an hour ago
llama2:latest 78e26419b446 3.8 GB 9 hours ago
qwen:latest d53d04290064 2.3 GB 8 hours ago
使用 pull 命令从仓库下载模型,使用 run 命令启动对话。
# 下载 Qwen 模型
ollama pull qwen
# 运行模型进入交互式对话
ollama run qwen
在对话模式下,您可以输入自然语言指令,模型会实时生成回复。按 Ctrl+C 退出对话模式。
Ollama 支持通过 Modelfile 自定义模型行为,例如设置系统提示词、温度参数或指定上下文窗口大小。
创建一个名为 Modelfile 的文件:
FROM qwen:latest
SYSTEM "你是一个专业的编程助手,请用简洁的代码回答。"
PARAMETER temperature 0.7
PARAMETER num_ctx 4096
构建自定义模型:
ollama create my-qwen -f Modelfile
ollama run my-qwen
OpenWebUI 是一个功能丰富且用户友好的自托管 Web 界面,完全兼容 Ollama API。它支持多模型对比、知识库检索(RAG)以及插件扩展。
确保 Ollama 服务正在运行,然后使用 Docker 启动 OpenWebUI。
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
此命令将容器映射到本地 3000 端口,并挂载数据卷以持久化聊天记录和配置。
如果 Ollama 运行在另一台服务器上,需设置环境变量指向远程地址:
docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=http://<服务器 IP>:11434 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
部署完成后,在浏览器访问 http://localhost:3000。首次登录通常无需密码,可直接进入主界面。
在 OpenWebUI 左侧菜单中,点击"Select a model",可以切换当前对话使用的模型。支持同时添加多个模型,开启"Compare"模式,直观对比不同模型对同一问题的回答差异。
在设置中,您可以定义全局默认的系统提示词(System Prompt),规范模型的输出风格。例如,强制模型始终使用 Markdown 格式或限制回答长度。
OpenWebUI 内置了标准的 OpenAI API 兼容层。第三方应用(如 Chatbot UI, LangChain 等)可以通过配置 http://localhost:3000/api/v1 作为 Base URL 接入,实现更复杂的自动化流程。
-p 参数中的宿主机端口号,如 -p 3001:8080。ollama serve 手动启动测试。通过 Ollama 与 OpenWebUI 的组合,用户可以低成本、高隐私地构建私有化的大模型应用。这种本地化部署方案避免了云端 API 的费用和数据泄露风险,适合个人开发者、企业内网研究及教育场景。随着社区生态的发展,更多插件和模型优化将持续提升用户体验。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online