Framework Experimental para Integracion de Datos (FEID) - Multi-Agent Systems
Project description
FEID - Framework para Multi-Agent Systems (MAS)
Framework ligero y educativo para construir sistemas multi‑agente en Python con setup mínimo y foco en prototipado rápido.
¿Para quién es?
- 🎓 Educación: enseñar MAS sin complejidad de JADE/infraestructura pesada.
- 🧪 Investigación: validar algoritmos rápidamente y reproducir resultados.
- 🤖 Edge/IoT: agentes en dispositivos con recursos limitados.
- 💡 Prototipado: validar arquitecturas MAS en días, no semanas.
Lo que hace bien
✅ Base MAS simple: subclases mínimas y boilerplate bajo. ✅ Multi‑protocolo: FIPA ACL, KQML, JSON‑RPC, texto simple. ✅ Percepción proactiva: hook opcional para comportamiento autónomo. ✅ Zero dependencies: solo stdlib de Python. ✅ Extensible: handlers externos, logs rotativos, métricas básicas. ✅ Resiliencia: reintentos configurables, circuit breaker y Dead Letter Queue. ✅ Testeado: 131 tests pasando (incluye stress tests con 1k-5k tareas).
Lo que NO intenta ser
❌ No es Celery/Airflow (no es orquestación ni broker). ❌ No compite con JADE como plataforma completa. ❌ Estado actual: v0.1.0 experimental (ideal para POC/educación/edge).
Instalacion (editable para desarrollo)
pip install -e .
Uso rapido
from feid.agent import AgenteMaestroNASA, ExponentialBackoffStrategy
class MiAgente(AgenteMaestroNASA):
def _trabajo_tecnico(self, tarea):
return f"Procesado: {tarea}"
# Crear agente con opciones de resiliencia
agente = MiAgente(
"productor",
retry_strategy=ExponentialBackoffStrategy(),
circuit_breaker_threshold=5,
max_workers=4
)
# Enviar tarea con correlation ID (distributed tracing)
m_id = agente.enviar_orden(
"procesar-datos",
correlation_id="req-2024-001"
)
# Monitorear salud (incluye estado de circuit breaker y estrategia)
salud = agente.monitorear_salud()
Documentación
- Enterprise Features Guide - Correlation IDs, Circuit Breaker, Retry Strategies
- Handler Development - Integración con sistemas externos
- Contributing - Guía para contribuidores
Ejemplos
Ver examples/enterprise_demo.py para demostración completa de features.
python examples/enterprise_demo.py
Estado
Proyecto experimental (v0.1.0). Ver BACKLOG para roadmap y próximos pasos.
Autor
Leon Alberne Torres Restrepo
- GitHub: albernetr
- LinkedIn: leon-alberne-torres-restrepo
- Email: albernetorres@gmail.com
Disclaimer
Proyecto de desarrollo personal realizado en tiempo personal con equipos personales. No afiliado ni respaldado por empleadores anteriores o actuales. Proveido "como esta", sin garantias.
Licencia
MIT License - Ver LICENSE
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 feid_mas-0.1.0.tar.gz.
File metadata
- Download URL: feid_mas-0.1.0.tar.gz
- Upload date:
- Size: 38.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
046b298f3ed7d755cb6abb1c24a4f8c89fbdc10f0373188d33b51fb4edb9a132
|
|
| MD5 |
caf1cfaa973c2f6c41fa58876e00f36d
|
|
| BLAKE2b-256 |
7ef8153cbabf3419c6b67789d1628ebac50fea216ee89f1b5ad53ecaed9dd5f9
|
File details
Details for the file feid_mas-0.1.0-py3-none-any.whl.
File metadata
- Download URL: feid_mas-0.1.0-py3-none-any.whl
- Upload date:
- Size: 22.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3519eb416769c4287e03cc1f2ca5c26e0698e2609fcce18396aa945d29055825
|
|
| MD5 |
a3704c3ef312a9921fa92e878045a6de
|
|
| BLAKE2b-256 |
24f616572104a1e5ea315622c0ac66391c3de27eba2c904c6869710cd8bb9649
|