Skip to content

rootflo/flo-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

78 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Rootflo

Composable AI Agentic Workflow

Rootflo is an alternative to Langgraph, and CrewAI. It lets you easily build composable agentic workflows from using simple components to any size, unlocking the full potential of LLMs.

GitHub stars GitHub release (latest) GitHub commit activity License


Checkout the docs Β»

Github β€’ Website β€’ Roadmap


Flo AI 🌊

Build production-ready AI agents and teams with minimal code

Flo AI is a Python framework that makes building production-ready AI agents and teams as easy as writing YAML. Think "Kubernetes for AI Agents" - compose complex AI architectures using pre-built components while maintaining the flexibility to create your own.

✨ Features

  • πŸ”Œ Truly Composable: Build complex AI systems by combining smaller, reusable components
  • πŸ—οΈ Production-Ready: Built-in best practices and optimizations for production deployments
  • πŸ“ YAML-First: Define your entire agent architecture in simple YAML
  • πŸ”§ Flexible: Use pre-built components or create your own
  • 🀝 Team-Oriented: Create and manage teams of AI agents working together
  • πŸ“š RAG Support: Built-in support for Retrieval-Augmented Generation
  • πŸ”„ Langchain Compatible: Works with all your favorite Langchain tools

πŸš€ Quick Start

Installation

pip install flo-ai
# or using poetry
poetry add flo-ai

Create Your First AI Team in 30 Seconds

from flo_ai import Flo, FloSession
from langchain_openai import ChatOpenAI

# Define your team in YAML
yaml_config = """
apiVersion: flo/alpha-v1
kind: FloRoutedTeam
name: research-team
team:
    name: ResearchTeam
    router:
        name: TeamLead
        kind: supervisor
    agents:
      - name: Researcher
        role: Research Specialist
        job: Research latest information on given topics
        tools:
          - name: TavilySearchResults
      - name: Writer
        role: Content Creator
        job: Create engaging content from research
"""

# Set up and run
llm = ChatOpenAI(temperature=0)
session = FloSession(llm).register_tool(name="TavilySearchResults", tool=TavilySearchResults())
flo = Flo.build(session, yaml=yaml_config)

# Start streaming results
for response in flo.stream("Write about recent AI developments"):
    print(response)

πŸ“– Documentation

Visit our comprehensive documentation for:

  • Detailed tutorials
  • Architecture deep-dives
  • API reference
  • Best practices
  • Advanced examples

🌟 Why Flo AI?

For AI Engineers

  • Faster Development: Build complex AI systems in minutes, not days
  • Production Focus: Built-in optimizations and best practices
  • Flexibility: Use our components or build your own

For Teams

  • Maintainable: YAML-first approach makes systems easy to understand and modify
  • Scalable: From single agents to complex team hierarchies
  • Testable: Each component can be tested independently

🎯 Use Cases

  • πŸ€– Customer Service Automation
  • πŸ“Š Data Analysis Pipelines
  • πŸ“ Content Generation
  • πŸ” Research Automation
  • 🎯 Task-Specific AI Teams

🀝 Contributing

We love your input! Check out our Contributing Guide to get started. Ways to contribute:

  • πŸ› Report bugs
  • πŸ’‘ Propose new features
  • πŸ“ Improve documentation
  • πŸ”§ Submit PRs

πŸ“œ License

Flo AI is MIT Licensed.

πŸ™ Acknowledgments

Built with ❀️ using:


Built with ❀️ by the Rootflo team
Community β€’ Documentation