(este reto fue propuesto por la genia de @roxsross 💗 )
Servicio Python para AWS Lambda que implementa un árbol de decisión para evaluar solicitudes de préstamos bancarios de acuerdo a una logica determinada. TOTALMENTE PERFECTIBLE!! 🤓
Historia Crediticia?
/ \
SI / \ NO
/ \
/ \
Ingreso Codeudor > 0 Independiente?
Y (Ingreso Deudor/9) / \
> Cantidad Préstamo? SI / \ NO
/ \ / \
SI / \ NO / \
/ \ / \
APROBADO Dependientes > 2 Tipo Propiedad != Semiurbano
Y Independiente? Y Dependientes < 2?
/ \ / \
SI / \ NO SI / \ NO
/ \ / \
/ \ / \
Ingreso Codeudor/12 Cantidad Educación RECHAZADO
> Cantidad Préstamo? < 200? Graduado?
/ \ / \ / \
SI / \ NO SI / \ NO SI / \ NO
/ \ / \ / \
APROBADO RECHAZADO APROBADO RECHAZADO RECHAZADO
|
(Ingreso Deudor/11 > Cantidad
Y Ingreso Codeudor/11 > Cantidad)
/ \
SI / \ NO
/ \
APROBADO RECHAZADO
ArbolDeDecision/
├── src/
│ └── lambda_function.py # Código Lambda
├── terraform/
│ ├── main.tf # Configuración principal
│ ├── variables.tf # Variables
│ ├── outputs.tf # Outputs
│ ├── terraform.tfvars.example
| └── deploy.sh # Script de despliegue
├── tests/
│ └── test_lambda.py # Pruebas
- AWS CLI configurado
- Terraform instalado
- Credenciales AWS válidas
# Opción 1: Script automático
./deploy.sh
# Opción 2: Manual
cd terraform
terraform init
terraform plan
terraform applyCopiar terraform.tfvars.example a terraform.tfvars y ajustar valores:
aws_region = "us-east-1"
function_name = "evaluacion-prestamos"
environment = "dev"POST https://{api-id}.execute-api.{region}.amazonaws.com/dev/evaluar
{
"id_prestamo": "RETOS2_001",
"casado": "No",
"dependientes": 1,
"educacion": "Graduado",
"independiente": "Si",
"ingreso_deudor": 4692,
"ingreso_codeudor": 0,
"cantidad_prestamo": 106,
"plazo_prestamo": 360,
"historia_credito": 1,
"tipo_propiedad": "Rural"
}{
"statusCode": 200,
"body": "{\"id_prestamo\": \"RETOS2_001\", \"aprobado\": true}"
}cd tests
python test_lambda.py