A framework for creating multi-agent colonies
Project description
Aegis Multi-Agent Framework
A powerful framework for creating multi-agent AI colonies, with support for local LLM integration through Ollama.
Features
- 🤖 Multi-agent system architecture
- 🔄 Seamless Ollama LLM integration
- 🛠️ Easy-to-use API
- 📚 Comprehensive examples
- 🔌 Extensible design
Installation
Prerequisites
- Python 3.8 or higher
- Ollama (optional, for LLM integration)
Install from PyPI
pip install aegis-framework
Install from Source
git clone https://github.com/metisos/aegis_framework.git
cd aegis_framework
pip install -e .
Quick Start
Basic Usage (With Ollama LLM)
from aegis_framework import MasterAIAgent, OllamaLocalModel
# Initialize Ollama model
llm = OllamaLocalModel(model="llama2") # or any other Ollama model
# Create an agent with LLM
agent = MasterAIAgent(name="LLM Agent", llm=llm)
# Ask questions
response = agent.answer_question("Explain quantum computing")
print(response)
Coding Assistant Example
The framework includes a powerful coding assistant example that can help with various programming tasks:
from aegis_framework import MasterAIAgent, OllamaLocalModel
def create_coding_agent():
"""Create an AI agent specialized for coding tasks"""
llm = OllamaLocalModel(model="llama2")
return MasterAIAgent(name="Code Assistant", llm=llm)
# Create the coding agent
agent = create_coding_agent()
# Example coding tasks
coding_questions = [
"Write a Python function that implements binary search",
"Create a Flask REST API endpoint",
"Write unit tests for email validation"
]
# Get coding assistance
for question in coding_questions:
print(f"\nQuestion: {question}")
response = agent.answer_question(question)
print(f"Response: {response}")
See coding_agent_example.py for a complete example with interactive mode.
Sample Scripts
The package includes several example scripts:
sample_usage.py: Basic usage examplescoding_agent_example.py: Coding assistant implementation
Configuration
Supported Ollama Models
You can use any model available in Ollama. Some recommended models:
- llama2
- codellama
- mistral
- gemma
To use a specific model:
llm = OllamaLocalModel(model="your_preferred_model")
Development
Running Tests
python -m pytest tests/
Contributing
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contact
- Author: Metis Analytics
- Email: cjohnson@metisos.com
- GitHub: https://github.com/metisos/aegis_framework
Acknowledgments
- Thanks to the Ollama team for their excellent LLM runtime
- All contributors and users of the framework
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aegis_framework-0.1.13.tar.gz.
File metadata
- Download URL: aegis_framework-0.1.13.tar.gz
- Upload date:
- Size: 10.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1a5beaeb0e677fe87c9556dcdfb9087b3fe84bc9884e4d36c9e91149780d3b1
|
|
| MD5 |
10fbba1ec81ccb0df6b6e438299edc5a
|
|
| BLAKE2b-256 |
224f973cdcdabca5e1853ae6a7d03899ffaf06d6b4db17d15f0a0f2eb71703b3
|
File details
Details for the file aegis_framework-0.1.13-py3-none-any.whl.
File metadata
- Download URL: aegis_framework-0.1.13-py3-none-any.whl
- Upload date:
- Size: 12.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a23217c2aee5a0e4495615200e1b7edfc671a14ab4c2ccb22aa17a405aa7bb53
|
|
| MD5 |
58f43185ed0034bdff237c5a93fadd85
|
|
| BLAKE2b-256 |
5a70f1b071bfa4305117af9f9f84534fcd76e2ba5708d07f68dcb1cf6240dc81
|