使用 Ollama 和 Open-webUI 搭建本地大语言模型助手
大模型技术近期发展迅速,无论是国外的 ChatGPT、Llama3,还是国内的文心一言、通义千问,都备受关注。Ollama 是一个支持在本地运行大语言模型的工具,兼容 Windows、Linux 和 MacOS 操作系统。使用 Ollama,您仅需一行命令即可启动模型,无需复杂的配置。本文将详细介绍如何安装 Ollama、下载模型、通过命令行测试,并最终部署 Open-webUI 以获得更好的图形化交互体验。
本文介绍了如何利用 Ollama 工具在本地环境部署大语言模型,并结合 Open-webUI 构建图形化交互界面。内容涵盖 Ollama 的多平台安装方法、常用模型列表与下载指令、命令行对话测试,以及通过 Docker 容器化部署 Open-webUI 的详细步骤。此外,还补充了模型管理、数据持久化配置及常见问题的解决方案,帮助用户快速搭建免费且私有的 AI 助手。

大模型技术近期发展迅速,无论是国外的 ChatGPT、Llama3,还是国内的文心一言、通义千问,都备受关注。Ollama 是一个支持在本地运行大语言模型的工具,兼容 Windows、Linux 和 MacOS 操作系统。使用 Ollama,您仅需一行命令即可启动模型,无需复杂的配置。本文将详细介绍如何安装 Ollama、下载模型、通过命令行测试,并最终部署 Open-webUI 以获得更好的图形化交互体验。
Ollama 支持多种主流操作系统,安装方式简单直接。
访问官网下载安装包,按照提示完成安装。安装完成后,打开终端(Terminal)或 PowerShell,输入以下命令验证安装:
ollama --version
对于 Linux 用户,可以使用官方提供的脚本进行一键安装:
curl -fsSL https://ollama.com/install.sh | sh
安装后同样检查版本以确保服务正常启动。
Ollama 本身只是一个推理引擎,安装后需要下载对应的模型文件才能调用。它支持众多开源大模型,以下是常用模型的参数与下载指令:
| Model | Parameters | Size | Download Command |
|---|---|---|---|
| Llama 3 | 8B | 4.7GB | ollama run llama3 |
| Llama 3 | 70B | 40GB | ollama run llama3:70b |
| Phi 3 Mini | 3.8B | 2.3GB | ollama run phi3 |
| Phi 3 Medium | 14B | 7.9GB | ollama run phi3:medium |
| Gemma | 2B | 1.4GB | ollama run gemma:2b |
| Gemma | 7B | 4.8GB | ollama run gemma:7b |
| Mistral | 7B | 4.1GB | ollama run mistral |
| Moondream 2 | 1.4B | 829MB | ollama run moondream |
| Neural Chat | 7B | 4.1GB | ollama run neural-chat |
| Starling | 7B | 4.1GB | ollama run starling-lm |
| Code Llama | 7B | 3.8GB | ollama run codellama |
| LLaVA | 7B | 4.5GB | ollama run llava |
ollama pull <model_name>ollama listollama rm <model_name>ollama ps为了演示效果,我们可以同时安装 Llama3 和 Qwen 两个模型:
ollama pull llama3
ollama pull qwen
安装并拉取模型后,可以直接在终端进行对话。这有助于快速验证模型是否正常工作。
ollama run llama3 "你现在是一个程序员,请用 JS 给我写一个冒泡排序算法"
ollama run qwen "请用中文回答:先有的鸡还是先有的蛋?"
通过命令行交互,可以直观感受不同模型在特定任务上的表现差异。例如,Llama3 在英文语境下通常表现优异,而 Qwen 在中文理解上可能更具优势。
虽然命令行功能强大,但对于日常使用,图形化界面(Web UI)能提供更友好的体验。Open-webUI 是一个基于 Web 的聊天界面,支持多模型切换、上下文记忆等功能。
推荐使用 Docker 容器化部署,方便维护且隔离性好。执行以下命令启动服务:
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
-p 3000:8080:将容器的 8080 端口映射到宿主机的 3000 端口。-v open-webui:/app/backend/data:挂载卷以持久化聊天记录和配置数据。--add-host:允许容器访问宿主机网络(用于某些 API 调用场景)。部署成功后,在浏览器访问 http://localhost:3000。首次进入可能需要设置管理员账号。登录后可在设置中连接本地运行的 Ollama 服务(通常默认地址为 http://host.docker.internal:11434),即可开始使用。
界面支持随意切换已安装的本地模型,提供类似 ChatGPT 的对话体验,且所有数据均存储在本地,保障隐私安全。
如果 3000 端口被占用,可修改 Docker 命令中的 -p 参数,例如改为 -p 8080:8080,然后访问 http://localhost:8080。
运行大模型对显存或内存要求较高。如果遇到 OOM(Out Of Memory)错误,建议尝试参数量较小的模型(如 Llama3 8B 或 Phi 3 Mini),或者调整量化级别。
部分模型下载或 API 调用可能需要网络环境支持。确保服务器或本地机器具备相应的网络连接能力。
通过 Ollama 和 Open-webUI 的组合,开发者可以快速构建一个免费、私有且功能完善的本地 AI 助手。这种方式不仅降低了大模型的使用门槛,还确保了数据的安全性和可控性。随着本地算力的提升,未来本地运行大模型将成为开发者和普通用户的常态选择。

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