🦊 Finic (alpha 0.1.1)
在Python中构建复杂的集成。
Finic是一个开源的基于Python的集成平台(iPaaS),是企业级集成平台如Boomi、MuleSoft和Tray的替代方案。Finic的设计理念是简单到足以让业务用户通过最少的代码创建初步集成,同时又足够灵活,让开发人员和解决方案架构师能够直接在Python中构建复杂的集成。
特点:
- 🐣 **拖放式用户界面:**用于设计和测试新集成工作流的低代码Web界面。包括预构建的转换节点,可扩展以涵盖从字段映射和聚合、数据规范化和Python类型转换,到基于LLM的非结构化文档数据提取等任何用例。
- 🧑💻 **专用Python环境:**每个工作流都有一个可配置的Python环境,因此您可以安装所需的包来处理每个步骤的数据。
- 🪄 **生成式AI功能:**可选功能,利用LLM来:1)节省繁琐任务(如映射字段和编写转换)的时间,2)使业务用户能够理解工作流并自行生成简单的转换。
优势:
- **将集成与产品代码解耦:**Finic提供了一个高度可配置的集成框架,使您可以将产品代码与集成代码分开。
- **更快速和灵活的集成:**Finic旨在帮助团队实现现成集成平台不支持的长尾定制连接器。
- **开源:**Finic是开源的,不仅仅是左版权或源代码可用,因此您可以将其部署到自己的云端,最大限度地减少合规/法律摩擦。
🚧 路线图
- 文档和快速入门指南 - 待定
- 生成式AI功能 - 待定
- 监控 - 待定
- Finic云 - 待定
- 容器化以便于自托管 - 待定
- Github集成用于版本控制 - 待定
🙋🏻♂️ 常见问题
Finic是ETL工具吗?
虽然Finic可用于提取、转换和加载数据,但它并不是传统意义上的ETL工具。它提供了比Airflow或Dagster等ETL编排工具更高级的抽象,使业务团队也能使用,但它(目前)并未针对非常大的数据集的高效处理进行优化。Finic旨在通过API或SFTP在不同应用程序之间集成功能。
Finic是工作流自动化工具吗?
尽管Finic可以被非技术用户使用,但Finic不是工作流自动化工具。工作流自动化工具往往专注于需要连接具有标准化API的应用程序的简单用例,而iPaaS则针对通常需要大量数据规范化的复杂用例进行了优化。Finic还基于多源到一个目标的范式运作,这意味着无法链接触发多个应用程序中下游效果的API调用。这也使得它比工作流自动化平台更不容易出错,后者在堆栈中的单个应用程序出错时会完全失败。