AB
AiBoss
project

Flowra - an open-source AI workflow development tool developed by Moda in collaboration with the Wuli team.

Flowra is an open-source AI workflow development tool developed by ModelScope in collaboration with the Wuli team. It is the core engine of FlowBench. The tool provides a graph execution engine and a node package development toolchain, supporting a rich type system, ...

What is Flowra?

Flowra is an open-source AI workflow development tool developed by ModelScope in collaboration with the Wuli team, and it serves as the core engine of FlowBench. The tool provides a graph execution engine and a node package development toolchain, supporting rich type systems, DAG execution engines, intelligent caching, distributed scheduling, and other features. Flowra can quickly encapsulate machine learning models and algorithms, deeply integrating with FlowBench. Developed node packages can be directly imported into FlowBench, achieving a seamless transition from development to deployment. The tool's concise API and high-performance design allow developers to build complex AI workflows like assembling building blocks, suitable for rapid prototyping, multimodal processing, and production-level deployment.

Flowra's main functions

  • A complete type systemIt supports various multimedia data types (such as images, videos, audio, 3D meshes) and front-end interactive components, and automatically verifies at runtime, simplifying complex data processing logic.
  • DAG Execution EngineIt organizes workflows based on directed acyclic graphs (DAGs), and features intelligent caching, parallel scheduling, distributed support, and error recovery, thereby improving execution efficiency and stability.
  • Complete development toolchainProvides support for project creation (flowra create), Node Managementflowra projectLocal debuggingflowra debugFrom packaging and publishing ()flowra buildFull-process support.
  • Seamless integration with ModelScopeBuilt-in support for ModelScope allows you to download and manage AI models with a single line of code, and supports model caching and version control.
  • Flexible storage backendIt supports multiple storage services such as Alibaba Cloud OSS, MinIO, and local file systems, adapting to different deployment scenarios and optimizing storage and data sharing.
  • High-performance execution optimizationThe intelligent caching mechanism avoids redundant calculations, and the distributed scheduler supports parallel execution of multiple workers, dynamic task allocation, and automatic retry for failures, ensuring efficient and stable operation.

How to use Flowra

  • Install FlowraCreate a Python virtual environment using Conda and install Flowra to ensure your development environment is ready.
  • Create a project:use flowra create The command quickly creates a new node package project, preparing it for development.
  • Development NodeDefine and develop custom nodes in your project, simplifying the development process with the tools and type system provided by Flowra.
  • Build nodesPackage: Run flowra build The command packages the developed node into .nodebin This document is for future use.
  • Using in FlowBench: will generate .nodebin Import the files into the FlowBench client, and you can use these nodes to build workflows in the visual interface.
  • Debugging and optimizationUse Flowra's debugging tools for local testing and leverage smart caching and distributed scheduling to optimize workflow performance.

Flowra project address

  • GitHub repositoryhttps://github.com/modelscope/flowra

Application scenarios of Flowra

  • Image Processing and Object DetectionIt is used for real-time target detection and image classification in security monitoring, thereby improving the intelligence level of the monitoring system.
  • Video Analysis and EditingIt supports real-time analysis and content editing of video streams, making it suitable for intelligent traffic monitoring and video creation.
  • Audio processing and speech recognitionIt enables audio enhancement and speech recognition functions, which can be applied to the development of intelligent customer service and voice assistants.
  • Multimodal data fusionBy combining various data such as images, audio, and text, a multimodal perception system can be constructed for intelligent driving or intelligent security.
  • Enterprise-level data processingQuickly build data processing workflows to support the cleaning, analysis, and visualization of large-scale data, thereby improving enterprise operational efficiency.