Dev Assistant é um projeto Python que demonstra um agente inteligente capaz de realizar tarefas, aprender com seu ambiente e avaliar seu progresso em direção a um determinado objetivo. O agente é composto por vários módulos, cada um responsável por um aspecto específico do comportamento do agente.
O agente opera com base nos objetivos de entrada fornecidos pelo usuário e emprega uma série de ferramentas para alcançar o resultado desejado.
A ferramenta é particularmente útil para tarefas que resultam na criação de vários arquivos após a conclusão e foi projetada para agilizar o fluxo de trabalho dos desenvolvedores.
Componentes principais
- ReasoningModule: Gera e prioriza tarefas com base no objetivo e no estado atual do agente.
- PerceptionModule: Processa tarefas e resultados para otimizá-los para compreensão e execução do agente.
- ExecutionModule: Executa tarefas usando diversas ferramentas e retorna os resultados.
- LearningModule: Aprende com as observações e ajusta o comportamento do agente para melhorar a eficiência.
- MemoryModule: Armazena e recupera informações relevantes com base nas tarefas e objetivos do agente.
- EvaluationModule: Avalia o progresso do agente em direção ao seu objetivo e determina se o objetivo foi alcançado.
Como usar
Para configurar o projeto, siga estas etapas:
- Clone o repositório em sua máquina local.
- Instale as dependências necessárias executando
make install
. - Configure as variáveis de ambiente necessárias em um arquivo
.envrc
. Você precisará fornecer sua chave de API OpenAI. - Execute o projeto usando o comando
make docker
ou make
.
Executando o Projeto
Você pode executar o projeto em diferentes modos:
- Para executar o projeto com um objetivo específico, utilize o comando
python -u -m main --obj "Your objective here"
. - Para executar o projeto no modo detalhado, adicione o sinalizador
--verbose
ao comando. - Para executar o projeto com um visualizador, adicione o sinalizador
--visualizer
ao comando.
AVISO:
O agente está equipado com ferramentas que permitem realizar modificações na máquina onde está operando. Recomenda-se executar o agente dentro do contêiner docker. Correr
fazer janela de encaixe
comando para iniciar um contêiner.
Ferramentas
O assistente utiliza diversas ferramentas para realizar tarefas. Algumas dessas ferramentas incluem:
- REPL Python
- Comandos bash
- Manipulação de arquivos (ler, escrever, excluir, etc.)
- Integração com GitHub
- Raspagem da Web
Estrutura
O projeto consiste em vários arquivos Python, cada um contendo um módulo ou classe específica:
- AgentOrchestrator.py: Contém a classe principal AgentOrchestrator, que coordena os diferentes módulos para atingir o objetivo do agente.
- main.py: o script principal que executa o agente e lida com argumentos de linha de comando.
Melhorias Futuras
- Melhore a capacidade do agente de lidar com objetivos e tarefas mais complexos.
- Adicione mais ferramentas e recursos ao ExecutionModule.
- Melhore as capacidades de aprendizagem e adaptação do agente.
- Implemente um visualizador para exibir o progresso do agente e o processo de tomada de decisão.
Contribuindo
Se você quiser contribuir com o projeto, sinta-se à vontade para enviar uma solicitação pull ou abrir um problema no repositório.
Ligações
- Auto-GPT
- bebêAGI
- Índice de lhama
- cadeia de idiomas
Licença
Este projeto está licenciado sob a licença MIT.