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

设计一基于Text generation web UI的语言模型部署与远程访问的方案​

前言

Text generation web UI可为类ChatGPT的大型语言模型提供能够快速上手的网页界面,不仅可以提高使用效率,还可满足私有化部署,或对模型进行自定义。目前,该Web UI已经支持了许多流行的语言模型,包括LLaMA、llama.cpp、GPT-J、Pythia、OPT、GALACTICA等.

而且,Text generation web UI部署非常简便,不仅在github主页上直接提供了一键部署安装包,同时由于是web UI形式,直接通过浏览器即可操作,不过本地化部署,无法远程访问,这里我们结合cpolar内网穿透工具实现从安装到最后实现远程访问。

系统环境

Windows 10

Python 3.11.4

1. 安装Text generation web UI

在github界面下载压缩包,这里以windows系统为例:

https://github.com/oobabooga/text-generation-webui

使用windows系统,我们下载windows压缩包:

image-20230801100617074

下载后,这里注意:存放目录的路径不能有空格,然后点击start_windows.bat启动安装。

image-20230801101235390

在安装过程中会提示选择显卡类型,根据电脑配置正常选择即可,然后等待下载,下载大小2个GB左右大小资源。

image-20230801093634783

2.安装依赖

上面安装后会出现两个文件夹,可以看到其中一个是text-generation-webui 名称文件夹,我们点击cmd_windows.bat打开cmd命令行。

image-20230801132217404

打开后,进入text-generation-webui文件夹:

cd text-generation-webui

Bash

Copy

执行下载依赖命令,注意!!!这里需要kx上网,否则下载依赖会发生错误,包括后面也一直需要保持kx上网哦!!!

pip install -r requirements.txt

Bash

Copy

执行后等待下载完成即可

image-20230801132643607

3. 安装语言模型

同意点击cmd_windows.bat打开cmd命令行,进入

image-20230801132217404

输入命令进入text-generation-webui文件夹

cd text-generation-webui

Bash

Copy

安装facebook语言模型,其他语言模型可以查看GitHub文档上面找到:

python download-model.py facebook/opt-1.3b

Bash

Copy

输入后等待下载安装完成即可,为了防止出现下载失败,建议开启kx上网!

image-20230801134136904

4. 启动

点击start_windows.bat启动

image-20230801134307878

启动后,可以看到访问的地址和端口,端口是:7860

image-20230801134402096

在浏览器输入上述URL,即可看到web ui 界面:

image-20230801135352516

设置一下语言模型,点击Model,在下拉框可以看到我们上面下载安装的facebook模型,选择后点击Load,然后保存设置。

image-20230801135436393

然后输入即可对话,这样就搭建好了,可玩度很高,且可以扩展其他语言模型!

image-20230801135752662

5. 安装cpolar 内网穿透

cpolar内网穿透工具,永久免费且不限制流量,支持http/https/tcp协议,无需公网IP,也不用设置路由器,使用简单。

cpolar官网:https://www.cpolar.com/

访问cpolar官网,注册一个账号,然后下载并安装客户端,具体安装教程可以参考官网文档教程。

  • windows系统:在官网下载安装包后,双击安装包一路默认安装即可。
  • linux系统:支持一键自动安装脚本,详细请参考官网文档——入门指南

cpolar安装成功后,在浏览器上访问本地9200端口【http://localhost:9200】,使用cpolar账号登录。

20230130105810

6. 创建公网地址

点击左侧仪表盘的隧道管理——创建隧道,创建一个我们上面的text generation webui 的http访问方式的7860隧道

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:7860
  • 域名类型:免费选择随机域名
  • 地区:选择China vip

点击创建

image-20230801141225580

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网地址,有两种访问方式,一种是http 和https

image-20230801141249727

7. 公网访问

我们使用http公网地址访问,可以看到,我们访问到了text generation webui 界面,这样一个公网地址访问就创建好了。

image-20230801141510482

8. 固定公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网,点击左侧的预留,选择保留二级子域名,地区选择china vip top,然后设置一个二级子域名名称,填写备注信息,点击保留。

image-20230801141655483

