1

下面是我在 streamlit 上部署我的 ml 模型的代码。

我正在使用 Google 协作

!pip install streamlit --quiet
!pip install pyngrok==4.1.1
from pyngrok import ngrok
%%writefile app.py
import streamlit as st
import joblib
st.title('Spam Ham Deployment')
test_model=joblib.load('spam_ham')
ip=st.text_input('Enter your message')
op=test_model.predict([ip])
if st.button('Predict')
  st.title(op)
!nohup streamlit run app.py &
url=ngrok.connect(port='8501')
url

注意:最初我的 PC 上没有 ngrok

运行最后一个代码块后,我得到了 url,但 ngrok 要我创建一个帐户。我创建了一个帐户,在 Windows 上提取了 ngrok,验证了我的 ngrok 代理并重新启动了我的计算机。我再次运行最后一个块并收到错误“您的帐户在单个 ngrok 客户端会话上运行的隧道可能不超过 2 个。” 所以我终止了进程并运行了所有代码块。但是,在获取 URl 并在浏览器中运行它之后,它会告诉您再次注册。

注意:生成 URL 时有警告 't=2022-01-22T22:40:55+0000 lvl=warn msg="can't bind default web address, trying alternatives" obj=web addr=127.0.0.1 :4040'

为什么会这样?

有人可以告诉我应该怎么做才能解决这种情况吗?

编辑:我尝试将端口更改为具有侦听状态的 5040,但随后显示不同的错误“与http://9039-35-186-177-6.ngrok.io的连接已成功通过隧道连接到您的 ngrok 客户端,但是客户端未能建立与本地地址 localhost:5040 的连接。

4

0 回答 0