¿Qué hace Etta?
Una arquitectura cognitiva agnóstica para agentes basados en LLM (SKILL).
Descripción General
Etta proporciona una base modular para construir agentes inteligentes que pueden razonar, planificar y ejecutar tareas de manera autónoma. Al ser agnóstica, no está atada a un modelo de lenguaje específico, permitiendo usar LLMs como GPT-4, Claude, LLaMA, u otros según la necesidad.
Componentes Principales
- Percepción: Procesa entradas del entorno (texto, imágenes, datos estructurados).
- Razonamiento: Utiliza el LLM para inferir, planificar y tomar decisiones.
- Memoria: Almacena información contextual a corto y largo plazo.
- Acción: Ejecuta comandos, llama APIs o interactúa con el mundo real.
Cómo Funciona
- El agente recibe una tarea a través del módulo de percepción.
- El módulo de razonamiento descompone la tarea en pasos manejables.
- La memoria se consulta para recuperar conocimiento relevante.
- Se ejecutan acciones secuenciales (o paralelas) a través del módulo de acción.
- El ciclo se repite hasta completar la tarea o recibir una nueva instrucción.
Plataformas Soportadas
- Compatible con cualquier LLM que exponga una API de chat/completions.
- Se integra con frameworks como LangChain, LlamaIndex o directamente a través de HTTP.
- Funciona en entornos Node.js, Python y otros lenguajes mediante wrappers.
Ejemplo de Uso
from etta import Agent
agent = Agent(
model="gpt-4",
memory_type="buffered",
tools=["web_search", "calculator"]
)
response = agent.run("¿Cuál es la población de Tokio?")
print(response)
Variables de Entorno
ETTA_MODEL: Define el modelo LLM a usar (por defecto:gpt-4).ETTA_MEMORY_SIZE: Tamaño máximo del buffer de memoria (por defecto:1024).ETTA_LOG_LEVEL: Nivel de logging (debug,info,warn,error).
Enlaces Útiles
Licencia
MIT