- Rogério Rodrigues
- Luciano Borges
- Gustavo Menossi
- Marcio Hernandez
Este projeto foi desenvolvido para a disciplina Construção de APIs para Inteligência Artificial do programa de Pós-Graduação em Sistemas e Agentes Inteligentes da Universidade Federal de Goiás. O objetivo é criar uma API robusta utilizando o framework FastAPI.
Gerar questões para elaboração e correções de provas online.
- Estrutura modular com models, routes e services.
- Validação de dados utilizando Pydantic.
- Documentação automática da API com Swagger e Redoc.
- Configuração de ambiente utilizando dotenv.
fastapi/
│── app/
│ ├── models/ # Modelos de dados com Pydantic
│ ├── routes/ # Endpoints da API
│ ├── services/ # Lógica de negócio
│ ├── tests/ # Testes unitários e de integração
│── main.py # Programa principal
│── .env-sample # Exemplo de variáveis de ambiente
│── requirements.txt # Dependências do projeto
│── README.md # Documentação
│── .gitignore # Arquivos ignorados pelo Git
- FastAPI - Framework para criação de APIs de alto desempenho.
- Pydantic - Validação e serialização de dados.
- Uvicorn - Servidor ASGI de alto desempenho.
- Dotenv - Gerenciamento de variáveis de ambiente.
Sugestão de versão do Python: 3.10 ou superior
- Crie um ambiente virtual
python -m venv env
- Ative o ambiente virtual
- No Windows:
env\Scripts\activate
- No Linux/macOS:
source env/bin/activate
- Instale a última versão do pip
python.exe -m pip install --upgrade pip
- Instale as dependências
pip install -r requirements.txt
- Renomeie o arquivo
.env.sample
para.env
e preencha as variáveis de ambiente
mv .env-sample .env
- Execute o pacote padrão do FastAPI
pip install fastapi[standard]
- Executar a API em ambiente de desenvolvimento
fastapi dev main.py
- Swagger UI: http://127.0.0.1:8000/docs
- Redoc: http://127.0.0.1:8000/redoc
- Acesse o botão
Authorize
. - Informe as credenciais:
- Username:
admin
- Password:
admin
- Username:
- Gere o token na API AUTH.
- Utilize o
access_token
gerado para autenticação na API viaGET /auth/users/me
.
📌 Desenvolvido por Luciano Borges, Gustavo Menossi e Marcio Hernandez para a Pós-Graduação em Sistemas e Agentes Inteligentes - UFG.