DEV Community

LeoJulieta
LeoJulieta

Posted on

CostLogic: Presupuestos de obra en 1 clic con IA y CAD

CostLogic revoluciona la estimación de obras: IA, visión y CAD en un solo clic


Introducción

¿Cansado de pasar horas revisando planos y corrigiendo presupuestos que nunca cuadran? CostLogic llega a la escena con una propuesta clara: automatizar la generación de presupuestos a partir de planos CAD usando IA, y hacerlo en cuestión de minutos. Desde su aparición en Product Hunt, las búsquedas de “presupuesto obra IA” y “estimaciones automáticas” han subido un 340 % en Google Trends, lo que confirma que el sector está demandando una solución como esta.

En este artículo descubrirás cómo funciona CostLogic, verás ejemplos de código listos para copiar y aprenderás a integrarlo en tu flujo de trabajo sin complicaciones.


¿Por qué ahora es el momento ideal?

Factor Datos clave Impacto en tu proyecto
Escasez de mano‑de‑obra ‑12 % de operarios (INE, 2020‑2023) Menos personal → mayor presión sobre la planificación
Plazos más ajustados Entregas 30 % más rápidas (Cámara de la Construcción) Cada día cuenta, los retrasos cuestan
Errores de estimación 28 % de presupuestos con desviación >15 % (UPM) Sobre‑costes y reclamaciones
Digitalización acelerada Uso de BIM y nube +85 % (últimos 3 años) Entorno preparado para IA y automatización

Con estos retos, una herramienta que extraiga cantidades, clasifique materiales y genere documentos de facturación al instante pasa de ser un “nice‑to‑have” a una necesidad competitiva.


Arquitectura de CostLogic (a grandes rasgos)

Módulo Tecnologías Qué hace
Motor LLM GPT‑4o (fine‑tuned con 10 M de documentos de construcción) Interpreta preguntas en lenguaje natural y sugiere ítems o alternativas de materiales.
Visión por computadora CLIP‑Vision + OCR especializado (Tesseract 5 entrenado en símbolos CAD) Reconoce puertas, ventanas, columnas, extrae dimensiones y las asigna a unidades de obra.
Conector CAD API propia que abre DWG, DXF, IFC y Revit Importa modelos 2D/3D, sincroniza cambios en tiempo real y exporta datos estructurados.
Base de datos de costos PostgreSQL + scrapers semanales de proveedores (Leroy Merlin, Brico‑Depot, etc.) Ofrece precios actualizados y permite aplicar márgenes o descuentos personalizados.
Capa de orquestación FastAPI + Docker Expone endpoints REST que puedes consumir desde cualquier lenguaje.

Paso a paso: integrar CostLogic en tu flujo de trabajo

1. Preparar el entorno

# 1. Clona el repositorio oficial
git clone https://github.com/costlogic/costlogic-sdk.git
cd costlogic-sdk

# 2. Crea el entorno virtual
python -m venv .venv
source .venv/bin/activate

# 3. Instala dependencias
pip install -r requirements.txt
Enter fullscreen mode Exit fullscreen mode

2. Subir tu plano CAD

import requests

API_URL = "https://api.costlogic.io/v1/plans"
API_KEY = "TU_API_KEY"

files = {"file": open("plano_proyecto.dwg", "rb")}
data = {"project_name": "Residencial Sol"}

resp = requests.post(API_URL, headers={"Authorization": f"Bearer {API_KEY}"}, files=files, data=data)
plan_id = resp.json()["plan_id"]
print(f"Plano subido con ID: {plan_id}")
Enter fullscreen mode Exit fullscreen mode

3. Generar el presupuesto automáticamente

import time

# 3.1. Lanzar la extracción
extract_url = f"https://api.costlogic.io/v1/plans/{plan_id}/extract"
resp = requests.post(extract_url, headers={"Authorization": f"Bearer {API_KEY}"})
task_id = resp.json()["task_id"]
print(f"Tarea de extracción iniciada: {task_id}")

# 3.2. Esperar a que termine
status_url = f"https://api.costlogic.io/v1/tasks/{task_id}"
while True:
    r = requests.get(status_url, headers={"Authorization": f"Bearer {API_KEY}"})
    status = r.json()["status"]
    if status == "completed":
        break
    elif status == "failed":
        raise RuntimeError("Extracción fallida")
    time.sleep(2)

