news 2026/4/28 11:24:41

vLLM(3)vllm在线启动集成openweb-ui

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
vLLM(3)vllm在线启动集成openweb-ui

文章目录

      • **步骤 1: 启动 vLLM 服务**
        • **方式 1: 直接命令行启动**
        • **方式 2: Docker 启动**
      • **步骤 2: 配置 Open WebUI 连接 vLLM**
        • **方法 1: 修改 Open WebUI 环境变量**
        • **方法 2: 通过 `docker-compose.yml` 部署**
      • **步骤 3: 在 Open WebUI 中添加模型**
      • **验证是否成功**
      • **常见问题解决**
      • **性能优化建议**

要将vLLM集成到Open WebUI中,可以通过以下步骤实现。vLLM 提供高性能的 LLM 推理服务,而 Open WebUI 则是一个可扩展的 Web 前端。集成核心是通过 vLLM 的 OpenAI 兼容 API 与 Open WebUI 连接。


在前面两个章节,我们介绍了如何在线启动vllm服务,下面将vllm集成到openweb-ui中


步骤 1: 启动 vLLM 服务

首先启动 vLLM 服务,暴露 OpenAI 兼容的 API 接口(默认端口9898)。

方式 1: 直接命令行启动
conda activate vLLM_cuda128_env_python312cd/home/vLLM/models/Qwen vllm serve Qwen3-0.6B --served-model-name Qwen3-0.6B--api_keyhhh6688--host192.168.11.103--port9898--trust_remote_code--tensor_parallel_size4--gpu_memory_utilization0.8
方式 2: Docker 启动
dockerrun-d\--gpusall\-p8000:8000\--namevllm-server\vllm/vllm-openai:latest\--modelmeta-llama/Meta-Llama-3-8B-Instruct

步骤 2: 配置 Open WebUI 连接 vLLM

修改 Open WebUI 的配置,指向 vLLM 的 API 地址。

方法 1: 修改 Open WebUI 环境变量

在启动 Open WebUI 时,添加以下环境变量:

dockerrun-d\-p3000:8080\-eOPENAI_API_BASE_URL=http://vllm-server:9898/v1\-eOPENAI_API_KEY=hhh6688\# vLLM 无需验证-eWEBUI_SECRET_KEY=my-secret\--nameopenwebui\--linkvllm-server\# 如果 vLLM 和 Open WebUI 在同一台机器ghcr.io/open-webui/open-webui:main
方法 2: 通过docker-compose.yml部署
version:'3.8'services:vllm:image:vllm/vllm-openai:latestcommand:--model meta-llama/Meta-Llama-3-8B-Instructports:-"8000:8000"deploy:resources:reservations:devices:-driver:nvidiacount:2# 使用 2 个 GPUopenwebui:image:ghcr.io/open-webui/open-webui:mainports:-"3000:8080"environment:-OPENAI_API_BASE_URL=http://vllm:9898/v1-OPENAI_API_KEY=hhh6688-WEBUI_SECRET_KEY=my-secretdepends_on:-vllm

运行:

docker-composeup-d

步骤 3: 在 Open WebUI 中添加模型

  1. 访问 Open WebUI 的 Web 界面:http://localhost:3000
  2. 登录后进入Settings → Model Provider
  3. 选择OpenAI作为提供商。
  4. 填写:
    • Model Name: 任意名称(如Llama-3-8B-vLLM
    • API Base URL:http://vllm:8000/v1(或你的 vLLM 地址)
    • API Key:EMPTY
  5. 保存后,在聊天界面选择该模型即可使用。

验证是否成功

  • 检查 vLLM 日志
    dockerlogs vllm-server
    出现类似日志表示请求成功:
    INFO: 127.0.0.1:12345 - "POST /v1/chat/completions HTTP/1.1" 200 OK
  • 在 Open WebUI 中发送测试消息,观察响应速度和输出内容。

常见问题解决

  1. 连接失败

    • 确保OPENAI_API_BASE_URL正确(一般为http://<vllm-ip>:8000/v1)。
    • 如果使用 Docker,确保容器在同一网络(或通过--link连接)。
  2. GPU 资源不足

    • 减少--tensor-parallel-size(如从2改为1)。
    • 使用量化模型(如--quantization awq)。
  3. 模型加载失败

    • 检查模型路径是否正确(HuggingFace 模型需提前下载或确认有访问权限)。
    • 使用离线模型时挂载本地目录:
      dockerrun-v/path/to/models:/models vllm/vllm-openai:latest--model/models/llama-3-8b
  4. Open WebUI 无法识别模型

    • Model Provider中检查是否选择OpenAI类型。
    • 确保OPENAI_API_KEY设置为EMPTY(vLLM 无需密钥)。

性能优化建议

  • 批处理:启动 vLLM 时添加--max-num-batched-tokens 4096提高吞吐量。
  • 量化:添加--quantization awq减少显存占用(需模型支持)。
  • 多 GPU:增加--tensor-parallel-size加速推理。

通过以上步骤,即可将 vLLM 的高性能推理能力无缝集成到 Open WebUI 的交互界面中。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/28 11:23:29

Unity 2D智能寻路终极指南:NavMeshPlus架构解析与实战应用

Unity 2D智能寻路终极指南&#xff1a;NavMeshPlus架构解析与实战应用 【免费下载链接】NavMeshPlus Unity NavMesh 2D Pathfinding 项目地址: https://gitcode.com/gh_mirrors/na/NavMeshPlus NavMeshPlus是一个专为Unity 2D游戏开发的智能寻路扩展库&#xff0c;基于U…

作者头像 李华
网站建设 2026/4/16 17:01:31

GeoServer与Mapbox-GL离线矢量切片地图服务实战指南

1. 为什么需要离线矢量切片地图服务 最近在做一个偏远地区的智慧农业项目时&#xff0c;遇到一个棘手问题&#xff1a;项目现场完全没有网络信号&#xff0c;但系统又必须使用高精度的地图服务。这让我不得不深入研究GeoServer和Mapbox-GL的离线部署方案。经过两周的折腾&#…

作者头像 李华
网站建设 2026/4/16 17:01:09

终极指南:解决Directus卡片布局缩略图加载异常问题

终极指南&#xff1a;解决Directus卡片布局缩略图加载异常问题 【免费下载链接】directus The flexible backend for all your projects &#x1f430; Turn your DB into a headless CMS, admin panels, or apps with a custom UI, instant APIs, auth & more. 项目地址…

作者头像 李华
网站建设 2026/4/16 16:57:34

如何使用Symfony轻松实现动态表单渲染与模板定制

如何使用Symfony轻松实现动态表单渲染与模板定制 【免费下载链接】symfony The Symfony PHP framework 项目地址: https://gitcode.com/GitHub_Trending/sy/symfony Symfony作为一款强大的PHP框架&#xff0c;提供了全面的表单组件&#xff0c;帮助开发者快速构建交互式…

作者头像 李华
网站建设 2026/4/16 16:55:47

Python22_httpx网络请求

Python22_httpx网络请求 httpx.AsyncClient&#xff0c;这是 Python 中处理异步 HTTP 请求的核心类。 httpx.AsyncClient 概览 httpx.AsyncClient 是 HTTPX 库的异步客户端&#xff0c;基于 asyncio 构建&#xff0c;支持非阻塞的 HTTP/1.1 和 HTTP/2 请求&#xff0c;性能远超…

作者头像 李华