# LLM-Director
## Introduction 📖
A light-weight Python library 🐍 for deploying DAG chains of customizable Large Language Model operations. Leveraging the asyncio framework, LLM-Director allows developers to create, manage, and orchestrate actions and processes in an efficient and scalable manner. With its unique structure and integration with FastAPI, LLM-Director offes a robust solution for building applications, API endpoints, and workflow automation systems. 


## Quick Install⚡
To get started with LLM-Director, you can install the package using pip:

```bash
pip install llm-director
```

Ensure you have Python 3.7 or higher installed, as LLM-Director relies on the latest features of asyncio and FastAPI.

## What You Can Build With LLM-Director 🏗️
With LLM-Director, you can create a variety of applications and systems:

1. **Asynchronous Workflow Systems**: Design and execute complex workflows with asynchronous actions, enhancing the efficiency and responsiveness of your applications.

2. **API Endpoints**: Easily integrate with FastAPI to expose your workflows as RESTful API endpoints, allowing for seamless interaction with front-end applications or external systems.

3. **Automated Data Processing Pipelines**: Implement pipelines for data processing, where each step can be a distinct action, conditionally processed, and managed by the Director.

4. **Event-Driven Architectures**: Build systems that react to specific events, trigger actions, and handle a series of responses in an orderly and scalable manner.

## Documentation 📚
The LLM-Director library consists of several key components:

- Director: The central orchestrator that manages actions and listeners.
- Action: The basic unit of functionality, representing a single task or process.
- Blocks: Specialized actions such as Split, Condition, Termination, Merge, and Save, each serving a unique purpose in the workflow.
- FastAPI Integration: Methods to expose actions and workflows as API endpoints.

For detailed documentation, visit LLM-Director Documentation (Coming Soon!).

## Contributing 🤝
Please Contribute! I hope to grow this fast, as I think many people will benefit from this framework.

