- 通过部署 Open WebUI 和 Ollama 实现私有的多用户聊天界面。
- 配置网络和防火墙,以允许局域网上的设备之间相互连接。
- 利用原生 RAG、MCP 协议和 Pipelines 自动化等高级功能。
- 利用GPU加速优化各种硬件架构上的本地AI性能。
¿如何与本地网络上的其他用户共享 Open WebUI? 我相信你肯定有过这样的经历:你想要使用高级语言模型,但一想到自己的数据最终会存储在大公司的服务器上就感到不安。这就是动态模型发挥作用的地方。 Open WebUI 和 Ollama这种组合使您可以设置一个与 OpenAI 的聊天系统完全相同的系统,但完全运行在您自己的硬件上,无需为每个代币支付一分钱,并且完全掌控您的隐私。
最棒的是,你不需要成为电脑专家就能轻松上手。虽然基本设置非常简单,但真正的挑战在于如何让其他家人或同事也能使用它。 使用您自己的设备访问该网站在本文中,我们将详细介绍从最简单的安装到最复杂的网络技巧,使您的 AI 服务器在您的家庭或办公室中均可访问。
当我们说 Open WebUI 和 Ollama 时,我们究竟在谈论什么?
为避免混淆,必须明白我们说的是两个不同的部件,它们完美地契合在一起。 Ollama是引擎该程序负责管理模型(这些GGUF文件,类似于人工智能领域的.mp3文件),将它们加载到内存中,并执行计算。另一方面, Open WebUI 是可见的界面一个高度完善的网页界面,使我们能够聊天、管理用户和组织文档。
这种架构非常巧妙,因为它允许聊天层独立于执行层。它们通过 HTTP 通信,通常使用 11434 端口。这种组合的最大优势在于: 完全免费且开源这样,您就可以运行 Llama 3.2 或 DeepSeek 等模型,而无需将任何数据离开本地网络。
快速设置即可开始聊天
如果想直奔主题,最快的方法是使用 Docker。对于已经安装了 Ollama 的用户,只需启动一个 Open WebUI 容器即可。标准命令包括映射端口 3000 和相应的标志。 host.docker.internal:host-gateway这是让容器能够与主机上运行的 Ollama 服务进行通信的秘诀,尤其是在 Linux 系统上。
对于那些寻求更强大功能的人来说, Docker Compose 是理想之选它允许您在单个 YAML 文件中定义这两个服务,确保 Docker 的内部网络自动解析名称。这样,Open WebUI 无需使用复杂的 IP 地址,只需通过 URL 即可调用 Ollama。 http://ollama:11434这使得配置更加稳定,也更容易长期维护。
如何向本地网络上的其他用户开放访问权限
这就是大多数人卡住的地方。默认情况下,系统通常只响应…… localhost这意味着只有运行人工智能的计算机才能访问它。为了打破这个限制,我们首先必须确保 Ollama 监听所有接口。这可以通过编辑 systemd 服务并添加环境变量来实现。 OLLAMA_HOST=0.0.0.0迫使服务器不局限于内部 IP 地址。
如果您使用的是带有 WSL2 的 Windows 系统,情况会稍微复杂一些,因为 WSL2 有自己的虚拟网络。在这种情况下,您需要创建一个…… 使用 netsh 进行端口代理 在 PowerShell 中以管理员权限运行。基本上,我们是在告诉 Windows,所有到达物理机 8080 端口的流量都应该重定向到 WSL2 中 Ubuntu 实例的内部 IP 地址。另外,别忘了…… 在防火墙中打开入站规则 Windows Defender 或系统会阻止任何外部连接的尝试。
硬件优化和GPU加速

如果人工智能反应迟钝,再漂亮的界面也无济于事。关键在于…… 硬件加速如果您使用的是 NVIDIA 显卡,则需要安装 NVIDIA Container Toolkit 才能让 Docker 访问 CUDA 核心。对于使用 Apple Silicon 的 Mac 用户,诀窍是…… 原生运行 Ollama 而且不在 Docker 中运行,因为这样可以利用 Metal GPU,从而实现每秒无限高的令牌处理速度。
对于 Linux 上的 AMD 用户,解决方案是使用专用的 Docker 镜像。 ROCm 支持监控显存使用情况至关重要;如果您尝试加载的模型对于您的显卡来说太大,系统会将其加载到系统内存中,速度会骤降,使您强大的服务器变成类似十年前的计算机。
利用 RAG、Pipelines 和 MCP 为 AI 赋能
Open WebUI 不仅仅是一个聊天框;它是一个可扩展的平台。它的亮点之一是…… 原生 RAG(恢复增强生成)您可以上传自己的 PDF、Word 或 Markdown 文档,该工具会将它们分割并存储在名为 ChromaDB 的矢量数据库中。然后,当您提出问题时,人工智能会首先搜索您的文档,并根据这些信息做出回答。 真实且私密的信息.
如果你想更进一步,还有…… 管道和函数Pipelines 是外部 Python 服务,可以过滤消息或充当路由。而 Functions 则允许您向界面添加按钮来运行脚本,例如摘要文本并将其直接发送到 Notion。此外, 模型上下文协议(MCP) 它允许人工智能以标准化的方式与 GitHub 或 Slack 等外部工具进行交互。
安全和高级远程访问
当你的服务器向其他局域网用户开放时,安全就变得至关重要,是绝对必要的。 禁用开放式日志记录 创建管理员和用户帐户后,您需要防止任何入侵者在您的网络上创建帐户。对于需要从家外访问网络的用户,建议不要在路由器上打开端口,而是使用[缺少信息 - 可能是单独的、不相关的文档或应用程序]。 Cloudflare Tunnel 或 Caddy 以简洁安全的方式管理HTTPS。
如果用户数量增长,SQLite 可能会开始出现性能问题。在这种情况下,最明智的做法是迁移到其他数据库。 PostgreSQL它能更好地处理并发和复杂的对话数据库查询。将数据存储在命名的 Docker 卷中是确保在更新 Open WebUI 镜像时不会丢失所有聊天记录和文档集合的唯一方法。
要让大量用户能够使用本地人工智能,需要协调服务器配置、网络管理和硬件优化。通过结合 Docker 的灵活性、Ollama 的强大功能和 Open WebUI 的多功能性,我们可以构建一个私有、安全且功能极其强大的生态系统,而无需依赖任何外部云平台。
从小就对科技充满热情。我喜欢了解该领域的最新动态,最重要的是,进行交流。这也是我多年来致力于科技和视频游戏网站交流的原因。您可以找到我撰写的有关 Android、Windows、MacOS、iOS、任天堂或您想到的任何其他相关主题的文章。
