当前位置: 首页 > news >正文

本地大模型搭建与webui交互

本地大模型搭建与webui交互

概述

本文档记录如何通过以下步骤快速搭建本地模型服务:

  1. 使用 Ollama 客户端部署本地模型
  2. 通过 Docker 部署 WebUI 界面
  3. 实现浏览器交互式访问

环境准备

  • 支持 Docker 的操作系统(Windows/macOS/Linux)
  • 已安装 Ollama 客户端
  • 已安装 Docker(这里如果可以的话,我个人建议使用DockerDesktop,这样更加直观)

操作步骤

1. 安装 Ollama 客户端

  1. 访问 Ollama 官网 下载对应系统的客户端
  2. 完成安装后,验证版本:
ollama --version
# 应输出类似:ollama version 0.5.11
运行态

ollama下载后打开就是一个后台运行程序,无任何交互页面,但是你在后台进程里面能够看到他,就说明正常运行了。(第一次双击打开,发现没啥反应请不用激动)

2. 模型操作

通过命令行直接拉取模型(以 deepseek 为例):

 ollama pull deepseek-r1:14b

运行模型:

ollama run deepseek-r1:14b

查看模型集合

ollama list

是的,就是这么简单。整个模型的操作就是这么几步,但是与其考虑这个,不如考虑一下,你的适用场景,能拉什么模型?

3.模型选择

我们以标准的32G电脑内存为例:如果你是程序员,且主要功能是用于做代码开发的(苦于openAI的外网和deepSeek的网络问题,你可以尝试本地拉着先玩玩。但实际上,哪怕我拉了32b的还是不太智能,不如直接装个github copilot)

模型推荐(基于 32GB 内存)

ollama的标准模型地址:
https://ollama.com/search

顺带看一下 顶配671b
在这里插入图片描述
我不知道他多大,但是可以用我本地的对比一下
在这里插入图片描述

1. 代码开发场景

模型名称推荐理由内存占用
CodeLLaMA专为代码生成优化,支持多种编程语言(Python、Java、C++ 等)~16GB
StarCoder高性能代码生成模型,适合大型项目开发~20GB
WizardCoder基于 CodeLLaMA 微调,代码生成质量更高~18GB

2. 通用开发场景

模型名称推荐理由内存占用
LLaMA 2通用性强,适合文档生成、代码解释、问题解答等~20GB
Mistral高性能通用模型,推理速度快,适合日常开发辅助~16GB
Falcon轻量级通用模型,适合快速原型开发和实验~12GB

3. 多模态场景

模型名称推荐理由内存占用
LLaVA支持图像和文本交互,适合需要处理多模态数据的开发场景~24GB
MiniGPT-4轻量级多模态模型,适合图像描述、文档生成等任务~20GB

webui部署

事实上,你刚刚拉我就可以直接ollama run 对应的模型了,但问题是:这种交互方式极度不友好。

你不能贴图片解析,换行也不好换行

所以一般需要一个webui

镜像拉取

docker pull ghcr.io/open-webui/open-webui:main

在这里插入图片描述

docker 运行(注意:关闭了OpenAI)

docker run -d \
  --name ollama-webui \
  -p 3000:8080 \
  -e OLLAMA_API_BASE_URL=http://host.docker.internal:11434 \
  -e OPENAI_API_KEY=disabled \
  -e DISABLE_OPENAI=true \
  --add-host=host.docker.internal:host-gateway \
  ghcr.io/open-webui/open-webui:main

注意一下,我把OPENAI_API_KEY给关闭了,因为正常你不翻墙的话,他连接不了,就导致第一次打开很慢(你要等到他http超时,才往下去load本地模型)

运行效果图

在这里插入图片描述
创建你个人账号后,就可以进去了。(如果很慢的话,记得看一下你的本地docker日志,之前是因为他默认会连接openAI,外网无法访问,要等他http超时)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

常见问题排查

模型无法加载

确认 Ollama 服务已运行:

curl http://localhost:11434

检查模型是否下载完成:

ollama list

WebUI 无法连接

验证容器网络配置:

docker exec ollama-webui curl -v http://host.docker.internal:11434

检查防火墙设置是否放行 11434 和 3000 端口

相关文章:

  • 我和我的通义灵码
  • LeetCode:131. 分割回文串(DP Java)
  • 8 - PS XADC接口实验
  • Java 大视界 -- Java 大数据机器学习模型的可解释性增强技术与应用(107)
  • nist关于rsa中p,q的要求
  • 【数据挖掘】Pandas
  • 【开源免费】基于SpringBoot+Vue.JS网络海鲜市场系统(JAVA毕业设计)
  • 看得见摸得着的AI:具身智能
  • 【Java】多线程篇
  • Ubuntu 下 nginx-1.24.0 源码分析 - ngx_fd_info
  • redis slaveof 命令 执行后为什么需要清库重新同步
  • 阿里云oss文件上传springboot若依java
  • 用C语言实现一个链表(四)
  • 深度学习原理与Pytorch实战
  • VS Code 如何搭建CC++开发环境
  • 【C语言】字符函数与字符串函数
  • 【动手实验】TCP半连接队列、全连接队列实战分析
  • 军事理论综合版参考答案
  • 计算机三级网络技术备考(3)
  • 大白话React 虚拟 DOM,好处在哪里?跟vue有什区别
  • 网站建设属于什么科目/西seo优化排名
  • 企业网站建设可分为什么层次/网络营销策略包括哪些
  • 做批发上哪个网站好/seo外链专员
  • 政府移动网站建设整体风格控制/太原关键词优化公司
  • 怎样发布自己的网站/长沙seo袁飞
  • 上海建设网站是国家级吗/合肥百度关键词推广