HelgeSverre/ollama-gui
A Web Interface for chatting with your local LLMs via the ollama API
Ollama GUI – 本地运行 LLM 的浏览器端聊天前端
是什么 – 一个单页 Web 应用,可与 Ollama 引擎提供的任意模型进行对话。UI 完全在浏览器中运行,不托管自己的后端。所有聊天记录都本地存储在浏览器的 IndexedDB 中,除非你将应用指向远程 Ollama 服务器,否则数据不会离开你的设备。
核心功能
- 聊天体验 – 支持流式回复、停止生成、重新生成、编辑消息。每次编辑都会生成一个可回退的版本,任何回复都可以分支为新的对话。
- “思考”模型 – 对于支持推理追踪的模型(如 qwen3、deepseek-r1、gpt-oss),UI 会显示一个可折叠的区块,展示模型内部的思维链。你可以开启/关闭该功能,或为 gpt-oss 调整努力程度。
- 附件 – 可拖入图像供视觉模型(llava、gemma3)使用,或附加文本/代码文件;它们会与提示一起发送。
- 模型管理 – 搜索 Ollama 模型库,选择大小,带进度下载,删除,检查功能,查看上下文长度,并从内存中卸载模型。
- 精细设置 – 系统提示、温度、
num_ctx、top_p、种子等,可全局、按模型或按聊天配置。 - 历史记录 UI – 聊天按日期分组,可固定、归档、重命名、自动命名、全文搜索(⌘K)。
- 丰富 Markdown – 支持语法高亮代码块、KaTeX 数学公式渲染。
- 外观 – 支持浅色/深色主题,本地化日期与数字格式。
- 导入/导出 – 将所有聊天导出为 JSON,或将单个聊天导出为 Markdown。
如何运行
- 本地安装 Ollama 并确保其正在监听(默认
http://localhost:11434)。 - 安装 Bun(或 Node 20)并克隆仓库。
bun install && bun run dev– 开发服务器会将/api代理到 Ollama,无需修改 CORS 设置。- 打开
http://localhost:5173。
部署选项
- 静态构建 –
bun run build生成dist/文件夹,可由任意 Web 服务器提供服务(提供 nginx 示例)。UI 仍直接与 Ollama 通信,可通过同源代理或跨源 URL 实现。 - Docker – 预构建镜像使用 nginx 提供 UI,并将
/api代理到 Ollama 实例。可使用提供的docker-compose.yml同时运行 Ollama 和 GUI,或仅运行 GUI 并指向外部 Ollama。 - 托管演示 – Vercel 托管版本(
https://ollama-gui.vercel.app)在将源添加到OLLAMA_ORIGINS后,可与本地 Ollama 实例配合使用。
开发与测试
- 代码检查(
bun run lint)、单元/集成测试(bun run test)、覆盖率、Playwright 端到端测试。特殊标志(OLLAMA_REAL=1)可在真实 Ollama 服务器上运行端到端测试。 - 模型目录由独立爬虫从公开 Ollama 库生成;使用
bun run catalog:update更新。
技术栈 – Vue 3 + Vite,Tailwind CSS,VueUse,Dexie(IndexedDB 封装),markdown-it,highlight.js,KaTeX,Tabler Icons。
许可证 – MIT。
简而言之,Ollama GUI 是一个经过打磨的、本地托管的 Web 前端,用于与任何由 Ollama 提供服务的 LLM 对话,支持版本化编辑、推理可视化、文件附件和完整的模型管理,无需额外服务器。
相关
- 项目
- 项目
- 项目
- 项目
- 项目