← Todos los proyectos

2026

¿Dónde está esta foto?

Un juego de geolocalización contra una IA con visión

Jugar

Con qué está hecho

Tecnologías utilizadas

IA

  • Microsoft FoundryModelos con visión de Meta, Mistral, xAI, DeepSeek y Moonshot
  • Azure OpenAILos modelos GPT con visión, con salida estructurada

Mapas y fotos

  • Google Maps JavaScript APIEl mapa y la panorámica en tu navegador
  • Street View Static APILas cuatro capturas que ve el modelo y los metadatos
  • Wikimedia CommonsLas fotos del modo de respaldo
  • Natural EarthContornos de los países para elegir los puntos

Nube y despliegue

  • Azure Container AppsLa API, que escala a cero sin visitas
  • Azure Static Web AppsSirve la web, plan Standard con la API enlazada
  • Identidad administrada de Microsoft EntraLa API entra en Foundry, Storage y SQL sin claves
  • Application InsightsTrazas, errores y tiempos de la API

Backend

  • Python
  • FastAPILa misma API que Mea culpa, en /api/geo
  • PydanticValida la salida estructurada de los modelos

Datos

  • Azure Blob StoragePartidas, reserva de panorámicas y cuotas
  • Azure SQL Database (serverless, oferta gratuita)Registro de uso y una copia de cada partida

Web

  • Nuxt 4La web, generada como páginas estáticas
  • Google Identity ServicesLogin con Google, con el ID token verificado en el servidor
Para los técnicosEl problema, cómo lo hice, el resultado y las herramientas

El problema

Cinco sitios al azar de Street View y un mapa de Google: marcas dónde crees que estás y un modelo de Microsoft Foundry, el que elijas, ve el mismo sitio y hace su apuesta. Gana quien quede más cerca.

Cómo lo hice

  1. Con fotos de Wikimedia Commons la IA acertaba casi siempre: muchas las había visto al entrenarse. Ahora el servidor elige puntos al azar en tierra firme de países con buena cobertura y guarda solo el identificador de la panorámica oficial más cercana; las fotos quedan de respaldo.

  2. El modelo recibe cuatro capturas de la misma panorámica, solo en memoria, y devuelve en salida estructurada país, región, coordenadas, confianza y las pistas en las que se basa, que se enseñan al revelar la ronda; si la respuesta no es válida, se reintenta una vez y si no, cero puntos.

  3. Distancia con la fórmula del haversine y hasta 5000 puntos por ronda. Va sobre la misma API que Mea culpa, en /api/geo, con el mismo login de Google, cuotas diarias y un cupo propio de Street View por debajo del de Google.

Resultado

Con las fotos de Commons la IA sacaba unos 24.500 de 25.000 puntos porque las reconocía; con sitios al azar de Street View tiene que fijarse en las pistas, como una persona.