gradio | streamit | dash | |
---|---|---|---|
主要使用场景 | 可交互小 Demo | 工作流、DashBoard | DashBoard、生产环境的复杂演示应用 |
上手难度 | 简单 | 简单 | 中等 |
组件丰富度 | 低 | 高 | 高 |
综合扩展性 | 低 | 中 | 高 |
Jupyter Notebook 内支持 | 是 | 否 | 是 |
是否完全开源 | 是 | 是 | 部分企业级功能未开源 |
github stars | 13.4k | 23.1k | 18.2k |
案例列表 | https://github.com/gradio-app/awesome-demos | https://streamlit.io/gallery | https://dash.gallery/Portal/ |
Gradio能够快速实现AI算法可视化部署,在HuggingFace上有很多人使用
gradio 基于 svelte,它的初步使用非常简单,同时它的自封装组件的功能也相对比较完整,因此可以让开发者专注于编写基于 python 代码的业务处理逻辑,无需关注更多 web 前端页面的实现细节。
Streamlit • A faster way to build and share data apps
streamit 基于 React ,它的上手使用也非常之简单,也是可以在前后端开发知识为 0 的情况下就可以轻松上手
Dash Documentation & User Guide | Plotly
dash 基于 Plotly.js、React 和 Flask,因此相对于前两者,它的启动和编码方式更“像”一个 python 后端,也因此代码会稍微多一些。
基于VUE的框架【不是专门为机器学习相关设计的】
NiceGUI 是一个易于使用的基于 Python 的 UI 框架,它显示在您的 Web 浏览器中。 您可以创建按钮、对话框、Markdown、3D 场景、绘图等等。
它非常适合微型 Web 应用程序、仪表板、机器人项目、智能家居解决方案和类似用例。 您还可以在开发中使用它,例如在调整/配置机器学习算法或调整电机控制器时。