Skip to content

fiap-pos-5mlet-group-114/tech_challenge_1

Repository files navigation

VinesAPI

Este projeto é uma API desenvolvida em Python utilizando o framework FastAPI. A API tem como objetivo processar, armazenar e disponibilizar dados relacionados à produção, comercialização, importação e exportação de produtos vinícolas no Brasil. Os dados são extraídos do site da EMBRAPA(Empresa Brasileira de Pesquisa Agropecuária) e armazenados em um banco de dados SQLite para consultas futuras.

Bibliotecas Utilizadas

  • FastAPI: Framework para construção de APIs rápidas e eficientes.
  • SQLAlchemy: ORM para manipulação do banco de dados.
  • SQLite: Banco de dados leve e embutido.
  • HTTPX: Cliente HTTP assíncrono para realizar requisições.
  • Selectolax: Biblioteca para parsing de HTML.
  • Pydantic: Validação de dados e criação de modelos.

Como Executar

  1. Instale as dependências:

    poetry install --no-root
  2. Inicie o servidor:

    poetry run uvicorn server.config:app
  3. Acesse a documentação interativa:

Caso de Uso com Modelo de Machine Learning

Cenário

A API pode ser utilizada para alimentar um modelo de Machine Learning que prevê a demanda futura de vinhos no mercado brasileiro. Com base nos dados de produção, comercialização, importação e exportação, o modelo pode identificar padrões e tendências para ajudar vinícolas e distribuidores a planejar suas operações.

Fluxo

  1. Ingestão de Dados:

    • A API coleta dados de diferentes fontes(A principio apenas da Embrapa) e os armazena no banco de dados.
  2. Pré-processamento:

    • Os dados são extraídos do banco e transformados para alimentar o modelo.
  3. Treinamento do Modelo:

    • Um modelo de regressão é treinado para prever a demanda futura com base nos dados históricos.
  4. Predição:

    • O modelo é utilizado para prever a demanda futura, e os resultados são disponibilizados via API.

Exemplo de Código

from sklearn.linear_model import LinearRegression
import pandas as pd

# Dados simulados extraídos da API
data = {
    "ano": [2020, 2021, 2022],
    "producao": [1000, 1200, 1100],
    "importacao": [200, 250, 230],
    "exportacao": [150, 180, 170],
}

df = pd.DataFrame(data)

# Treinamento do modelo
X = df[["ano", "importacao", "exportacao"]]
y = df["producao"]
model = LinearRegression()
model.fit(X, y)

# Predição para 2023
future_data = pd.DataFrame({"ano": [2023], "importacao": [240], "exportacao": [160]})
predicted_production = model.predict(future_data)
print(f"Produção prevista para 2023: {predicted_production[0]:.2f} litros")

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors