如何将自己本地ollama部署的大模型共享给其他人

Ollama 共享服务操作文档(基于 ngrok 内网穿透)


一、服务端(部署 Ollama + ngrok)

1. 启动 Ollama 服务

ollama serve

确认服务监听默认端口 11434,且状态为 “ollama is running”。


2. 安装并启动 ngrok 内网穿透

ngrok authtoken <你的令牌>
  • 启动 HTTP 隧道映射 Ollama 端口:
ngrok http 11434
  • 记录生成的公网地址,如:
https://abc123.ngrok-free.app

二、客户端(使用 OpenWebUI 访问 Ollama)


方案 A:Docker 版本 OpenWebUI

1. 删除旧容器(如有)
docker rm -f openwebui
2. 运行 OpenWebUI Docker 容器,指定 Ollama ngrok 地址
docker run -d \
  -e HF_ENDPOINT=https://hf-mirror.com \
  -e OLLAMA_BASE_URL=https://abc123.ngrok-free.app \
  -p 3000:8080 \
  --add-host=host.docker.internal:host-gateway \
  -v C:\ollama-web-ui:/app/backend/data \
  --name openwebui \
  --restart always \
  ghcr.io/open-webui/open-webui:main

-e HF_ENDPOINT=https://hf-mirror.com \ 是open-webui的镜像网站,用于加速访问

-e OLLAMA_BASE_URL=https://abc123.ngrok-free.app \ 这里需要换成我给大家的地址,下面conda版本的同理

3. 访问 OpenWebUI

浏览器访问:

http://localhost:3000

这里的3000是openwebui使用的端口,要换成自己的


方案 B:Conda 虚拟环境版本 OpenWebUI

1. 激活虚拟环境并安装依赖
conda activate openwebui-env
pip install -r requirements.txt

(具体请参考 OpenWebUI 官方安装文档)

2. 设置环境变量并启动

Windows CMD 示例:

set HF_ENDPOINT=https://hf-mirror.com
set OLLAMA_BASE_URL=https://abc123.ngrok-free.app
python app.py

Linux / PowerShell 类似:

export HF_ENDPOINT=https://hf-mirror.com
export OLLAMA_BASE_URL=https://abc123.ngrok-free.app
python app.py
3. 浏览器访问
http://localhost:3000

三、客户端程序通过 API 调用 Ollama

假设 Ollama API 基地址为 ngrok 地址:

https://abc123.ngrok-free.app

示例:用 Python 发送请求

import requests

base_url = "服务端ngrok生成的公网地址"

# 查询可用模型示例
response = requests.get(f"{base_url}/v1/models")
print(response.json())

# 发送推理请求示例
data = {
    "model": "your_model_name",
    "prompt": "你好,Ollama!",
    "max_tokens": 100
}
response = requests.post(f"{base_url}/v1/completions", json=data)
print(response.json())
  • 根据 Ollama 文档调整请求路径和数据格式。
  • 如果 OpenWebUI 已正确配置,API 也可以直接通过该地址访问。

四、注意事项

  • ngrok 地址为动态地址,重启后可能变化,需更新客户端配置。
  • 确保防火墙允许端口访问。
  • 为避免滥用,建议在 OpenWebUI 或 Ollama 上启用认证功能。
  • OpenWebUI 默认监听 8080 端口,客户端需访问映射后的宿主机端口(如 3000)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值