python+flask+frp(内网穿透)将大语言模型部署到公网上,向别人展示自己的项目!

首先申明,本文仅供学习,读者在尝试本文提到的技术时,请谨慎操作,自行承担风险。

其次,本文所演示的服务器为国内阿里云服务器,域名需要备案!!!


如果没有备案的域名或没有域名,但想体验公网访问web应用的,可以参考我的另一篇博客

使用fpr+Frpee,让你本地的web应用能够通过公网访问-CSDN博客


1.大语言模型的选择与部署

  在选择大语言模型的时候,首先需要有一台性能能够支撑大语言模型推理的电脑,本文中使用的大语言模型是ChatGLM3,python的环境配置在这里就不多讲了,我使用的事python+anaconda的配置。

(1)ChatGLM3的下载与环境配置

首先从Github上下载ChatGLM3项目,网址如下:
THUDM/ChatGLM3: ChatGLM3 series: Open Bilingual Chat LLMs | 开源双语对话语言模型 (github.com)THUDM/ChatGLM3: ChatGLM3 series: Open Bilingual Chat LLMs | 开源双语对话语言模型 (github.com)icon-default.png?t=N7T8https://github.com/THUDM/ChatGLM3THUDM/ChatGLM3: ChatGLM3 series: Open Bilingual Chat LLMs | 开源双语对话语言模型 (github.com)点击Download ZIP或者

git clone https://github.com/THUDM/ChatGLM3.git

解压下载的文件到你自己创建的文件夹里。

pip install -r requirements.txt

随后需要下载模型到chatglm3中,模型的下载位置在 

下载完成后将模型文件放在chatglm3下的

随后可以使用web_demo.py检验一下chatglm是否配置成功:

将图中的两行改成你模型放置的位置。

下面就可以检查你的chatglm3模型了,由于我打开的web_demo.py有点问题,所以我自己写了一个web_demo,使用的是gradio库

至此,ChatGLM3的配置完成。

2.网页界面的编写

这里使用的是flask框架快速编写一个聊天机器人界面,界面就不做展示了,设置好运行的端口为7000端口:

3.frp内网穿透设置

这里使用的服务器是阿里云服务器,服务器提供公网ip,内网穿透后通过公网ip来访问部署在本地的Web应用,你还需要购买一个域名,利用DNS解析你购买的域名,与服务器的公网ip绑定,这里不多赘述。

这里使用的frp是frp_0.50.0_windows_amd64版本。

其中frp的下载地址如下:

GitHub - fatedier/frp: A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet. (fgit.cf)icon-default.png?t=N7T8https://hub.fgit.cf/fatedier/frpfrp的文件下载解压后如下所示

红色框:客户端(本地部署)所需的文件

绿色框:服务端(服务器)上所需的文件

(1)服务端的配置

登录阿里云服务器

本文阿里云服务器使用的Ubuntu系统,首先使用命令下载frp,由于服务器在国内,所以使用国内github镜像网站hub.fgit.cf.com下载:

sudo wget https://hub.fgit.cf/fatedier/frp/releases/download/v0.50.0/frp_0.50.0_linux_amd64.tar.gz

解压文件:

tar -zxvf frp_0.50.0_linux_amd64.tar.gz

可以看到下载与解压的文件

进入解压后的文件,编辑frps.ini文件:

vim frps.ini

进行配置:

随后保存退出,这里的bind_port要与上面flask中设置的端口最好一致,token自己设置,3个dashboard是frp的控制面板,稍后再做介绍。

启动frps

./frps -c ./frps.ini

看到如下图所示证明你启动成功:

如果使用的是国内的云服务器,还要在服务器打开相应的端口:

随后检查frps是否配置成功,输入你服务器的公网ip加上dashboard的端口号,本文ip:7500,如果能够访问到网站说明配置成功:

(2)客户端的配置

下载window端的文件:

解压,并配置frpc.ini文件:

配置完成后,进入frp_0.50.0_windows_amd64文件夹下,输入下面命令启动服务:

frpc.exe -c ./frpc.ini

出现如下画面就表示穿透成功:

可以访问dashboard来查看连接:

这个时候登录你的域名就可以在公网上访问到你的web网页了:

但是域名需要备案!!!,不然会出现如下画面:

(3)frp会出现的问题:

1.dashboard页面打不开的问题,这个是因为你服务器的端口没有开放,以阿里云为例,源最好选0.0.0.0,全部开放:

2.frp监听端口创建成功无法访问http,网页中出现The page you requested was not found.这里采纳这位网友的建议:

至此,结束!!!

  • 19
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
1. 登录阿里云控制台,进入ECS实例页面,选择需要部署Flask项目的实例。 2. 在实例页面中,点击左侧导航栏中的“安全组”。在安全组页面中,点击“添加安全组规则”按钮,添加一个新的安全组规则,将协议设置为“TCP”、端口设置为“5000”(Flask默认端口),并选择允许所有来源IP访问。 3. 在实例页面中,点击左侧导航栏中的“SSH密钥对”。如果你还没有创建SSH密钥对,点击“创建SSH密钥对”按钮创建一个。 4. 在Windows系统中,使用PuTTYgen生成私钥和钥。将私钥下载到本地,将钥复制到ECS实例的“SSH密钥对”页面中。 5. 在Windows系统中,使用PuTTY连接到ECS实例。输入实例的网IP地址、端口号(默认为22)、用户名(默认为root),并选择刚才下载的私钥文件。 6. 在PuTTY连接成功后,输入以下命令更新系统软件包: sudo apt-get update sudo apt-get upgrade 7. 安装Python和pip: sudo apt-get install python3-pip 8. 安装Flask和其他需要的Python库: sudo pip3 install flask 9. 编写Flask项目代码,并将代码上传到ECS实例中。可以使用SFTP客户端(如FileZilla)将代码上传到ECS实例中。 10. 在ECS实例中,进入Flask代码所在的目录,运行以下命令启动Flask应用: export FLASK_APP=app.py flask run --host=0.0.0.0 11. 在浏览器中输入实例的网IP地址和Flask应用的端口号(默认为5000),访问Flask应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

余味_

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

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

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

打赏作者

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

抵扣说明:

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

余额充值