Caso de éxito de Buy Houses Japan: búsqueda de casas con IA como sprint de producto
Buy Houses Japan es un producto público de Urbano DX: una búsqueda inmobiliaria en la que describes lo que buscas en lenguaje corriente y obtienes filtros estructurados, resultados sobre mapa y fichas de anuncio normalizadas a partir de portales japoneses.
Funciona como prueba real porque no es una diapositiva ni una maqueta: está en producción, en inglés y japonés, con cobertura de Kanto, Kansai y Kyushu, cambio de moneda entre USD y JPY y de unidades entre m2 y pies cuadrados.
Puedes verlo funcionando aquí: buyhouses.jp.
El problema de producto
La búsqueda de inmuebles tradicional empieza con filtros rígidos. Eso funciona si ya sabes la prefectura exacta, el código de distribución y la horquilla de precio. Funciona mal para un comprador extranjero que mira el mercado japonés, donde la búsqueda suele nacer como una frase:
"Una casa familiar tranquila cerca de una estación"
"Algo con jardín y buen acceso a la ciudad"
"Un piso moderno con buena luz y un trayecto cómodo al trabajo"
Hay un segundo problema propio de Japón. Los anuncios de origen están en japonés y usan convenciones locales: la distribución se escribe como 3LDK, el acceso al transporte se da en minutos andando hasta una estación concreta, y los términos de régimen de propiedad y calificación urbanística no tienen equivalente limpio en otros idiomas. Un producto útil tiene que normalizar todo eso sin traducirlo mal por el camino.
La pregunta técnica de fondo es la de siempre: ¿cómo se hace visible la interpretación del modelo, para que el usuario confíe en el resultado sin tener que confiar en el modelo? La respuesta aquí es enseñar la intención estructurada como campos de filtro editables, junto al formulario manual completo, y no esconder nada detrás de la caja de texto.
Qué se construyó
La forma del sprint es la misma que Urbano DX vende a equipos B2B: coger un flujo de usuario, construir la interfaz, conectar la lógica y dejar el resultado lo bastante a la vista como para poder comprobarlo.
Un ejemplo real, ejecutado hoy sobre el producto en producción. La consulta fue:
> "quiet family home near a train station in Osaka with a garden under 30 million yen"
De ahí salieron cuatro filtros activos y editables: Prefectura Osaka, Tipo de propiedad casa, un precio máximo y un mínimo de 3 dormitorios. Aparecen en el panel como campos normales, no como un resumen de lo que entendió el modelo: se pueden cambiar uno a uno, o ignorarlos y usar los controles manuales de zona, características, precio y superficie.
Los cuatro filtros deducidos de la frase aparecen en el panel como campos editables, con la consulta original todavía visible en la barra de búsqueda.
Esa consulta devolvió 429 anuncios coincidentes, paginados en 18 páginas, en forma de lista de fichas junto a un mapa interactivo con los precios como chinchetas. El total de resultados y el número de filtros activos quedan siempre a la vista, así que al tocar un filtro se ve el efecto al momento.
Fichas de resultados junto al mapa interactivo con los precios como chinchetas, con los 429 anuncios encontrados y el número de filtros activos.
Al abrir un resultado, la ficha normaliza el anuncio japonés original en campos comparables: tipo de propiedad, distribución, régimen de propiedad, año de construcción, estación más cercana y acceso (que se mantienen en japonés), calificación urbanística y superficies de parcela y edificación en m2. Encima de eso hay señales derivadas: una valoración del estado de conservación, si el inmueble está reformado, una puntuación de relevancia (por ejemplo, 92% Relevance) y una comparación con precios similares (por ejemplo, Above market +30% o Great value -44%), además de galería con fotos y plano y enlace al anuncio de origen.
La ficha de anuncio normaliza el original japonés en distribución, régimen de propiedad, año de construcción, acceso a la estación y superficies en m2, junto a la galería de planos, una puntuación de relevancia y una lectura de mercado.
La arquitectura por debajo es deliberadamente aburrida:
Frontend. React 18 con Vite, compilado con Bun. El mapa es MapLibre GL a través de react-map-gl, y la lista de resultados y el mapa comparten el mismo estado de consulta.
Backend. FastAPI en Python con MongoDB (motor y beanie). Las llamadas al modelo pasan por el gateway de LLM de la casa, con la interpretación de la consulta convertida en filtros estructurados antes de tocar los datos.
Búsqueda. Consultas deterministas sobre los anuncios ya normalizados, más búsqueda semántica con zvec. Los filtros que ve el usuario son los mismos que ejecuta la búsqueda: si edita uno, cambia el resultado.
Ingesta. Pipelines de Prefect que rastrean portales japoneses de referencia (AtHome, Nifty) con Playwright y Scrapling, y dejan cada anuncio con los campos ya normalizados.
Plataforma. Autenticación con Firebase y pagos con Stripe.
El valor no está solo en el paso de IA. Está en el camino completo desde una frase difusa hasta una lista corta de inmuebles comparables. La IA es solo una parte; el resto es ingeniería de producto corriente hecha con criterio. De hecho, normalizar los datos japoneses de los anuncios dio bastante más trabajo que interpretar el lenguaje natural.
Por qué importa para compradores B2B
Los productos de IA que de verdad se usan no son chatbots independientes. Son flujos acotados donde la IA traduce una petición imprecisa en una acción estructurada que el usuario todavía puede corregir.
El patrón vale igual para triaje de soporte, entrada de documentos, búsqueda de conocimiento, herramientas internas de administración, flujos de CRM y reporting. La interfaz importa porque el usuario necesita confiar en el resultado, corregirlo y actuar sobre él. Lo que hace funcionar a Buy Houses Japan se transfiere tal cual:
Una entrada de texto libre que no finge ser una conversación.
Una representación intermedia estructurada que el usuario ve.
Controles editables ligados a esa representación.
Un paso de ejecución determinista que el modelo no toca.
Una vista de resultados pensada para comparar, no para generar.
Esa misma arquitectura convierte una demo de chatbot en una cola de triaje que se usa, y una respuesta fluida en una recomendación con fuentes. La diferencia entre "funcionalidad de IA" y "producto de IA" es si esa representación intermedia existe y si el usuario puede editarla.
Qué demuestra esta historia
Buy Houses Japan es un ejemplo concreto de desarrollo de producto llevado por perfiles sénior:
Empezar por un recorrido de usuario con fricción real
Construir la interfaz alrededor de la decisión
Usar IA donde mejora el flujo de trabajo
Mantener los resultados visibles, editables y comprobables
Tratar la parte menos vistosa, la ingesta y la normalización, como trabajo de primera
Es la disciplina que hay detrás de un buen PoC de pago o de un sprint de MVP: la primera versión prueba el camino de producto, no finge ser la plataforma completa. Para quien esté evaluando encargar un sprint a Urbano DX, el producto en producción es la referencia más honesta que podemos dar: la arquitectura y las decisiones de diseño están a la vista, y cualquiera puede repetir la búsqueda que devolvió esos 429 resultados.