17611538698
webmaster@21cto.com

开源库 Taipy :将 AI 算法、数据转化为 Web 应用程序

开源 0 208 2024-03-07 11:49:59

图片

导读:Taipy 是一个新的免费框架,可让 Python 开发人员、数据科学家和机器学习工程师创建 Web 应用程序。

各位开发者,又有新的免费开源 Python 库,允许我们将数据和 AI 算法转化为可立即投入生产的 Web 应用程序。

这个扩展库名为Taipy,旨在支持数据科学和机器学习工程师构建全栈应用程序。

Github:https://github.com/Avaiga/taipy

该产品的所在公司由Vincent Gosselin和Albert Antoine创立,两人都是技术界的资深人士。

图片

官方网站:https://www.taipy.io/

Gosselin 担任首席执行官,他在 IBM 数据科学和高级分析部门工作了八年,并在 DecisionBrain 领导高级分析。Taipy 的执行董事 Antoine 曾任数据分析公司 Avaiga.com 的首席执行官,并在数据科学平台 Dataiku 从事业务开发工作。

数据科学家兼 Taipy 全球社区经理 Rym Michaut 说:

“他们在创建 Taipy 时想要解决的问题是数据空间中项目的失败率,这些项目大部分都是用 Python 编写的。这就是我们从 Java 转向 Python 的原因。”

Taipy 的三个组成部分


开发人员不需要任何 HTML、JavaScriptCSS的先验知识即可使用 Taipy,但需要对 Python 语言有基本的了解。


根据Taipy 常见问题解答页面描述,该工具由三个组件组成,从 Taipy 前端开始,使用简单的 Markdown 语言构建图形用户界面,以创建带有图形元素的交互式页面。


“开发人员对外观和感觉有很大的控制权,”Michaut说。“我们为所有应用程序和 UI 组件提供默认的 CSS 样式,但可以通过 Python 或 CSS 代码进行修改。我们在外观和感觉方面的主要优势是布局:我们提供简单的语法来自定义应用程序的设计,并且我们还有VS Code扩展,允许开发者在不运行 Python 代码的情况下预览页面的设计。”


她承认,虽然该库是可定制的,但“默认布局和外观可能不如其他可定制性较低的库那么令人印象深刻,”她说。为了让开发者了解使用 Taipy 构建的实际应用程序,她分享了为一家公司完成的财务预测仪表板模型。


图片使用 Taipy 制作的Web应用程序模型,由 Taipy 提供。(https://pl-dashboard.taipy.cloud/group_contributions)

在接下来的几个月中,Taipy 计划发布新的低代码产品,允许用户使用 Web 界面中的拖放 UI 组件来编辑前端,而无需进行编码。

Taipy 后端用于构建和管理数据流,包括可以调用代码的管道。常见问题解答指出,它可以调度任务、缓存重复操作以及并行化任务,“以优化性能并简化管道和场景的管理”。“Taipy 后端的主要目标是翻译标准 Python 代码并增强管道和场景性能和管理”。

第三个组件 Taipy Rest 提供了一种通过 Rest API 访问场景、管道和数据访问器的方法。

“Taipy 还专注于在全面的生产应用程序中工作:当我们使用我们所谓的回调在用户交互上运行最少的必要任务时,前端和后端在不同的线程上运行,因此用户仍然可以与应用程序交互,即使如果模型在后台运行,”Michaut 解释道。

Taipy 默认可以连接到 pickle、CSV、Excel、JSON、Mongo、SQL 和 Parquet。

当然,如果你可以使用 Python 连接到数据源,那么只需几行代码,它也可以在 Taipy 中运行,”。

此外,Taipy 还有连接到AWS和DataBricks的技术文档。

与现有数据科学、ML(machine learning 机器学习) 库集成


Taipy 可以通过集成其他库来有效地处理大型数据集和机器学习算法。由于该库主要关注前端,因此不会干扰任何可以用Python 代码编写的内容。Taipy 调用在网页内运行 ML 算法所需的不同库并直接与其交互。


例如,开发者可以从 Taipy 界面更改模型参数,使用按钮运行模型并在 Taipy 网页中输出可视化结果。


Taipy 还提供允许用户实时可视化大型数据集并与之交互的功能。其中一个功能是抽取器,它可以减少图表上对曲线影响最小的点的数量。此外,Taipy还具有并行或分布式集群运行机器学习模型的功能。


目标:易用性和可扩展性


我们拿Taipy 与其他类似框架比较。例如以下流行框架:


  • Streamlit(https://streamlit.io/)

  • Dash(https://dash.plotly.com/

  • Flask(https://flask.palletsprojects.com/en/3.0.x)


与以上框架相比较,Taipy 的目标是达到这些解决方案所没有的易用性和可扩展性的最佳点。


现在 Python 图形包场景分为两极:一方面,像 Streamlit 这样的工具易于使用,但无法扩展到生产应用程序。当面对多个页面/用户或大型数据集/计算时,它们经常会失败;另一方面,像 Dash 这样的工具具有可扩展性,但学习曲线却很陡峭。


而Taipy团队看到了市场的空白,并抓住了这个机会。各位开发者,可以试一试了~

作者:校长

评论