Dev Assistant es un proyecto de Python que demuestra un agente inteligente capaz de realizar tareas, aprender de su entorno y evaluar su progreso hacia un objetivo determinado. El agente se compone de varios módulos, cada uno de los cuales es responsable de un aspecto específico del comportamiento del agente.
El agente opera sobre la base de objetivos de entrada proporcionados por el usuario y emplea una variedad de herramientas para lograr el resultado deseado.
La herramienta es particularmente útil para tareas que resultan en la creación de múltiples archivos al finalizar y está diseñada para optimizar el flujo de trabajo de los desarrolladores.
Componentes clave
- ReasoningModule: Genera y prioriza tareas en función del objetivo y el estado actual del agente.
- PerceptionModule: Procesa tareas y resultados para optimizarlos para la comprensión y ejecución del agente.
- ExecutionModule: ejecuta tareas utilizando varias herramientas y devuelve los resultados.
- Módulo de aprendizaje: aprende de las observaciones y ajusta el comportamiento del agente para mejorar la eficiencia.
- MemoryModule: Almacena y recupera información relevante en función de las tareas y objetivos del agente.
- Módulo de Evaluación: Evalúa el progreso del agente hacia su objetivo y determina si se ha logrado el objetivo.
Cómo utilizar
Para configurar el proyecto, siga estos pasos:
- Clona el repositorio en tu máquina local.
- Instale las dependencias requeridas ejecutando
make install
. - Configure las variables de entorno necesarias en un archivo
.envrc
. Deberá proporcionar su clave API de OpenAI. - Ejecute el proyecto usando el comando
make docker
o make
.
Ejecutando el proyecto
Puede ejecutar el proyecto en diferentes modos:
- Para ejecutar el proyecto con un objetivo específico, use el comando
python -u -m main --obj "Your objective here"
. - Para ejecutar el proyecto en modo detallado, agregue el indicador
--verbose
al comando. - Para ejecutar el proyecto con un visualizador, agregue el indicador
--visualizer
al comando.
ADVERTENCIA:
El agente está equipado con herramientas que permiten realizar modificaciones a la máquina donde se encuentra actualmente operando. Se recomienda ejecutar el agente dentro del contenedor acoplable. Correr
hacer ventana acoplable
comando para iniciar un contenedor.
Herramientas
El asistente utiliza varias herramientas para completar las tareas. Algunas de estas herramientas incluyen:
- Reemplazo de Python
- comandos de bash
- Manipulación de archivos (leer, escribir, eliminar, etc.)
- Integración de GitHub
- raspado web
Estructura
El proyecto consta de varios archivos Python, cada uno de los cuales contiene un módulo o clase específica:
- AgentOrchestrator.py: Contiene la clase principal AgentOrchestrator, que coordina los diferentes módulos para lograr el objetivo del agente.
- main.py: el script principal que ejecuta el agente y maneja los argumentos de la línea de comandos.
Mejoras futuras
- Mejorar la capacidad del agente para manejar objetivos y tareas más complejos.
- Agregue más herramientas y capacidades al ExecutionModule.
- Potenciar las capacidades de aprendizaje y adaptación del agente.
- Implementar un visualizador para mostrar el progreso del agente y el proceso de toma de decisiones.
Contribuyendo
Si desea contribuir al proyecto, no dude en enviar una solicitud de extracción o abrir una incidencia en el repositorio.
Campo de golf
- GPT automático
- bebéAGI
- Índice de llamas
- cadena larga
Licencia
Este proyecto está bajo la licencia MIT.