MappView

Manual/Guías

Asistente de IA

El asistente de IA es un panel de “converse con sus datos” que convierte peticiones en lenguaje natural en operaciones propias de MappView — SQL espacial, estilizado de capas, control del mapa y más — y las aplica a través de la aplicación, igual que lo haría a mano. Ábralo desde Procesamiento → AI Assistant (parte superior del menú) o desde la paleta de comandos. Se acopla como un panel redimensionable en la parte inferior de la ventana (arrastre su borde superior para cambiar el tamaño, para cerrar).

Como el asistente actúa a través del store en lugar de manipular el mapa directamente, casi todo lo que hace es deshacible con Ctrl/Cmd + Z, y cada llamada a herramientas (incluido el SQL que genera) se muestra en la transcripción para que pueda ver exactamente qué se ejecutó.

El asistente es opcional y permanece desactivado hasta que configure un proveedor o hasta que el operador del despliegue active el proxy de IA gestionado. Ningún dato sale de su equipo hasta que envíe un mensaje al proveedor configurado.

Configuración: elegir un proveedor de IA

El asistente admite proveedores intercambiables — usa el SDK de Strands Agents. Configure uno o más proveedores en Configuración → AI Providers:

ProveedorVariable(s) de entornoModelo por defecto
Google GeminiGEMINI_API_KEY o GOOGLE_API_KEYgemini-3.6-flash
AnthropicANTHROPIC_API_KEYclaude-opus-5
OpenAIOPENAI_API_KEYElegir entre los modelos GPT actuales
Ollama (local)OLLAMA_BASE_URL (p. ej., http://localhost:11434)gemma4
Amazon BedrockAWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY (+ AWS_REGION, opcionalmente AWS_SESSION_TOKEN)global.anthropic.claude-opus-5
Personalizado (compatible con OpenAI)OPENAI_COMPATIBLE_BASE_URL (+ opcionalmente OPENAI_COMPATIBLE_API_KEY) y OPENAI_COMPATIBLE_MODEL

Las claves alojadas (y las credenciales AWS) se usan directamente desde su navegador para llamar al proveedor; nunca se envían a los servidores de MappView. Al guardar la configuración se habilita el panel inmediatamente — sin necesidad de recargar.

IA gestionada en un despliegue Docker protegido con contraseña

Un operador del despliegue puede proporcionar IA sin distribuir claves de API de proveedores. En esta configuración, el navegador llama a la ruta /ai del mismo origen. El nginx de Docker comprueba el usuario y la contraseña de HTTP Basic Auth de la instancia cuando el operador los ha configurado, y después añade un token de instancia exclusivo del servidor y reenvía la solicitud al proxy de IA configurado. El navegador no recibe ni el token de instancia ni el token de Cloudflare AI Gateway.

Los usuarios solo necesitan iniciar sesión en la instancia MappView; no configuran una clave de proveedor de IA. Las solicitudes enviadas directamente al proxy configurado sin el token exclusivo del servidor reciben 401 Unauthorized.

El operador debe arrancar el contenedor con todas las variables de IA gestionada:

docker run --rm -p 8080:80 \
  -e MAPPVIEW_AUTH_USER=admin \
  -e MAPPVIEW_AUTH_PASSWORD='change-me' \
  -e MAPPVIEW_AI_URL=/ai \
  -e MAPPVIEW_AI_MODEL=openai/gpt-5.5 \
  -e MAPPVIEW_AI_PROXY_URL=http://host.docker.internal:8791 \
  -e MAPPVIEW_AI_PROXY_TOKEN="$MAPPVIEW_AI_PROXY_TOKEN" \
  mapptech/mappview:local

Si MAPPVIEW_AI_URL no está definida, el entrypoint de Docker deja el proxy gestionado desactivado y no inyecta ninguna URL de proxy de IA en la aplicación.

Variables opcionales:

VariablePropósito
MAPPVIEW_ASSISTANT_PROVIDERForzar un proveedor (google / anthropic / openai) cuando hay varias claves definidas.
MAPPVIEW_ASSISTANT_MODELFijar un id de modelo concreto, anulando el valor por defecto y el selector.
TAVILY_API_KEYHabilitar una búsqueda web fiable (el mecanismo alternativo sin clave es best-effort y puede ser bloqueado por el navegador).

Cuando hay más de una clave de proveedor configurada, aparece un desplegable de proveedor en el encabezado del panel; un desplegable de modelo permite cambiar de modelo para el proveedor seleccionado. Su elección se recuerda entre sesiones.

Leer claves del entorno de su sistema (escritorio)

En la aplicación de escritorio, MappView también lee las claves del asistente directamente de las variables de entorno de su sistema operativo — las que exporta desde su perfil de shell o define en el cuadro de diálogo Variables de entorno de Windows. Defina una variable compatible en el entorno de su SO, reinicie la aplicación, y el proveedor correspondiente queda configurado automáticamente: nunca teclea la clave en Configuración y, como no se introduce allí, nunca se escribe en el archivo de proyecto .mappview.json guardado. Esta es la forma recomendada de mantener las claves de API fuera de los archivos de proyecto que comparte o confirma en git.

Solo se leen de su entorno los siguientes nombres de lista blanca — MappView nunca lee ninguna otra variable del sistema (su PATH, HOME, etc., nunca llegan a la aplicación), y esta lista blanca se aplica en el backend nativo, no solo en la interfaz:

GrupoVariables leídas del entorno del OS
Overrides de proveedor/modeloMAPPVIEW_ASSISTANT_PROVIDER, MAPPVIEW_ASSISTANT_MODEL
Google GeminiGEMINI_API_KEY, GOOGLE_API_KEY, GOOGLE_GENAI_API_KEY
AnthropicANTHROPIC_API_KEY
OpenAIOPENAI_API_KEY
OllamaOLLAMA_BASE_URL, OLLAMA_MODEL
Personalizado (compatible con OpenAI)OPENAI_COMPATIBLE_BASE_URL, OPENAI_COMPATIBLE_API_KEY, OPENAI_COMPATIBLE_MODEL
Búsqueda webTAVILY_API_KEY

Precedencia: un valor introducido en Configuración → Environment Variables siempre gana; el entorno del SO solo rellena los huecos. En la configuración de IA, cualquier campo suministrado por el entorno muestra una nota nombrando la variable que lo respalda — deje ese campo vacío para seguir usando el valor del entorno.

!!! warning “Amazon Bedrock no proviene del entorno del SO” Las credenciales AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY de Bedrock (y el OLLAMA_HOST ambiental) están deliberadamente excluidas de la lectura del entorno del SO: los desarrolladores suelen tener credenciales AWS exportadas en su shell para trabajo no relacionado, y adoptarlas silenciosamente podría activar Bedrock automáticamente y facturar a su cuenta AWS llamadas LLM que nunca pretendió. Para usar Bedrock, introduzca las credenciales en Configuración → Environment Variables.

!!! note “Solo escritorio” Leer variables de entorno del SO requiere el backend nativo, así que se aplica solo a la aplicación de escritorio. Las builds de navegador y Jupyter no pueden leer el entorno del sistema; allí, introduzca las claves en Configuración → Environment Variables (u hornéelas en tiempo de build). Los cambios en las variables del SO se recogen en el siguiente arranque de la aplicación.

Uso

Escriba una petición y pulse Ctrl/Cmd + Enter (o haga clic en Send). El asistente transmite su respuesta en streaming, ejecuta herramientas según sea necesario e informa de lo que hizo. Mientras trabaja, Send pasa a ser Stop — haga clic para cancelar. Clear (el icono de goma de borrar) inicia una conversación nueva.

show me all parcels larger than 1 hectare within 500 m of a river
color the counties by population using a graduated red ramp
buffer the roads by 100 m, then clip them to the county boundary
load the latest Sentinel-2 scene over this view
zoom to Africa, then switch to a dark basemap
add an OpenTopoMap basemap

Qué puede hacer

El asistente funciona llamando a un conjunto fijo de herramientas — no puede inventar operaciones, así que sus acciones se mantienen dentro de la superficie validada de MappView.

CapacidadQué hace
Inspeccionar capasLista las capas cargadas, su geometría, campos de atributos y nombres de tablas SQL (solo esquema — nunca sus datos completos).
LN → SQL espacialGenera y ejecuta una consulta DuckDB Spatial SQL de solo lectura a través del espacio de trabajo SQL, y puede añadir el resultado como capa.
GeoprocesamientoEjecuta los algoritmos de procesamiento registrados (buffer, clip, dissolve, intersección, diferencia, unión, unión espacial, simplificar, rejillas H3, …) y los encadena en pipelines de varios pasos, añadiendo cada resultado como capa.
SimbologíaAplica una rampa de color graduada (numérica) o categorizada (texto) a una capa.
Añadir datosAñade una capa desde una URL GeoJSON pública, o un mapa base de teselas XYZ por nombre (osm, opentopomap, carto-dark) o una URL personalizada {z}/{x}/{y}.
Observación de la TierraBusca en el catálogo STAC de Planetary Computer de Microsoft (Sentinel-2, Landsat, NAIP, DEM, …) y añade un elemento sobre la vista actual como capa ráster — las teselas se firman en el servidor, así que no se necesitan credenciales.
Control del mapaMueve la cámara (ajustar a una capa o a un rectángulo delimitador), cambia el mapa base, alterna visibilidad/opacidad de capas y elimina capas.
Búsqueda webConsulta información actualizada en línea (mejor con TAVILY_API_KEY).
Alternativa con códigoPara tareas sin herramienta dedicada, ejecuta un pequeño fragmento JavaScript contra el mapa en vivo (p. ej., proyección de globo) o un fragmento Python en el runtime Pyodide.

Prompts de ejemplo

Los prompts son de forma libre — estos son puntos de partida, no comandos fijos. Refiérase a las capas por nombre; el asistente averigua el resto. También puede encadenar pasos en un solo mensaje (“buffer the roads by 100 m and then clip to the county boundary”) o seguir refinando entre turnos (“now color it by area”).

Explorar y consultar

what layers are loaded, and what fields does the parcels layer have?
how many parcels are larger than 1 hectare?
list the 10 most populous counties with their population
show parcels within 500 m of a river and add them as a layer
count points in each polygon of the districts layer

Geoprocesamiento y análisis

buffer the roads by 100 meters
buffer the roads by 100 m, then clip the buffer to the county boundary
dissolve the parcels by zoning type
find where the floodplain overlaps the buildings (intersection)
create an H3 hex grid at resolution 8 over the points and count points per cell
compute centroids of the counties and add them as a layer

Simbología

color the counties by population with a graduated red ramp
style the parcels categorized by land-use type
shade the tracts by median income using a viridis ramp with 7 classes

Añadir datos e imágenes

load the latest Sentinel-2 scene over this view
add the most recent cloud-free Landsat image for this area
search the Planetary Computer for NAIP imagery here
add an OpenTopoMap basemap
add this GeoJSON: https://example.com/data.geojson

Control del mapa y estilizado

zoom to the parcels layer
fly to San Francisco
switch to a dark basemap
hide the buildings layer and set the parcels opacity to 0.5
remove the temporary buffer layer

Avanzado (alternativa con código)

switch the map to a 3D globe projection
enable terrain with hillshade exaggeration of 1.5
load a CSV from a URL with pandas and summarize its columns

Seguridad y privacidad

!!! note “Advertencia sobre la ejecución de código” Las alternativas JavaScript y Python ejecutan código generado por el modelo dentro de la aplicación para cubrir peticiones que ninguna herramienta dedicada atiende. Sus cambios directos sobre el mapa omiten el store y no son deshacibles. El código se muestra en la transcripción.

Limitaciones