# 3.3. Descargar el presupuesto en CSV
budget_url = f"https://api.costlogic.io/v1/tasks/{task_id}/budget"
budget = requests.get(budget_url, headers={"Authorization": f"Bearer {API_KEY}"})
open("presupuesto.csv", "wb").write(budget.content)
print("Presupuesto guardado en presupuesto.csv")
Enter fullscreen mode Exit fullscreen mode

4. Personalizar precios y márgenes

import pandas as pd

df = pd.read_csv("presupuesto.csv")
# Aplicar un margen del 8 % a los materiales de obra gris
mask = df["category"].str.contains("obra gris")
df.loc[mask, "unit_price"] *= 1.08

# Añadir un descuento del 5 % a los suministros eléctricos
mask = df["category"].str.contains("eléctrico")
df.loc[mask, "unit_price"] *= 0.95

df.to_csv("presupuesto_personalizado.csv", index=False)
print("Presupuesto personalizado listo")
Enter fullscreen mode Exit fullscreen mode

5. Exportar a formato de facturación (PDF)

import weasyprint

html_template = """
<!doctype html>
<html>
<head><meta charset="utf-8"><title>Presupuesto</title></head>
<body>
<h1>Presupuesto – {project_name}</h1>
<table border="1" cellspacing="0" cellpadding="4">
<tr><th>Ítem</th><th>Cantidad</th><th>Unidad</th><th>Precio unitario</th><th>Total</th></tr>
{rows}
</table>
</body>
</html>
"""

rows = ""
for _, row in df.iterrows():
    rows += f"<tr><td>{row['item']}</td><td>{row['quantity']}</td><td>{row['unit']}</td>"
    rows += f"<td>{row['unit_price']:.2f} €</td><td>{row['total']:.2f} €</td></tr>"

html = html_template.format(project_name="Residencial Sol", rows=rows)
pdf = weasyprint.HTML(string=html).write_pdf()
open("presupuesto.pdf", "wb").write(pdf)
print("PDF generado")
Enter fullscreen mode Exit fullscreen mode

Comparativa rápida con otras soluciones del mercado

Herramienta IA generativa Visión de planos Integración CAD nativa Base de datos de precios Precio (USD/mes)
CostLogic Sí (GPT‑4o) Sí (CLIP + OCR) Sí (DWG, DXF, IFC, Revit) Sí (scrapers + tabla propia) 199
BuildSmart No Sí (solo OCR) Sólo DXF Manual (importación CSV) 149
EstimAI Sí (GPT‑3.5) No No API de terceros 179
PlanRadar No No Sólo visualizador No 99

Ventaja competitiva de CostLogic: combina LLM y visión en una única API, elimina la necesidad de cargar catálogos externos y mantiene los precios actualizados automáticamente.


Buenas prácticas para sacarle el máximo partido

  1. Mantén tus planos limpios: elimina capas innecesarias y usa símbolos estándar; la precisión del OCR depende de la claridad del dibujo.
  2. Revisa los ítems críticos: aunque la IA es muy precisa, verifica manualmente los elementos estructurales (cimentaciones, muros de carga).
  3. Actualiza la base de precios semanalmente: si trabajas con proveedores locales, añade sus catálogos a la tabla PostgreSQL mediante el script update_prices.py.
  4. Versiona los presupuestos: guarda cada extracción con un timestamp; así podrás comparar variaciones de costos a lo largo del proyecto.

Conclusión

CostLogic no es solo otra calculadora de presupuestos; es una plataforma de IA que entiende planos, sugiere materiales y entrega documentos listos para facturar. Con la arquitectura modular basada en LLM, visión por computadora y una API CAD robusta, permite a arquitectos, constructores y freelancers reducir el tiempo de estimación de días a minutos, minimizar errores y responder rápidamente a cambios de proyecto.

Prueba la demo gratuita, sigue los pasos de integración que hemos mostrado y comienza a generar presupuestos más precisos


Herramienta mencionada: Groq Cloud

Top comments (0)