Metadata-Version: 2.1
Name: taskflowai
Version: 0.1.6
Summary: TaskFlowAI is a lightweight python framework for building LLM based pipelines and multi-agent teams
Author-email: Philippe Andre Page <philippeandrepage@gmail.com>
License: MIT License
        
        Copyright (c) 2024 Philippe Andre Page
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
        
Project-URL: Homepage, https://github.com/philippe-page/taskflowai/
Project-URL: Bug Tracker, https://github.com/philippe-page/taskflowai/issues
Project-URL: Documentation, https://taskflowai.org
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests<3.0,>=2.31
Requires-Dist: pydantic<2.0,>=1.10
Requires-Dist: anthropic<0.32.0,>=0.31.2
Requires-Dist: openai<2.0.0,>=1.37.0
Requires-Dist: cohere<6.0,>=5.6.2
Requires-Dist: beautifulsoup4<5.0,>=4.12
Requires-Dist: fake-useragent<2.0,>=1.1
Requires-Dist: Pillow<10.0,>=9.5
Requires-Dist: tqdm<5.0,>=4.65
Requires-Dist: python-dotenv<2.0,>=1.0
Requires-Dist: PyYAML<7.0,>=6.0
Requires-Dist: pandas<3.0,>=2.2
Requires-Dist: ollama<0.2.0,>=0.1.0
Requires-Dist: lxml<5.0,>=4.9
Requires-Dist: halo<0.1.0,>=0.0.31
Provides-Extra: dev
Requires-Dist: pytest<8.0,>=7.0; extra == "dev"
Requires-Dist: black<24.0,>=23.0; extra == "dev"
Requires-Dist: isort<6.0,>=5.0; extra == "dev"
Requires-Dist: mypy<2.0,>=1.0; extra == "dev"

# TaskFlowAI: Flexible Framework for LLM-Driven Pipelines and Multi-Agent Teams

TaskFlowAI is a lightweight and flexible framework designed for creating AI-driven task pipelines and workflows. It provides developers with a streamlined approach to building agentic systems without unnecessary abstractions or cognitive overhead.

## Key Features

TaskFlowAI offers a modular architecture that is easy to extend and integrate into existing projects. It provides flexible workflow design capabilities, ranging from deterministic pipelines to fully autonomous agent teams. The framework supports advanced tool assignment and usage, allowing for dynamic tool assignment and self-determined tool use by agents.

One of the standout features of TaskFlowAI is its diverse language model support, including integration with OpenAI, Anthropic, OpenRouter, and local models. It also comes with a comprehensive toolset that includes web interaction, file operations, embeddings generation, and more. Transparency and observability are prioritized through detailed logging and state exposure.

TaskFlowAI is designed with minimal dependencies, featuring a lightweight core with optional integrations. It also incorporates best practices such as structured prompt engineering and robust error handling.

## Core Components

The framework is built around several core components. Tasks serve as discrete units of work, while Agents act as personas that perform tasks and can be assigned tools. Tools are wrappers around external services or specific functionalities. Language Model Interfaces provide a consistent interface for various LLM providers, ensuring seamless integration across different AI models.

## Getting Started

1. Install TaskFlowAI: `pip install taskflowai`
2. Import necessary components:
   ```python
   from taskflowai import Task, Agent, OllamaModels
   ```
3. Create your workflows by defining tasks, agents, and tools

## Examples

TaskFlowAI supports various use cases, from a simple agent system to complex multi-agent teams. Check out the documentation for detailed examples and usage patterns at taskflowai.org.

TaskFlowAI empowers developers to build sophisticated AI applications that can handle a wide range of tasks efficiently and effectively. Whether you're creating a simple chatbot or a complex multi-agent system, TaskFlowAI provides the building blocks and extensibility to bring your ideas to life.
