【AIGC】本地部署 ollama + open-webui

在之前的篇章《【AIGC】本地部署 ollama(gguf) 与项目整合》中我们已经使用 ollama 部署了一个基于预量化(gguf)的 Qwen1.5 模型,这个模型除了提供研发使用外,我还想提供给公司内部使用,因此还需要一个 ui 交互界面。

显然,这对于我们开发人员来说不是什么难事(毕竟 ollama 已经提供了相对比较完善的 API 接口了),但都 2024 年了与其自己开发还不如先找个开箱即用的…你看,这不已经有大神开发出 open-webui 了吗,我们开箱即用即可。

本文将记录部署过程中遇到的问题以及解决方式,希望对你有所帮助(open-webui 采用 docker 进行部署)。

1. 无法访问 huggingface 官网问题

由于 open-webui 有提供模型下载功能,因此需要在 docker 启动命令中添加 HF_ENDPOINT 环境变量:

sudo docker run -d \
   ...
   -e HF_ENDPOINT=https://hf-mirror.com \
   ...
   ghcr.io/open-webui/open-webui:main

HF_ENDPOINT 将指向国内 hf-mirror 镜像站。

2. docker host 模式(ollama 宿主机直接部署的话)

open-webui 容器采用 host 模式是最方便的的做法。由于我的 ollama 是宿主机直接部署的,open-webui 容器host 模式能够直接通过 127.0.0.1 进行通讯。如果你的 ollama 是 docker 容器,那么你可以将 open-webui 部署在与 ollama 同一个网络中,然后通过桥接只公开 open-webui 访问。

在启动命令中还需要设置环境变量 OLLAMA_BASE_URL 来指定 ollama 的访问地址:

sudo docker run -d \
   --network<
### OllamaOpen-WEBUI集成的使用和配置 Ollama作为一个假设性的组件,在当前的技术文档中并没有直接提及。然而,为了实现ollamaopen-webui之间的集成,可以借鉴分布式系统的通用模式和服务发现机制来构建解决方案。 对于服务发现和配置管理方面的需求,Apache Zookeeper提供了强大的支持[^1]。通过利用Zookeeper的服务发现功能,可以在分布式环境中有效地定位并连接到ollama服务实例。这使得即使是在动态变化的网络环境下也能保持稳定可靠的通信渠道。 至于具体的集成方式,则取决于两个平台的具体API设计以及它们之间预期交互的方式。通常情况下,这种类型的集成会涉及到以下几个方面: #### API调用接口定义 确保双方都清楚了解对方提供的RESTful或其他形式的API端点及其参数结构。这样做的目的是为了让前端界面能够顺利发起请求并与后台逻辑层进行数据交换。 ```python import requests def call_ollama_api(endpoint, params=None): base_url = "http://your-ollama-server.com/api" full_path = f"{base_url}/{endpoint}" response = requests.get(full_path, params=params) return response.json() ``` #### 数据同步策略制定 决定如何处理来自不同源的数据更新事件,并确保这些更改能及时反映在整个系统内。例如,当某个用户的偏好设置发生变化时,应该立即将其传播给所有相关的视图组件。 #### 用户认证授权流程建立 考虑到安全性因素,必须实施适当的身份验证措施以保护敏感操作免受未授权访问的影响。OAuth2.0协议是一个广泛接受的选择之一,它允许第三方应用程序安全地获取有限制权限下的资源访问权。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Kida 的技术小屋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值