Skip to content

Repository files navigation

AI Agent - Boot.dev Project

Este projeto foi desenvolvido como parte do curso de inteligência artificial da Boot.dev, com o objetivo de construir um agente autônomo capaz de utilizar funções específicas para interagir com um sistema de arquivos Python.

🧑‍🧐 O que este agente faz?

O agente utiliza a API do Gemini (Google GenAI) para interpretar comandos em linguagem natural e decidir, com base neles, quais funções executar. Ele possui um loop de feedback, ou seja, é capaz de:

  1. Planejar chamadas de função com base na intenção do usuário
  2. Executar funções reais no sistema (como ler arquivos, listar diretórios ou rodar scripts Python)
  3. Receber os resultados das funções como "mensagens de ferramenta" e continuar raciocinando com base neles
  4. Iterar até chegar a uma resposta final para a tarefa

💡 Funcionalidades disponíveis

O agente é capaz de:

  • Listar arquivos e diretórios
  • Ler o conteúdo de arquivos
  • Escrever/sobrescrever arquivos
  • Executar scripts Python com argumentos opcionais

⚙️ Estrutura do Projeto

.
├── main.py                     # Script principal (ponto de entrada)
├── .env                        # Contém a variável GEMINI_API_KEY (não versionado)
├── .gitignore
├── calculator/                # Diretório monitorado pelo agente
│   ├── main.py
│   ├── tests.py
│   └── pkg/
│       ├── calculator.py
│       └── render.py
├── functions/                 # Funções auxiliares e schemas
│   ├── get_files_info.py
│   ├── get_file_content.py
│   ├── write_file.py
│   └── run_python.py

🚀 Como rodar

  1. Clone o repositório:
git clone https://github.com/FranciscoGoyaAMC/ai_agent.git
cd ai_agent
  1. Crie um ambiente virtual e ative:
python -m venv .venv
source .venv/bin/activate  # Linux/macOS
.venv\Scripts\activate     # Windows
  1. Instale as dependências:
pip install -r requirements.txt
  1. Configure a chave da API Gemini: Crie um arquivo .env com:
GEMINI_API_KEY=your-key-here
  1. Execute o agente com um prompt:
python main.py "3 + 7 * 2"

🔐 Segurança

O agente não tem acesso irrestrito ao sistema. Ele opera apenas dentro do diretório calculator/ e não pode modificar arquivos fora dele. Essa restrição é injetada manualmente via argumento working_directory nas chamadas de função.

🎓 Créditos

Este projeto foi desenvolvido por Francisco Goya como parte do Bootcamp de IA no Boot.dev.


Sinta-se à vontade para explorar o código, abrir issues ou sugerir melhorias!

"AI isn't magic. It's just math, with a lot of compute behind it."

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages