https://github.com/exios66/langchain-agents
https://github.com/exios66/langchain-agents
Last synced: 9 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/exios66/langchain-agents
- Owner: Exios66
- License: mit
- Created: 2025-01-30T00:24:14.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-15T19:31:37.000Z (over 1 year ago)
- Last Synced: 2025-03-15T20:25:55.908Z (over 1 year ago)
- Language: Python
- Homepage: https://exios66.github.io/Langchain-Agents/
- Size: 182 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Multi-Agent Workflow Framework
A powerful framework for managing and executing workflows across multiple AI agents.
## Features
- Multiple agent support (Professor Athena, Dr. Milgrim, YAAT)
- Sequential, parallel, and hybrid workflow execution
- Real-time status updates and monitoring
- Secure API authentication
- Rate limiting and request validation
- Beautiful web interface
- Configurable logging and monitoring
## Setup
1. Clone the repository:
```bash
git clone https://github.com/yourusername/multi-agent-workflow.git
cd multi-agent-workflow
```
2. Create and activate a virtual environment:
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
```
3. Install dependencies:
```bash
pip install -r requirements.txt
```
4. Set up environment variables:
```bash
cp .env.template .env
```
Edit the `.env` file with your configuration settings.
## Configuration
The framework uses a hierarchical configuration system:
1. Environment Variables (highest priority)
2. `.env` file
3. Default values in `config.py`
### Required Configuration
- `API_KEY`: Your secure API key for authentication
- `DATABASE_URL`: Database connection string
- `LOG_LEVEL`: Logging level (INFO, DEBUG, etc.)
### Optional Configuration
- `CORS_ORIGINS`: Allowed CORS origins (default: *)
- `ALLOWED_HOSTS`: Allowed hosts (default: *)
- `MAX_CONCURRENT_WORKFLOWS`: Maximum concurrent workflows
- `MAX_WORKFLOW_TIME`: Maximum workflow execution time
## Authentication
The API uses API key authentication. Include your API key in requests:
```bash
curl -H "X-API-Key: your_api_key" http://localhost:8003/workflow/start/
```
Or use the web interface and enter your API key in the authentication form.
## Rate Limiting
- 100 requests per minute per client
- Rate limit status available in response headers
- Web interface shows rate limit warnings
## API Endpoints
See [API_ENDPOINTS.md](docs/API_ENDPOINTS.md) for detailed API documentation.
## Web Interface
Access the web interface at `http://localhost:8003`:
1. Enter your API key in the authentication form
2. Create and monitor workflows
3. View real-time status updates
4. Access workflow history and results
## Development
1. Install development dependencies:
```bash
pip install -r requirements-dev.txt
```
2. Run tests:
```bash
pytest tests/
```
3. Start the development server:
```bash
python run.py
```
## Security Best Practices
1. Never commit `.env` files
2. Use strong, unique API keys
3. Regularly rotate API keys
4. Monitor API usage and rate limits
5. Keep dependencies updated
## Contributing
1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Submit a pull request
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
```bash
multi_agent_framework/
│── agents/
│ ├── agent_a.py
│ ├── agent_b.py
│ ├── subgraph.py
│── core/
│ ├── state.py
│ ├── workflow.py
│ ├── graph_builder.py
│── integrations/
│ ├── human_review.py
│ ├── streaming.py
│ ├── error_handling.py
│── run.py
│── requirements.txt
│── README.md
```