【Gradio-Windows-Linux】解决share=True无法创建共享链接,缺少frpc_windo ...

打印 上一主题 下一主题

主题 670|帖子 670|积分 2010

前言

随着呆板学习技术的快速发展,将练习好的模子部署为实际应用变得愈发紧张。Gradio作为一个强大的开源库,为我们提供了一个简朴而高效的解决方案。然而,近期在利用 share=True 时可能会碰到一些问题,详细来说,问题可能出如今缺少 frpc_windows_amd64_v0.2 文件的情况下,导致 share=True 功能无法正常工作。为相识决这个问题,我们提供了手动下载并添加该文件的详细步骤,使得您可以大概顺利地部署并共享您的呆板学习模子。
在呆板学习模子部署过程中,Gradio 和 frpc 是两个极具价值的工具。Gradio 提供了简朴易用的界面,使得用户可以轻松地与模子进行交互,而 frpc 则是一个快速的反向代理工具,可以将本地服务映射到公共网络,使得长途访问成为可能。

  
   Could not create share link. Please check your internet connection or our status page: https://status.gradio.app.
  很多朋友告诉我放入指定位置后仍然无法创建共享链接,我没碰到过这种情况,本日突发奇想利用这个下令禁止frpc实行权限
  1. icacls frpc_windows_amd64_v0.2 /deny Users:(X)
复制代码

于是这个问题就复现了

要在 Windows 体系上为 frpc_windows_amd64_v0.2 文件授予实行权限,您可以利用 icacls 下令。请按照以下步骤进行操作:

  • 打开下令提示符(以管理员身份运行其实不是管理员也行)。

    • 在开始菜单中搜索 “下令提示符”。
    • 右键单击 “下令提示符”,然后选择 “以管理员身份运行”。

  • 切换到 frpc_windows_amd64_v0.2 文件地点的目录。

    • 利用 cd 下令进入文件地点的目录。例如:cd C:\path\to\file

  • 利用 icacls 下令授予文件实行权限。

    • 运行以下下令:icacls frpc_windows_amd64_v0.2 /grant UsersRX)


这将为 frpc_windows_amd64_v0.2 文件授予所有效户的读取和实行权限。

问题形貌

