:Ollama + Open WebUI 环境搭建与基础使用)
一、前言大语言模型LLM已经从实验室走向生产环境但在实际应用中很多开发者面临一个共同问题如何在本地环境中高效、安全地运行和管理大模型本文将介绍一种目前最流行的本地大模型部署方案——Ollama Open WebUI从环境搭建到基础使用手把手带你完成整个流程。适合人群- 希望在本地运行大模型的开发者- 对数据隐私有要求的企业技术人员- 想要二次开发 AI 应用的工程师前置要求- 基本的命令行操作能力- 8GB 以上内存推荐 16GB- 20GB 以上可用磁盘空间二、核心概念在开始之前先理清几个关键概念2.1 Ollama 是什么Ollama 是一个开源的大模型运行框架类似于 Docker for LLMs。它的核心设计目标是1.简化模型管理一行命令下载、运行、切换模型2.自动硬件适配自动检测 GPU/CPU智能调度推理资源3.标准化 API提供统一的 REST API 接口方便集成Ollama 支持的模型格式主要是GGUFGPT-Generated Unified Format这是一种针对 CPU/GPU 混合推理优化的模型格式。2.2 Open WebUI 是什么Open WebUI 是一个功能丰富的 Web 聊天界面专门为本地大模型设计。它的特点包括- 基于 Svelte TailwindCSS 的现代化前端- 支持多用户管理- 内置 RAG检索增强生成功能- 支持文件上传、图像理解等多模态能力- 完全开源可自定义部署2.3 架构总览┌─────────────────────────────────────────┐ │ 用户浏览器 │ │ (http://localhost:3000) │ └──────────────────┬──────────────────────┘ │ HTTP ┌──────────────────▼──────────────────────┐ │ Open WebUI │ │ (用户管理 / 对话管理 / RAG / UI) │ └──────────────────┬──────────────────────┘ │ REST API ┌──────────────────▼──────────────────────┐ │ Ollama Server │ │ (localhost:11434) │ │ (模型加载 / 推理调度 / 资源管理) │ └──────────────────┬──────────────────────┘ │ ┌──────────────────▼──────────────────────┐ │ 本地模型文件 │ │ (GGUF 格式存储在磁盘上) │ └─────────────────────────────────────────┘三、环境搭建3.1 安装 OllamaWindows1. 访问 ollama.com/download2. 下载 Windows 安装包约 500MB3. 双击运行按提示完成安装4. 安装完成后打开 PowerShell 验证ollama --version # 输出: ollama version 0.9.x (或更高版本)macOS# 方式一直接下载 DMG 安装包 # 方式二使用 Homebrew brew install ollamaLinux (Ubuntu/Debian)curl -fsSL https://ollama.com/install.sh | sh验证安装# 检查版本 ollama --version 启动服务如果未自动启动 ollama serve 查看已安装模型 ollama list注意Ollama 安装后会自动启动一个后台服务监听localhost:11434端口。如果端口被占用启动会失败。3.2 下载模型Ollama 的模型管理非常简洁。以下载 Qwen3-8B 为例# 下载模型约 5GB需要等待 ollama pull qwen3:8b 查看下载进度 ollama list 运行模型进入交互模式 ollama run qwen3:8b常用模型推荐模型参数量大小适用场景qwen3:8b8B~5GB通用助手中文优秀llama4:scout17B~10GB英文为主推理能力强gemma3:4b4B~3GB轻量级速度快deepseek-v3:latest671B (MoE)~400GB顶级性能需要大显存首次运行测试ollama run qwen3:8b 你好请用中文介绍一下你自己。如果看到正常的中文回复说明模型已成功加载运行。3.3 安装 Open WebUI方式一Docker推荐# 确保 Docker 已安装 docker --version 拉取并运行 Open WebUI docker run -d -p 3000:8080 --add-hosthost.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main参数说明--p 3000:8080将容器的 8080 端口映射到主机的 3000 端口---add-hosthost.docker.internal:host-gateway让容器能访问主机的 Ollama 服务--v open-webui:/app/backend/data持久化存储用户数据---restart always开机自动启动方式二pip 安装# 创建虚拟环境推荐 python -m venv open-webui-env source open-webui-env/bin/activate # Linux/Mac # open-webui-env\Scripts\activate # Windows 安装 pip install open-webui 启动 open-webui serve方式三源码编译git clone https://github.com/open-webui/open-webui.git cd open-webui npm install npm run build npm run dev3.4 首次配置1. 打开浏览器访问http://localhost:30002. 首次访问需要注册管理员账户仅本地有效3. 注册完成后进入设置页面4. 确认 Ollama 服务地址为http://host.docker.internal:11434Docker 部署或http://localhost:11434pip 部署5. 保存设置后即可在聊天界面选择模型开始对话四、基础使用4.1 基本对话在 Open WebUI 的聊天界面中1. 点击左上角的模型选择器选择已下载的模型2. 在输入框中输入问题3. 按 Enter 发送Open WebUI 会自动通过 Ollama API 调用本地模型返回结果。4.2 对话管理-新建对话点击左上角 按钮-切换对话在左侧边栏点击历史对话-删除对话在对话上右键选择删除-导出对话支持导出为 Markdown 或 JSON 格式4.3 系统提示词Open WebUI 支持为每个对话设置系统提示词System Prompt用于定义 AI 的角色和行为。在对话界面顶部点击设置图标可以配置- 系统提示词- 温度Temperature- Top-P 采样参数- 上下文长度限制4.4 文件上传Open WebUI 支持上传文件PDF、TXT 等实现简单的 RAG 功能1. 点击输入框左侧的附件按钮2. 选择要上传的文件3. 文件内容会被自动提取并注入到对话上下文中4. AI 会基于文件内容回答问题注意文件上传功能需要模型支持足够长的上下文窗口。8B 模型通常支持 4K-8K token 的上下文。4.5 多模型切换Open WebUI 的一大优势是可以同时管理多个模型1. 在 Ollama 中下载多个模型ollama pull qwen3:8b、ollama pull gemma3:4b2. 在 Open WebUI 的模型选择器中可以看到所有可用模型3. 针对不同任务选择合适的模型五、常见问题Q1Ollama 启动失败端口被占用# 查看占用 11434 端口的进程 lsof -i :11434 # Linux/Mac netstat -ano | findstr 11434 # Windows 杀掉占用进程后重启 ollama serveQ2Docker 容器无法连接 Ollama确保使用了--add-hosthost.docker.internal:host-gateway参数或者使用--network host模式Linuxdocker run --network host -v open-webui:/app/backend/data \ ghcr.io/open-webui/open-webui:mainQ3模型下载速度慢可以使用镜像源加速# 设置环境变量 export OLLAMA_REGISTRYhttps://mirror.ollama.comQ4GPU 未被使用检查 NVIDIA 驱动和 CUDA 版本nvidia-smi # 查看 GPU 状态 ollama run qwen3:8b # 运行时查看日志确认是否使用 GPU六、总结本文完成了 Ollama Open WebUI 的基础环境搭建。回顾关键步骤1. 安装 Ollama → 拉取模型 → 验证运行2. 安装 Open WebUI → 配置连接 → 开始使用在下一篇《本地部署大模型下》中我们将深入探讨- 进阶配置与性能调优- 模型管理最佳实践- RAG 知识库搭建- API 集成与二次开发- 常见踩坑与解决方案如果本文对你有帮助欢迎点赞收藏。有问题欢迎在评论区讨论。