保留成功后复制保留的二级子域名地址:

image-20230801141712030

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

image-20230801141756806

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China VIP

点击更新

image-20230801141850590

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

image-20230801142101199

最后,我们使用固定的公网地址访问text generation webui 界面可以看到访问成功,一个永久不会变化的远程访问方式即设置好了。

image-20230801142201768

相关文章:

设计一基于Text generation web UI的语言模型部署与远程访问的方案​

前言 Text generation web UI可为类ChatGPT的大型语言模型提供能够快速上手的网页界面,不仅可以提高使用效率,还可满足私有化部署,或对模型进行自定义。目前,该Web UI已经支持了许多流行的语言模型,包括LLaMA、llama.…...

大数据概述

学习大数据有什么用? 2010年:大数据技术体系开始在国内火热 2015年:国务院印发《促进大数据发展行动纲要》 2016年:发改委发布关于组织实施促进大数据发展重大工程的通知 2017年:工信部印发大数据产业规划(2016-20…...

Muduo库编译学习(1)

1.muduo库简介 muduo是由Google大佬陈硕开发,是一个基于非阻塞IO和事件驱动的现代C网络库,原生支持one loop per thread这种IO模型,该库只支持Linux系统,网上大佬对其褒贬不一,作为小白用来学习就无可厚非了。 git仓库…...

【研发日记】Matlab/Simulink技能解锁(三)——在Stateflow编辑窗口Debug

文章目录 前言 State断点 Transition断点 条件断点 按State步进 Watch Data Value Sequence Viewer 分析和应用 总结 前言 见《【研发日记】Matlab/Simulink技能解锁(一)——在Simulink编辑窗口Debug》 见《【研发日记】Matlab/Simulink技能解锁(二)——在Function编辑…...

ZYNQ--MIG核配置

文章目录 MIG核配置界面多通道AXI读写DDR3MIG核配置界面 Clock Period: DDR3 芯片运行时钟周期,这个参数的范围和 FPGA 的芯片类型以及具体类型的速度等级有关。本实验选择 1250ps,对应 800M,这是本次实验所采用芯片可选的最大频率。注意这个时钟是 MIG IP 核产生,并输出给…...

MySQL 多表查询 连接查询 内连接

介绍 内连接查询是两张表中交集的部分 连接模式 隐式内连接 SELECT 字段列表 FROM 表1,表2 WHERE 条件显式内连接 SELECT 字段列表 FROM 表1 [INNER] JOIN 表2 ON 连接条件案例 有两张表一个表为学生表,另一个表为班级表,现在需要查询学生时候在查…...

T - SQL使用事务 及 在Winform使用事务

事务适用场景 1 事务使用在存储过程中,直接在数据库中进行编写 2 事务使用在Winfrom项目中 SQl:使用事务转账操作的实例 一般都会找一个变量记录错误的个数,error记录上一句sql的错误和错误编号 declare errornum int 0 -- 定义…...

string(三)--实现

大家看了这么久的string了&#xff0c;可能对string的简单实现有兴趣&#xff0c;所以我实现了一个string类的常用接口&#xff0c;大家可以自行查看&#xff1a; 我是分多文件写的&#xff1a; string.h: #pragma once #define _CRT_SECURE_NO_WARNINGS 1 #include <ios…...

textbox跨线程写入

实现实例1 实现效果 跨线程实现 // 委托&#xff0c;用于定义在UI线程上执行的方法签名 //public delegate void SetTextCallback(string text);public void textBoxText(string text){// 检查调用线程是否是创建控件的线程 if (textBox1.InvokeRequired){// 如果不是&#…...

幻兽帕鲁专用服务器搭建之Linux部署配置教程

大家好我是飞飞&#xff0c;上一期我分享了Windows系统的幻兽帕鲁服务器搭建教程。因为幻兽帕鲁这游戏对服务器的配置有一定的要求&#xff0c;很多小伙伴就寻思用Linux系统搭建占用会不会小一点&#xff1f;有计算机基础的小伙伴都知道Linux系统和Windows系统相比&#xff0c;…...

Kubernetes: 本地部署dashboard

本篇文章主要是介绍如何在本地部署kubernetes dashboard, 部署环境是mac m2 下载dashboard.yaml 官网release地址: kubernetes/dashboard/releases 本篇文章下载的是kubernetes-dashboard-v2.7.0的版本&#xff0c;通过wget命令下载到本地: wget https://raw.githubusercont…...

Outlook邮箱IMAP密码怎么填写?账户设置?

Outlook邮箱IMAP密码是什么&#xff1f;Outlook如何设置IMAP&#xff1f; 许多用户会选择通过IMAP协议将邮箱与各种邮件客户端进行连接。而在设置过程中&#xff0c;填写IMAP密码是必不可少的一步。那么&#xff0c;Outlook邮箱的IMAP密码应该如何填写呢&#xff1f;接下来&am…...

[计算机网络]--I/O多路转接之poll和epoll

前言 作者&#xff1a;小蜗牛向前冲 名言&#xff1a;我可以接受失败&#xff0c;但我不能接受放弃 如果觉的博主的文章还不错的话&#xff0c;还请点赞&#xff0c;收藏&#xff0c;关注&#x1f440;支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、poll函…...

【NTN 卫星通信】卫星和无人机配合的应用场景

1 场景概述 卫星接入网是一种有潜力的技术&#xff0c;可以为地面覆盖差地区的用户提供无处不在的网络服务。然而&#xff0c;卫星覆盖范围对于位于考古或采矿地点内部/被茂密森林覆盖的村庄/山谷/靠近山丘或大型建筑物的用户可能很稀疏。因此&#xff0c;涉及卫星接入和无人驾…...

Git 分布式版本控制系统

Git是一个分布式版本控制系统&#xff0c;可以记录项目文件的变动并管理项目的不同版本。以下是Git的基本概念和使用方式&#xff1a; 仓库&#xff08;Repository&#xff09;&#xff1a;Git用仓库来存储项目文件。仓库可以是本地仓库&#xff0c;也可以是远程仓库&#xff0…...

ng : 无法将ng项识别为 cmdlet、函数、脚本文件或可运行程序的名称

ng : 无法将“ng”项识别为 cmdlet、函数、脚本文件或可运行程序的名称”&#xff0c;出现这种错误&#xff0c;那说明你angular-cli没有下载所以环境变量里没有相应的东西 1、需要在cmd里输入npm install -g angular/cli 2、之后运行angular命令时还可能出现这种错误 “ng : …...

iOS小技能:苹果书签打包教程【WebClip描述文件(WebClip Configuration Profile)】

文章目录 引言I WebClip描述文件1.1 属性说明1.2 利用Apple Configurator 2生成描述文件II 部署方式和签名2.1 对 .mobileconfig 文件进行签名2.2 部署方式引言 WebClip描述文件(WebClip Configuration Profile)是一种用于iOS设备的简易配置文件,它可以在你的iOS设备(如iP…...

Spring Cloud项目合规性注册之-(单元集成测试报告)

用于合规性注册&#xff0c;本文章仅提供模板 这个大纲涵盖了从单元测试到集成测试&#xff0c;再到自动化和持续集成的全方位测试过程。 一、引言 1. 项目概述 "xxxxxx"是一个先进的数据管理和展示平台&#xff0c;旨在提供高效、可靠的数据服务。该平台通过集成各…...

IntelliJ IDEA 常用的插件

IntelliJ IDEA有很多常用的插件&#xff0c;这些插件可以扩展IDE的功能&#xff0c;提高开发效率。以下是一些常用的插件&#xff1a; Maven Helper&#xff1a;这是一款分析Maven依赖冲突的插件。在没有此插件时&#xff0c;查看Maven的依赖树和检查依赖包冲突可能需要输入命…...

超详细红黑树的模拟实现

前言 有人说设计出AVL树的的人是个大牛&#xff0c;那写红黑树&#xff08;RBTree&#xff09;的人就是天才&#xff01; 上一篇文章&#xff0c;我们已经学习了AVL树&#xff0c;牛牛个人认为AVL树已经够优秀了&#xff0c;那让我们一起探究一下&#xff0c;为什么红黑树比AV…...

电脑死机解决方法

长按开机键&#xff0c;如20秒&#xff0c;重启。...

上智院×魔搭×Datawhale:《AI4S实战派》教你用AI全面提升科研生产力

“论文代码下下来&#xff0c;环境配了两天&#xff0c;连import都报错。”“生成了个新材料结构&#xff0c;结果DFT一算——能量高得离谱&#xff0c;根本站不住&#xff01;”“蛋白质对接得分贼高&#xff0c;湿实验一做&#xff0c;全军覆没……”“想自动读文献&#xff…...

3D-Speaker说话人日志技术详解:多模块集成解决方案

3D-Speaker说话人日志技术详解&#xff1a;多模块集成解决方案 【免费下载链接】3D-Speaker A Repository for Single- and Multi-modal Speaker Verification, Speaker Recognition and Speaker Diarization 项目地址: https://gitcode.com/gh_mirrors/3d/3D-Speaker 3…...

C99_C11中的复合字面量(Compound Literals)

文章目录探索C99/C11中的复合字面量&#xff08;Compound Literals&#xff09;✨什么是复合字面量&#xff1f;&#x1f914;基本语法为什么需要复合字面量&#xff1f;&#x1f3af;复合字面量的类型与应用&#x1f4a1;1. 数组复合字面量2. 结构体复合字面量3. 联合体复合字…...

OpenClaw安全实践:用SecGPT-14B自动生成每周风险周报

OpenClaw安全实践&#xff1a;用SecGPT-14B自动生成每周风险周报 1. 为什么需要自动化风险周报 作为安全团队的成员&#xff0c;每周五下午总是我最头疼的时候。需要手动收集各个系统的告警日志、分析潜在风险、整理成PPT格式&#xff0c;最后发送给管理层。这个过程通常要花…...

开发者利器:OpenClaw+千问3.5-27B自动生成API文档

开发者利器&#xff1a;OpenClaw千问3.5-27B自动生成API文档 1. 为什么需要自动化API文档生成 作为一个长期维护开源项目的开发者&#xff0c;我深刻体会到维护API文档的痛苦。每次代码更新后&#xff0c;手动同步文档不仅耗时&#xff0c;还容易遗漏细节。直到发现OpenClaw与…...

精度套利:藏在盘口缝隙里的稳定机会

我们先来看 BN 上一个交易对。现货侧&#xff0c;PEPE/USDT 的价格精度是 1e-8&#xff1b; 合约侧&#xff0c;1000PEPEUSDT 的价格精度是 1e-7。 如果把合约价格换算回 PEPE/USDT 的单位&#xff0c;那么它对应的价格精度其实是 1e-10。 这意味着&#xff0c;现货和合约在同一…...

千问3.5-27B流式响应:OpenClaw实现长任务实时进度反馈

千问3.5-27B流式响应&#xff1a;OpenClaw实现长任务实时进度反馈 1. 为什么需要流式响应 上周我尝试用OpenClaw对接千问3.5-27B模型处理一份200页的PDF文档转换任务&#xff0c;结果遇到了一个尴尬场景——在飞书机器人对话窗口输入指令后&#xff0c;整整15分钟没有任何反馈…...

Java安全编程与静态分析实战

由于当前年份尚未到达2026年&#xff0c;且未明确具体代码功能需求&#xff0c;以下提供一份通用的Java代码质量与静态分析实战示例&#xff0c;涵盖常见代码规范、静态分析工具集成和单元测试实践。假设需求为“实现一个安全的字符串处理工具类并集成静态分析”&#xff1a;代…...

BGE-M3移动端部署:Android/iOS调用BGE-M3嵌入服务SDK封装

BGE-M3移动端部署&#xff1a;Android/iOS调用BGE-M3嵌入服务SDK封装 1. 项目背景与价值 BGE-M3是一个专门为检索场景设计的三合一"多功能"文本嵌入模型。它集成了密集检索、稀疏检索和多向量检索三种模式&#xff0c;能够在不同场景下提供最优的文本相似度计算能力…...