El desafío: Comprender la calidad de las direcciones de la India
El sistema de direcciones de la India es conocido por su diversidad y complejidad. Las direcciones pueden ser muy descriptivas, no estandarizadas, incluir puntos de referencia locales y, a menudo, carecer de códigos PIN precisos o un orden de componentes coherente. Esto plantea desafíos significativos para las personas, las plataformas de comercio electrónico, las empresas de logística y los proveedores de servicios que dependen de datos de ubicación precisos. Entre los problemas clave que se suelen encontrar con las direcciones de la India, se incluyen los siguientes:
- Faltan códigos PIN o son incorrectos: Son esenciales para el enrutamiento eficiente de paquetes y correo, pero suelen ser imprecisos o no estar presentes.
- Errores ortográficos: Los errores comunes en los nombres de localidades, ciudades o estados pueden generar interpretaciones erróneas.
- Orden de componentes no estándar: La secuencia de elementos de dirección (como número de casa, calle, localidad y ciudad) puede variar mucho, lo que dificulta el procesamiento automático.
- Falta de estandarización: Términos coloquiales, abreviaturas y referencias descriptivas (p.ej., "cerca del templo antiguo") son comunes, pero los sistemas estándar no las comprenden.
- Inclusión de información relacional: Los términos como "Hijo de", "Hija de" o "A cargo de" se suelen incorporar a la dirección, lo que agrega datos no relacionados con la ubicación.
- Variaciones en las notaciones de subdirecciones: Componentes como números de unidad, números de casa o números de parcela (p.ej., "2/1") se escriben de muchas maneras, como "2/1", "2-1", "2 por 1" o "No. 2, 1ª parte", lo que dificulta su análisis de forma coherente.
- Prevalencia de los detalles de la subdirección: Muchas direcciones, especialmente en áreas urbanas, incluyen información crucial de la subdirección, como números de departamento, números de piso o detalles de la sección del edificio, que son vitales para la entrega de última milla, pero a menudo no están estructurados.
- Ambigüedad: A veces, las direcciones se pueden interpretar de varias maneras, lo que genera incertidumbre a la hora de ubicar el punto exacto.
Estos desafíos pueden provocar fallas en la entrega, aumento de los costos operativos, experiencias del cliente deficientes y dificultades en el análisis de datos y la planificación de servicios. Existe una clara necesidad de obtener comentarios rápidos y prácticos sobre la calidad de las direcciones.
La solución: comentarios sobre direcciones potenciados por IA
Para abordar estos desafíos, presentamos una solución que utiliza IA generativa.
Este sistema está diseñado para proporcionar a los usuarios de la India comentarios valiosos sobre sus direcciones, lo que les permite comprender posibles problemas y cómo darles un mejor formato para obtener mejores resultados de geocodificación y una mayor precisión general.
La idea principal es usar los modelos de Gemini en Vertex AI para hacer lo siguiente:
- Analizar e interpretar direcciones de la India complejas y, a menudo, con formato incorrecto
- Identificar errores e incoherencias comunes
- Sugerir versiones estandarizadas y corregidas
- Proporciona explicaciones claras de los cambios realizados.
El sistema se presenta en dos formatos: - Una API de REST - Una IU web
Cómo pueden usar esta herramienta los clientes de la India
Si bien el objetivo principal es proporcionar comentarios sobre la calidad de las direcciones, los beneficios se extienden aún más:
- Mejora en la entrega: Para las empresas, comprender cómo estructurar mejor las direcciones puede significar menos intentos de entrega fallidos, costos operativos reducidos y mayor satisfacción del cliente. Las personas también pueden asegurarse de recibir sus paquetes y correo de manera más confiable usando direcciones con el formato correcto.
- Mejora de datos: Las empresas pueden usar las estadísticas obtenidas de esta herramienta (o integrar la API subyacente) para guiar la limpieza y estandarización de sus bases de datos de direcciones de clientes existentes, lo que genera mejores estadísticas y servicios segmentados.
- Verificación visual: La visualización del mapa con dos pines es particularmente valiosa. Los usuarios pueden confirmar visualmente si las direcciones originales y las refinadas apuntan a la misma ubicación o a diferentes. Esto ayuda a identificar si la versión "limpia" refleja con precisión la ubicación prevista o si la entrada original era demasiado ambigua o errónea para una geocodificación correcta.
Si comprenden los desafíos específicos de sus direcciones a través de los comentarios proporcionados, los usuarios pueden tomar medidas correctivas, actualizar sus registros y comunicar sus ubicaciones de manera más eficaz.
¿Qué es esta aplicación?
Esta aplicación web sirve como interfaz para el sistema de comentarios sobre direcciones potenciado por IA. Está diseñado para ayudar a los usuarios y las empresas a validar, comprender y mejorar las direcciones físicas, con un enfoque particular en los matices de las direcciones de la India. La aplicación ofrece una interfaz fácil de usar en la que los usuarios pueden hacer lo siguiente:
- Ingresa una dirección: Puedes escribirla directamente o pegar varias direcciones para procesarlas de forma masiva.
- Recibir una dirección corregida: La aplicación procesa la entrada y proporciona una versión estandarizada y corregida según la comprensión del modelo de IA.
- Comprende los cambios: Destaca las modificaciones específicas que se realizaron en la dirección original, lo que ofrece transparencia en el proceso de comentarios.
- Visualiza las diferencias: Tanto la dirección original como la corregida se fijan en un mapa interactivo, lo que permite a los usuarios comparar visualmente sus ubicaciones y detectar posibles discrepancias de un vistazo.
- Obtén componentes detallados: La dirección geocodificada (limpia) se desglosa en sus partes constituyentes (como número de calle, localidad, ciudad, código postal), lo que proporciona una vista estructurada.
Esta app es particularmente útil para evaluar rápidamente la calidad de las direcciones, comprender los posibles problemas y ver cómo se podrían estructurar mejor las direcciones para los sistemas que dependen de formatos estandarizados.
Arquitectura de backend: potenciada por Gemini y Vertex AI
La inteligencia detrás de la capacidad de esta aplicación para comprender y refinar direcciones proviene de las tecnologías avanzadas de IA de Google Cloud:
- **Procesamiento de direcciones principal: ** El modelo Gemini 2.5 Flash de Google se encarga de la tarea fundamental de analizar, comprender, corregir y estandarizar cadenas de direcciones. Cuando se envía una dirección, ocurre lo siguiente:
- La aplicación de frontend envía la dirección de entrada a un servicio de backend.
- Este servicio de backend aprovecha la API de Gemini. El modelo Gemini 2.5 Flash recibe instrucciones con una instrucción detallada para verificar el procesamiento preciso y estandarizado. Las instrucciones principales que se le dan al modelo son las siguientes:
You are an address cleaning expert. Your task is to take malformed addresses
and output cleaned and standardized versions. All addresses will be from India.
BEGIN:
Follow these instructions:
Remove any mention of "House Number," "H.No," "Door Number," "D.No,"
"Building No", "Flat No." etc. along with the number it's associated with
Remove any "C/O," "S/O," etc.
DO NOT REMOVE any name of building
It should also remove any name of person or actual house numbers etc which
appear after the texts mentioned in the previous point
Ensure there are no duplicate mentions of town names, state names, etc.
If no valid zip code is available, add an error in the Errors field:
"No valid zip code found. Please verify."
Remove mention of any Floors in the address
If there are any mention of "Near or landmark" put that in a new field called
"address_descriptors"
Expand any rd, ln, st and similar other abbreviations to road, lane, street etc.
END:
BEGIN: Structuring the output
Output the cleaned address in a single line.
Output address should put State, Country, Zip code at the end in that order.
If any critical component of the address is missing, mention that in errors section.
**Critically important:** Provide a detailed description of every change made
to the address in the "changes_made" field. Do not omit this field.
IF a House number or unit number was removed add that in a separate field
called "subpremise_details".
Output the errors in the field called "errors". If no errors, provide an empty
array.
Output all responses in JSON format.
END:
Estas instrucciones estructuradas guían a Gemini 2.5 Flash para que haga lo siguiente:
- Analiza entradas de direcciones complejas y, a menudo, no estructuradas.
- Identifica y extrae los componentes clave de la dirección (p.ej., número de casa o departamento, nombre del edificio, calle, localidad, sublocalidad, ciudad, estado y código postal).
- Corregir errores ortográficos y variaciones comunes
- Reordenar los componentes en un formato más estandarizado adecuado para la India
- Inferir o marcar la información crítica faltante cuando sea posible
Generar una lista de los "cambios realizados" y los errores, lo que proporciona transparencia La capacidad del modelo para seguir estas instrucciones detalladas y, al mismo tiempo, controlar diversos patrones lingüísticos e información contextual es clave para su eficacia con formatos de direcciones variados.
Publicación y escalabilidad (Cloud Run en Vertex AI/Google Cloud): El servicio de backend que coordina las llamadas a la API de Gemini y devuelve los resultados al frontend se compila como una aplicación sin servidores en contenedores.
Esta arquitectura sin servidores muestra una forma de implementar ese servicio. Como aplicación de demostración, su objetivo principal es permitir que los clientes obtengan rápidamente comentarios sobre la calidad de las direcciones.
Cómo usar la aplicación
La aplicación está disponible en India address feedback app.
Para usarlo, realiza los pasos siguientes:
- Ingresa tu dirección: Escribe o pega tu dirección de la India en el campo de entrada.
- Procesa la dirección: Haz clic en el botón "Limpiar dirección".
- Revisa los resultados: La aplicación mostrará lo siguiente:
- Es la dirección corregida.
- Un mapa que muestra las ubicaciones originales y las limpias.
- Es un desglose de los componentes de la dirección.
- Es una lista de los cambios que realizó la IA.
- Se detectaron errores.
Ejemplo de llamada directa a la API (para desarrolladores)
Para los desarrolladores o sistemas que buscan integrar la funcionalidad de procesamiento de direcciones directamente, se puede llamar al servicio de backend de forma programática.
A continuación, se muestra un ejemplo con el uso de cURL
:
curl -X POST \
https://gemini-address-cleaner-480439120941.us-central1.run.app/clean_address \
-H "Content-Type: application/json" \
-d '{
"input_address": "S/O Laum Mirzapur Mirzapur Muzaffarpur Bihar India Mirzapur purani Darbhanga road SELAMBA BIHAR 843103"
}'
Este comando envía una solicitud POST con la cadena de dirección en una carga útil JSON y devolverá una respuesta JSON que contiene la dirección procesada y otra información pertinente, similar a la que se muestra en la aplicación.
Esta aplicación tiene como objetivo simplificar la complejidad de las direcciones y ofrece una herramienta valiosa para mejorar la precisión y la eficiencia, en especial en entornos diversos y dinámicos como la India.