在利用 Gradio 部署呆板学习模子时,您可能会碰到以下报错信息:
  1. Running on local URL: http://127.0.0.1:7860
  2. Could not create share link. Missing file: E:\venv\lib\site-packages\gradio
  3. \frpc_windows_amd64_v0.2.
  4. Please check your internet connection. This can happen if your antivirus software blocks the download of this file. You can install manually by following these steps:
  5. 1. Download this file: [frpc_windows_amd64.exe](https://cdn-media.huggingface.co/frpc-gradio-0.2/frpc_windows_amd64.exe)
  6. 2. Rename the downloaded file to: `frpc_windows_amd64_v0.2`
  7. 3. Move the file to this location: `E:\venv\lib\site-packages\gradio
  8. `
复制代码
这是你pip安装gradio的路径,你必要将frpc_windows_amd64_v0.2放在该路径下
  1. E:\venv\lib\site-packages\gradio
复制代码
问题可能缘故原由

当您设置了 share=True 后,Gradio 会实验创建一个公共链接,以便用户可以通过网络访问您部署的模子。在背后,Gradio 利用了 frpc 来实现这个功能。
然而,在近期的更新中,Gradio 似乎不再默认包含 frpc_windows_amd64_v0.2 文件,因此必要手动下载并添加到指定位置才华确保 share=True 功能正常运作。
我在8月前利用该功能一切正常,你可以实验利用everything搜索frpc_windows_amd64,我的就是在旧的环境中找到的,这个可能是近期更新可能导致 Gradio 不再默认包含 frpc_windows_amd64_v0.2 文件,必要用户根据呆板版本自行下载,从而引发了此问题。
Gradio简介

Gradio 为用户提供了一个直观易用的界面,使得将模子部署为 Web 应用或通过 API 提供服务成为一件相对轻易的事情。以下是 Gradio 的一些紧张特点和功能:

  • 用户友好的交互界面
Gradio 提供了一个直观的用户界面,用户可以通过这个界面与呆板学习模子进行交互。这意味着即使没有深入的技术知识,也可以轻松地利用部署的模子。

  • 支持多种输入类型
Gradio 支持多种输入类型,包罗文本、图像、音频、视频等。这使得它实用于各种类型的呆板学习模子,从天然语言处理到计算机视觉和语音识别。

  • 快速部署
利用 Gradio,您可以在短时间内将模子部署为一个可以通过 Web 浏览器访问的应用程序。这降低了将模子投入实际应用的门槛。

  • 与常见深度学习框架兼容
Gradio 可以与很多常见的深度学习框架(如 TensorFlow、PyTorch)和呆板学习库(如 Scikit-learn)无缝集成,使得它实用于各种不同的模子。

  • 灵活的部署选项
您可以选择将模子部署为 Web 应用或者通过 API 提供服务,这取决于您的详细需求。这种灵活性使得 Gradio 在不同的场景中都可以大概发挥作用。

  • 自定义选项
Gradio 提供了丰富的选项,允许用户自定义交互界面的外观和举动,以及与模子进行交互的方式。

  • 支持多种输出类型
除了接受多种输入类型之外,Gradio 还可以处理多种输出类型,从分类到回归等等。

  • 可视化反馈
Gradio 具有可视化反馈功能,可以显示模子的预测效果,利用户可以大概直观地明白模子的性能。
总的来说,Gradio 提供了一个简朴而强大的工具,使得将呆板学习模子部署为实际应用变得更加轻易。它的用户友好性和灵活性使得它成为很多开辟者和研究者的首选工具之一。无论是用于原型开辟、演示照旧实际应用,Gradio 都能为您提供便捷的解决方案。
frpc 简介

frpc(Fast Reverse Proxy Client)是一个用于将本地服务映射到公共网络的高效反向代理客户端工具。它是 frp(Fast Reverse Proxy)项目标一部分,提供了在网络中快速、安全地共享本地服务的本领。
以下是 frpc 的一些紧张特点和功能:

  • 反向代理功能
frpc 紧张用于实现反向代理,将本地的服务映射到公共网络中。这意味着您可以将本地的服务通过 frpc 公开,使得长途用户可以访问这些服务。

  • 网络穿透
frpc 可以穿透 NAT、防火墙等网络屏障,使得即使在复杂的网络环境中,也可以大概实现长途访问。

  • 安全性
frpc 提供了一些安全步伐,如身份验证和加密,以保护您的服务和数据免受未经授权的访问。

  • 支持多种传输协议
frpc 支持多种传输协议,包罗 TCP、UDP、HTTP、HTTPS 等,使得它实用于各种不同类型的服务和应用。

  • 配置灵活
frpc 利用简朴的配置文件来指定映射规则,使得用户可以轻松地配置映射规则以满足特定需求。

  • 跨平台支持
frpc 可以在多种操作体系上运行,包罗 Windows、Linux、macOS 等。

  • 高性能
frpc 采用了高效的设计和实现,具有很好的性能表现,可以大概处理高负载的情况。

  • 动态更新
frpc 支持动态更新配置,可以在运行时更新映射规则,而无需重启 frpc 服务。
总的来说,frpc 提供了一种快速、安全、灵活的方式来共享本地服务,使得长途访问变得更加轻易。它在很多场景下都得到了广泛的应用,尤其在必要长途访问本地服务的情况下,是一个非常实用的工具。无论是用于个人项目、企业应用照旧开辟者的测试环境,frpc 都能为您提供方便的解决方案。
解决方法


  • 下载 frpc_windows_amd64_v0.2。
  • 将下载的文件重定名为 frpc_windows_amd64_v0.2。
  • 将该文件移动到 Gradio 的安装目录下,通常位置必要根据你运行时gradio的提示决定:
如果你和我一样每次都利用python -m venv venv创建新的空白表明器环境
半主动化利用.bat手动打包迁徙python项目

  1. python -m venv venv
  2. call venv\Scripts\activate.bat
  3. python -m pip install -i https://mirrors.aliyun.com/pypi/simple/ --upgrade pip setuptools
  4. pip install -i https://mirrors.aliyun.com/pypi/simple/ gradio
复制代码
那么Gradio 的安装路径就在python -m venv venv
创建的venv文件夹中
  1. venv\lib\site-packages\gradio
复制代码
请在进行任何文件操作前,务必备份紧张数据,以防意外情况发生。
适配frpc下载链接

我的网络登录不上huggingface,我这里有三个版本适配的frpc,
frpc_windows_amd64 v0.2
frpc linux arm64
frpc_linux_amd64
链接:https://pan.baidu.com/s/1sunHLWTJhNCuvNw8QYjRJQ?pwd=3alv
提取码:3alv
GitHub
https://github.com/friklogff/frpc_windows_amd64_v0.2
Gradio 中 Share=True 的工作原理

当在 Gradio 中设置 share=True 时,它会触发一系列后台操作,以实现以下效果:

  • 创建公共链接
    Gradio 首先会实验在网络上生成一个可以被外部访问的链接,以便用户可以直接通过浏览器等方式与模子进行交互。这个链接是一个统一资源定位符(URL),类似于 http://127.0.0.1:7860。
  • 利用 frpc 实现反向代理
    Gradio 利用了 frpc 的反向代理功能,将本地的服务暴露到公共网络上。通常情况下,frpc 会创建一个随机的临时端口,并将该端口映射到 Gradio 提供的本地服务上。如许,长途用户可以通过访问这个公共端口来利用模子。
  • 确保稳固性与安全性
    在这个过程中,Gradio 会确保链接的稳固性和安全性。它会处理各种网络条件和可能出现的问题,以保护用户的隐私和数据安全。
  • 启动本地服务
    Gradio 会在本地启动一个服务器,该服务器会监听来自 frpc 映射的临时端口的请求。当长途用户访问公共链接时,请求将通过反向代理转发到本地服务。
  • 反馈预测效果
    一旦收到请求,Gradio 会将请求的数据传递给模子进行预测,并将预测效果返回给用户。这个过程通常是及时的,用户可以即时看到模子的相应。
  • 关闭临时端口
    当用户结束访问或链接超时时,Gradio 会主动关闭 frpc 创建的临时端口,从而包管安全性和资源的开释。
总的来说,通过 Gradio 中的 share=True 选项,用户可以将模子服务轻松地共享到公共网络中,使得长途用户可以通过浏览器等方式与模子进行交互。这个过程是主动化的,无需用户手动配置反向代理或网络配置,大大降低了部署模子的复杂度。
总结

通过本文的介绍息争决方案,您应该可以大概顺利解决利用 Gradio 中 share=True 功能时可能碰到的问题。Gradio 作为一个强大的呆板学习模子部署工具,为我们提供了极大的便利性和灵活性。通过正确配置 frpc 组件,您可以轻松地将模子服务共享到公共网络中,使得长途用户可以方便地与您的模子进行交互。
希望本文对您在呆板学习模子部署过程中的问题解决提供了资助,也希望您能充分利用 Gradio 和 frpc,为您的项目和应用提供更好的用户体验和服务。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

民工心事

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表