HERE Technologies and Wherobots announce partnership Learn More

What is Geospatial AI? GeoAI Models, Agents, Examples

Authors

Geospatial AI, also called GeoAI or spatial AI, is the use of machine learning and AI agents on data tied to places on Earth. That data includes satellite and aerial imagery, maps, elevation, parcels, and location records. It covers computer vision on imagery and foundation models that turn imagery into embeddings, reusable lists of numbers that summarize each place. It also covers models that predict values across space and language model agents that run spatial analysis from a question. The claim: a model's output becomes evidence only after a spatial engine joins it to independent data and someone reads the disagreements. The walkthrough west of Phoenix tests that claim on two model outputs.

Key takeaways

  • Foundation models such as Prithvi, SatMAE, Clay, and AlphaEarth Foundations are pretrained on unlabeled imagery, so a new task needs fewer labels.
  • Nearby places resemble each other, so random train and test splits overstate accuracy. Spatial cross-validation, testing on held-out regions, corrects for it.
  • Language models hold uneven geographic knowledge, so agents call a spatial engine for distances and joins.

What is geospatial AI?

Geospatial means tied to a location on the Earth's surface. Geospatial data says where something is, such as a field boundary, a road, or a satellite pixel, as vector features (points, lines, shapes) or raster grids. Geospatial AI is machine learning in which location is a core input. The data has coordinates, the questions ask where, and the answers are maps, shapes, or values attached to places.

The term GeoAI took shape in the late 2010s. The ACM SIGSPATIAL GeoAI workshop series started in 2017, as Lunga and colleagues recount in GeoAI at ACM SIGSPATIAL: the new frontier of geospatial artificial intelligence research (SIGSPATIAL Special, 2022). Papers that define GeoAI most often cite one editorial. It is Janowicz and colleagues' GeoAI: spatially explicit artificial intelligence techniques for geographic knowledge discovery and beyond (International Journal of Geographical Information Science, 2020). It argues that models for geographic problems should build in location, distance, and spatial relations. Spatial AI is a common synonym, though some authors reserve it for the perception systems of robots and devices, as in physical AI.

Geospatial AI vs GIS

A geographic information system (GIS) stores, queries, and maps spatial data with explicit operations, such as a buffer or an intersection. Geospatial AI adds models trained on examples. A model labels every pixel of a county, or an agent turns a sentence into the buffer and intersect steps. Model outputs become GIS layers, and GIS work shifts toward checking them.

How geospatial AI works

Computer vision, foundation models, spatially explicit machine learning, and language model agents follow the same pattern. Each prepares spatial data, runs a model, and returns spatial data that joins to other layers.

Diagram of four strands of geospatial AI, each with an input, a model, and an output. Computer vision on imagery turns pixels into polygons. Geospatial foundation models turn unlabeled imagery into embeddings. Spatially explicit machine learning turns located samples into prediction surfaces. Language model agents turn questions into spatial SQL. A spatial engine underneath joins all four outputs to parcels, buildings, fields, and boundaries
The four strands of geospatial AI. Each ends in data tied to places, so the last step is a spatial join.

Computer vision on Earth observation imagery

The largest strand applies computer vision to Earth observation data. Scenes such as Sentinel-2 seasonal mosaics or National Agriculture Imagery Program (NAIP) aerial imagery are cut into chips, small fixed-size image tiles. A network labels pixels or outlines objects such as each building footprint. The predictions are stitched back together as polygons. U-Net (Ronneberger and colleagues, MICCAI 2015, a medical imaging conference) became a standard pixel-labeling (segmentation) network for satellite imagery. Kirillov and colleagues' Segment Anything (ICCV 2023) was trained on over 1 billion masks (object outlines). Meta's SAM 3 (Carion and colleagues, 2025) segments every instance of a concept named in a short phrase, such as "solar panels". Satellite imagery analysis and change detection cover this strand in depth.

Geospatial foundation models

A geospatial foundation model is pretrained on unlabeled imagery to learn a general representation of the Earth's surface. It is then adapted to a task with a small labeled set. Examples include:

  • SatMAE. Cong and colleagues at Stanford adapted masked autoencoders to satellite data in SatMAE: pre-training transformers for temporal and multi-spectral satellite imagery (NeurIPS 2022). A masked autoencoder hides parts of an image and trains the network to fill them in. Reused for land cover classification, SatMAE scored up to 14% better than earlier methods.
  • Prithvi. Jakubik and colleagues at IBM Research and NASA released Prithvi (2023), a transformer pretrained on more than 1 TB of Harmonized Landsat Sentinel-2 imagery.
  • Clay. The Clay Foundation Model is an open source vision transformer, trained by the same masking method on imagery from several instruments. Its code is Apache-licensed.
  • AlphaEarth Foundations. Brown and colleagues at Google DeepMind describe an embedding field model (2025). It combines optical, radar, lidar, and other sources into one list of 64 numbers (a unit-length vector) for every 10 m pixel on land. The vectors are published as annual layers.

AlphaEarth is delivered as precomputed data. The community copy on Source Cooperative holds the 2017 to 2025 layers under the Creative Commons Attribution license (CC BY 4.0). The files are Cloud Optimized GeoTIFFs, image files a reader can fetch in parts. With labels, a small classifier on the vectors maps a class. Without labels, similar vectors mean surfaces that looked alike over the year. Rolf and colleagues' MOSAIKS (Nature Communications, 2021) showed the cost saving earlier: compute image features once, then fit each task with a linear regression.

Spatially explicit machine learning

Tobler's first law of geography (Economic Geography, 1970) states that near things are more related than distant things. Spatially explicit models build that pattern in. Geographically weighted regression (Brunsdon, Fotheringham, and Charlton, Geographical Analysis, 1996) fits a separate regression at each location so coefficients can vary across space. Location encoders turn a coordinate into a learned vector, such as Mai and colleagues' grid-cell-inspired Space2Vec (ICLR 2020). Their review of location encoding for GeoAI (IJGIS, 2022) compares the methods.

Language models and agents with spatial tools

Language models were trained on text, documents, databases, and the internet. They answer many geography questions from memory. They cannot measure a distance, convert a coordinate to another map projection, or join two tables. An agent gets those answers by calling tools. Yao and colleagues' ReAct (ICLR 2023) alternates reasoning steps with tool calls and reads each result, the loop most agents use. Li and Ning's Autonomous GIS: the next-generation AI-powered GIS (International Journal of Digital Earth, 2023) applies it to GIS. In their design, the language model plans, writes code, runs it, and checks the output. The Model Context Protocol (MCP), released by Anthropic as an open standard in November 2024, gives agents one interface to data sources and tools. Context engineering covers how an agent assembles spatial facts. Spatial Graph RAG (retrieval-augmented generation) retrieves them from a graph of places. A spatial ontology keeps the types of those facts consistent.

What language models get wrong about geography

Published evaluations show where language models make geographic errors:

  • Coordinates alone make weak prompts. Manvi and colleagues' GeoLLM (ICLR 2024) found that asking a model about a latitude and longitude gives poor estimates of population density and economic indicators. Adding the names of nearby places from OpenStreetMap to the prompt improved results by 70% over baselines.
  • Knowledge is uneven by region. The same group's Large language models are geographically biased (ICML 2024) found that ratings given with no examples (zero-shot) correlate with ground truth. The ratings also show a clear bias against places with lower socioeconomic conditions, such as most of Africa, on subjective topics.
  • Structure matters. Yamada and colleagues' Evaluating spatial understanding of large language models (Transactions on Machine Learning Research, 2024) tested navigation over grids, rings, and trees. Accuracy varied with the shape of the space. Bhandari and colleagues' Are large language models geospatially knowledgeable? (SIGSPATIAL 2023) probed coordinate recall, spatial prepositions, and distance reasoning.
  • A map inside the model. Gurnee and Tegmark's Language models represent space and time (ICLR 2024) found that place coordinates can be read from Llama-2's internal values with a linear model. The model holds an approximate map.

Geospatial AI examples

  • Every farm field on Earth. Robinson, Kerner, and colleagues trained a U-Net on the Fields of the World benchmark (Kerner and colleagues, AAAI 2025). They ran it on cloud-free Sentinel-2 mosaics to produce the first global field boundary map at 10 m (2026).
  • Poverty from space. Yeh and colleagues' study of economic well-being in Africa (Nature Communications, 2020) predicted surveyed asset wealth for about 20,000 villages from public multispectral imagery. It explained 70% of the variation in countries the model had never seen.
  • Objects from a phrase. SAM 3 on 30 cm aerial imagery returns outlines of roofs, pools, and solar panels from text prompts, as the satellite imagery analysis walkthrough shows for one Oregon county.
  • Photo geolocation. Weyand and colleagues' PlaNet (ECCV 2016) trained a network on millions of geotagged photos to predict which of thousands of Earth cells a photo came from. GeoCLIP (Vivanco Cepeda and colleagues, NeurIPS 2023) aligns image embeddings with GPS coordinates. For an address or a sensor, geocoding and spatial joins do the locating.

Geospatial AI in Wherobots

Wherobots runs models over imagery in RasterFlow, and agents run spatial analysis through the Spatial AI Coding Assistant and the Wherobots MCP Server.

RasterFlow (Public Preview) builds image mosaics, runs computer vision models on them, and writes the results as vector data on the same platform. Its Sentinel-2 and NAIP recipes include Fields of the World, which draws field boundaries. Meta CHM (canopy height model) maps tree canopy height and writes it as a raster. Tile2Net maps sidewalks. Meta's SAM3 detects objects named in a text prompt in 30 cm imagery. Custom PyTorch models run through the bring-your-own-model path. Change detection over AlphaEarth embeddings scores how far each pixel's vector moved between years (cosine distance), as shown in AlphaEarth change detection for agriculture.

The Wherobots MCP Server exposes the WherobotsDB catalog and spatial SQL to Claude Code, Cursor, ChatGPT, Codex, and other agents. A plain-language question becomes a query a person can run and inspect. Agent Skills give an agent knowledge of Wherobots workflows. Because raster and vector data share one engine, a model's output joins to parcels in the same query an agent writes. WherobotsDB is built by the original creators of Apache Sedona and is 100% code compatible across all spatial functions.

# Build a Sentinel-2 mosaic and detect field boundaries with the Fields of the World recipe
from datetime import datetime
from rasterflow_remote import RasterflowClient
from rasterflow_remote.data_models import ModelRecipes

rf_client = RasterflowClient()
result = rf_client.build_and_predict_mosaic_recipe(
    aoi="s3://my-bucket/aoi/county.parquet",     # AOI as GeoParquet
    start=datetime(2025, 1, 1),
    end=datetime(2026, 1, 1),
    model_recipe=ModelRecipes.FTW,
)
result.mosaic_index_uri                           # index of prediction mosaics

Field boundaries and AlphaEarth embeddings joined to parcels west of Phoenix

This walkthrough joins two model outputs to farmland parcels west of Phoenix, Arizona. Each parcel record carries its majority class from the US Department of Agriculture (USDA) Cropland Data Layer (CDL) for 2022. The CDL is a classified crop map, so the join gives each field an independent crop estimate. The queries join raster and vector in one engine; most stacks pick one.

SourceFormatWhat the queries read
Fields of the World field boundaries (model output)Wherobots open data table of polygons891 field polygons for 2024 that lie fully inside a box from longitude -112.72 to -112.55 and latitude 33.32 to 33.45
Regrid parcel sampleWherobots open data table of parcel polygons22,290 Maricopa County parcels that touch the box, with each parcel's CDL 2022 majority class
AlphaEarth Foundations 2024 embeddings (model output), Source CooperativeOne Cloud Optimized GeoTIFF tile with 64 bands, Universal Transverse Mercator (UTM) zone 12NThe 64 values at the interior point of the first 10 fields of 2 ha or more. Fields are ordered by ID, so a rerun returns the same fields. One RS_Values call per band

The first query places a point inside each field and finds the parcel that contains it:

WITH fields AS (
  SELECT md5(ST_AsText(geometry)) AS fid, ST_PointOnSurface(geometry) AS pt, ST_AreaSpheroid(geometry) AS m2
  FROM wherobots_open_data.rasterflow_output_samples.fields_of_the_world_vector_global
  WHERE bbox.xmin > -112.72 AND bbox.xmax < -112.55
    AND bbox.ymin > 33.32 AND bbox.ymax < 33.45
    AND year(time) = 2024
),
parcels AS (
  SELECT geometry AS pgeom, cdl_majority_category AS crop
  FROM wherobots_open_data.partner_samples.regrid_parcels
  WHERE county = 'maricopa'
    AND ST_Intersects(geometry, ST_PolygonFromEnvelope(-112.72, 33.32, -112.55, 33.45))
)
SELECT COALESCE(NULLIF(p.crop, ''), '(no parcel or no CDL label)') AS crop,
       f.m2 >= 20000 AS at_least_2ha,
       COUNT(*) AS fields, ROUND(SUM(f.m2) / 1e4, 1) AS ha
FROM fields f LEFT JOIN parcels p ON ST_Contains(p.pgeom, f.pt)
GROUP BY 1, 2
ORDER BY fields DESC

The rows for fields of 2 ha or more, the size used in the next step:

CDL 2022 class of the parcelFieldsArea (ha)
Alfalfa2735,178.4
No parcel or no CDL label62765.2
Durum Wheat23498.4
Shrubland191,126.6
Corn14253.1
Fallow/Idle Cropland12210.5
Other Hay/Non Alfalfa9154.5
Dbl Crop WinWht/Corn7127.9
Woody Wetlands6171.4
Horizontal bar chart of Fields of the World 2024 field polygons of 2 hectares or more west of Phoenix, Arizona. Bars group the fields by the 2022 Cropland Data Layer class of the parcel each one sits on. Alfalfa has 5,178.4 hectares in 273 fields, shrubland 1,126.6 hectares in 19 fields, no parcel or label 765.2 hectares in 62 fields, and durum wheat 498.4 hectares in 23 fields. Smaller classes run down to developed open space
Model-drawn fields joined to parcels in one Wherobots query: 273 fields covering 5,178.4 ha sit on parcels labeled alfalfa.

The join shows disagreement. The 19 fields on shrubland parcels cover 1,126.6 ha. Either the 2022 crop map classed that land differently, or the boundary model drew polygons over land that is not farmed. Model outputs checked against model outputs need this review before they count as evidence.

The second query tests whether the AlphaEarth embeddings agree with those labels. It reads the 64 values at the 10 fields listed above. It converts the stored 8-bit integers back to embedding values, as the dataset's README specifies. It then compares every pair of labeled fields with cosine similarity, a score from -1 to 1 of how closely two vectors point the same way:

WITH fields AS (
  SELECT md5(ST_AsText(geometry)) AS fid, ST_PointOnSurface(geometry) AS pt
  FROM wherobots_open_data.rasterflow_output_samples.fields_of_the_world_vector_global
  WHERE bbox.xmin > -112.72 AND bbox.xmax < -112.55
    AND bbox.ymin > 33.32 AND bbox.ymax < 33.45
    AND year(time) = 2024
    AND ST_AreaSpheroid(geometry) >= 20000
  ORDER BY fid
  LIMIT 10
),
parcels AS (
  SELECT geometry AS pgeom, cdl_majority_category AS crop
  FROM wherobots_open_data.partner_samples.regrid_parcels
  WHERE county = 'maricopa' AND cdl_majority_category <> ''
    AND ST_Intersects(geometry, ST_PolygonFromEnvelope(-112.72, 33.32, -112.55, 33.45))
),
labeled AS (
  SELECT collect_list(struct(f.fid, f.pt, p.crop)) AS L
  FROM fields f JOIN parcels p ON ST_Contains(p.pgeom, f.pt)
),
r AS (
  SELECT RS_FromPath('s3://us-west-2.opendata.source.coop/tge-labs/aef/v1/annual/2024/12N/xr0oyaovft9h34y0g-0000008192-0000000000.tiff',
         'fs.s3a.bucket.us-west-2.opendata.source.coop.aws.credentials.provider=org.apache.hadoop.fs.s3a.AnonymousAWSCredentialsProvider;raster.reader.auto-rescale=false') AS rast
),
bands AS (SELECT /*+ REPARTITION(64) */ explode(sequence(1, 64)) AS band),
vals AS (
  SELECT /*+ BROADCAST(r), BROADCAST(labeled) */ bands.band, labeled.L,
         RS_Values(r.rast, transform(labeled.L, x -> ST_SetSRID(ST_Transform(x.pt, 'EPSG:4326', '+proj=utm +zone=12 +datum=WGS84 +units=m +no_defs'), 32612)), bands.band) AS us
  FROM bands CROSS JOIN r CROSS JOIN labeled
),
px AS (
  SELECT element_at(L, k + 1) AS f, band, IF(u > 127, u - 256, u) AS s
  FROM vals LATERAL VIEW posexplode(us) e AS k, u
),
vec AS (
  SELECT f.fid AS fid, FIRST(f.pt) AS pt, FIRST(f.crop) AS crop,
         transform(array_sort(collect_list(struct(band, SIGN(s) * POW(s / 127.5, 2) AS q))), z -> z.q) AS v
  FROM px GROUP BY f.fid
  HAVING COUNT(s) = 64 AND MAX(IF(s = -128, 1, 0)) = 0
),
everything AS (SELECT collect_list(struct(fid, pt, crop, v)) AS L FROM vec),
pairs AS (
  SELECT ST_DistanceSphere(a.pt, b.pt) / 1000 AS km,
         a.crop = b.crop AS same_crop,
         aggregate(zip_with(a.v, b.v, (x, y) -> x * y), 0D, (acc, x) -> acc + x)
           / SQRT(aggregate(a.v, 0D, (acc, x) -> acc + x * x) * aggregate(b.v, 0D, (acc, x) -> acc + x * x)) AS cos
  FROM everything
  LATERAL VIEW posexplode(L) t1 AS i, a
  LATERAL VIEW posexplode(L) t2 AS j, b
  WHERE i < j
)
SELECT CASE WHEN km < 1 THEN '0-1 km' WHEN km < 2 THEN '1-2 km' WHEN km < 4 THEN '2-4 km'
            WHEN km < 8 THEN '4-8 km' ELSE '8-20 km' END AS distance,
       same_crop, COUNT(*) AS pairs, ROUND(AVG(cos), 3) AS mean_cosine
FROM pairs
GROUP BY 1, 2
ORDER BY 1, 2
Distance between fieldsSame CDL classPairsMean cosine similarity
0-1 kmyes10.965
1-2 kmyes20.684
2-4 kmyes70.779
4-8 kmno50.603
4-8 kmyes180.674
8-20 kmno120.379
Grouped bar chart of mean cosine similarity between AlphaEarth 2024 embeddings for 45 pairs of fields west of Phoenix, by distance band. Same-crop pairs score 0.965 under 1 km, 0.684 at 1 to 2 km, 0.779 at 2 to 4 km and 0.674 at 4 to 8 km. Different-crop pairs score 0.603 at 4 to 8 km and 0.379 at 8 to 20 km
AlphaEarth 2024 embeddings compared for the 45 pairs among 10 fields in one Wherobots query: at 4 to 8 km, same-crop pairs score 0.674 and different-crop pairs 0.603.

The query ran in 162 seconds and returned 45 pairs. In the 4 to 8 km band, the only band with both kinds, same-crop pairs score 0.674 and different-crop pairs 0.603, from 23 pairs. That is the direction expected if the embeddings carry crop type. Similarity also falls with distance, from 0.965 for the closest pair to 0.379 for pairs 8 km or more apart. In this table, the effect of distance and the effect of crop type are mixed together. That is the random-split problem described below. Ten fields is a small sample, so treat the table as a demonstration of the method.

For another area, change the box, pick the AlphaEarth file from the dataset's GeoParquet index, and check the file's UTM map zone. Through the Wherobots MCP Server, an agent can find these tables and write the joins.

Geospatial AI research and what changes at scale

Spatial autocorrelation and cross-validation

Spatial autocorrelation means that nearby values resemble each other. A test field next to a training field shares its soil, climate, and management. A random split then measures how well a model fills in between neighbors. Ploton and colleagues quantified the gap in Spatial validation reveals poor predictive performance of large-scale ecological mapping models (Nature Communications, 2020). They trained a random forest to map aboveground forest biomass in central Africa from an inventory of 11.8 million trees. Under random cross-validation the model explained more than half of the variation in biomass. Under spatial validation that accounts for autocorrelation, it had almost no (quasi-null) predictive power.

Roberts and colleagues' Cross-validation strategies for data with temporal, spatial, hierarchical, or phylogenetic structure (Ecography, 2017) set out block cross-validation, which holds out whole regions. Meyer and Pebesma's Predicting into unknown space? Estimating the area of applicability of spatial prediction models (Methods in Ecology and Evolution, 2021) maps where input conditions resemble the training data. A map can then mark where its predictions are supported. Wadoux and colleagues showed in Spatial cross-validation is not the right way to evaluate map accuracy (Ecological Modelling, 2021) that random and spatial cross-validation can both give biased estimates. They also showed that spatial cross-validation can be overly pessimistic. Probability sampling with design-based inference gives unbiased estimates: test sites are drawn at random by a known design, and accuracy is computed from it. The validation design has to match how the map will be used.

Dataset bias

Shankar and colleagues' No classification without representation (2017) examined a sample of Open Images, a large public image dataset. Almost a third of the sample came from the United States. 60% came from the six most represented countries in North America and Europe. Marsocci and colleagues' PANGAEA benchmark (2024) reported the same bias in Earth observation benchmarks.

Evaluation

GEO-Bench (Lacoste and colleagues, NeurIPS 2023 Datasets and Benchmarks) collected six classification and six segmentation tasks with 20 baselines, so foundation models could be compared on equal terms. PANGAEA found that geospatial foundation models do not consistently outperform a U-Net trained from scratch. Mai and colleagues wrote a vision paper, On the opportunities and challenges of foundation models for GeoAI (ACM Transactions on Spatial Algorithms and Systems, 2024). It notes that geospatial tasks combine text, imagery, vectors, and time. It adds that benchmarks built on one data type miss that mix.

Reference data is often another model: the CDL labels in the walkthrough are USDA's own 2022 classification, applied to 2024 fields. The Yeh study above has the stronger design, a test in countries the model had never seen.

What scale changes

At continental scale, data movement and joins become the hard part. The global Fields of the World map (Robinson and colleagues, 2026) holds 3.17 billion field polygons across 241 countries and territories for 2024 and 2025. It was validated against reference boundaries in 24 countries, with a mean pixel-level recall of 0.85, the share of reference field pixels the map found. Taylor Geospatial ran the global field boundary model on RasterFlow, and every question asked of the output is a spatial join over billions of rows.

Jia Yu, Jinxuan Wu, and Mohamed Sarwat introduced GeoSpark (ACM SIGSPATIAL 2015), a cluster computing framework for large-scale spatial data on Apache Spark. The paper received the SIGSPATIAL 10-Year Impact Award in 2025. Yu, Zongsi Zhang, and Sarwat described its spatial partitioning, indexing, and join algorithms in Spatial data management in Apache Spark: the GeoSpark perspective and beyond (GeoInformatica, 2019). GeoSpark became Apache Sedona, the engine under WherobotsDB. Kanchan Chowdhury and Sarwat built GeoTorch (ACM SIGSPATIAL 2022) to train spatiotemporal deep learning models on clusters.

Embeddings add storage cost. AlphaEarth stores 64 bytes per 10 m pixel per year, so the engine has to read only the tiles each region needs, as the out-of-database raster architecture post describes.

Open problems

  • Validation that matches deployment. Spatial blocking, area of applicability, and probability sampling answer different questions. Which one applies depends on how the map will be used.
  • Time. Imagery, labels, and reference vectors rarely share a date, so model error and real change mix together.
  • Regions with few labels. Foundation models reflect the geographic spread of their pretraining and evaluation data.
  • Interpretability of embeddings. The 64 axes of an AlphaEarth vector have no agreed meaning.
  • Agent evaluation. An agent's answer depends on the data it chose to query, so benchmarks need to check that choice for real places.

Conclusions

For geospatial AI, the walkthrough and cited studies show that a model's map or answer becomes evidence after a check against independent data and validation matched to the map's use.

  1. In geospatial AI, join model output to independent data before counting it. The 19 fields drawn on shrubland parcels (1,126.6 ha) are a disagreement between two models, found by the parcel join. Join detections to a reference layer and read the mismatches before the count goes in a report.
  2. Validate a geospatial AI map by region when it covers new places. Similarity fell from 0.965 for the closest pair to 0.379 beyond 8 km, and Ploton's biomass model fell from more than half the variation explained to quasi-null under spatial validation. Hold out whole regions, report the area of applicability, and use probability sampling when the accuracy figure must be unbiased.
  3. Put a plain supervised baseline beside every geospatial foundation model. PANGAEA found that foundation models do not consistently beat a U-Net trained from scratch. Use a foundation model when labels are scarce, and report the baseline.
  4. In a geospatial AI agent, let the language model plan and the spatial engine compute. Coordinates alone gave GeoLLM poor estimates, place names raised them by 70%, and model knowledge is biased by region. Route every distance, reprojection, and join to a spatial engine through a tool interface such as MCP.
  5. At scale, the spatial join is the geospatial AI cost to plan for. The global field map holds 3.17 billion polygons, and every question asked of it is a spatial join. Choose an engine that partitions by location and reads only the tiles a region needs.
  6. Treat a small geospatial AI demonstration as a method check. The 0.674 versus 0.603 gap comes from 23 pairs among 10 fields. It shows how to test embeddings against labels, and the sample has to grow before it supports a finding.

Read more from Wherobots

Connect your AI agent to spatial data through the Wherobots MCP Server with a Wherobots free trial at cloud.wherobots.com.

Frequently asked questions

What is the difference between geospatial AI and spatial AI?

Geospatial AI and spatial AI are used interchangeably for AI applied to location data and imagery, along with the older term GeoAI. Some authors reserve spatial AI for the perception systems of robots and devices and use geospatial AI for Earth-scale data. In practice both name the same field: detection, prediction, and analysis on spatial data.

What are geospatial foundation models?

Geospatial foundation models are large neural networks pretrained on unlabeled satellite imagery to learn a general representation of the Earth’s surface. They are then adapted to a task with a small labeled set. Examples include SatMAE from Stanford. NASA and IBM’s Prithvi was pretrained on more than 1 TB of Harmonized Landsat Sentinel-2 imagery. Others are the open source Clay model and Google DeepMind’s AlphaEarth Foundations. AlphaEarth publishes one embedding per year for every 10 m pixel on land. An embedding here is a list of 64 numbers.

How is geospatial AI used in insurance?

In insurance, geospatial AI extracts roof condition, roof material, solar panels, pools, and tree overhang from aerial imagery across a portfolio. It maps damage after hurricanes and wildfires from satellite passes. Agents connected to spatial databases let underwriters query hazard exposure in plain language.

Can an AI agent run spatial analysis?

Yes. Through tool interfaces such as the Model Context Protocol, an AI agent reads a spatial database’s catalog, writes spatial SQL, executes it, and inspects the result. An agent connected to the Wherobots MCP Server answers a question such as which parcels sit inside a flood zone with a query you can run.

What is geospatial in simple terms?

Geospatial means tied to a place on the Earth’s surface. Geospatial data records where something is, as a point, line, polygon, or grid of pixels with coordinates: a field boundary, a road, a satellite image, or a delivery address. Geospatial AI is machine learning on data like that.

Is AI replacing GIS jobs?

AI is automating parts of GIS work, such as digitizing buildings and fields from imagery and writing routine spatial queries. The remaining work shifts toward choosing data, checking model outputs against reference data, and explaining results. It also includes designing validation that matches how a map will be used. Published evaluations show language models still make geographic errors, so spatial results still need review by someone who can check them.

Is GeoAI free?

Many GeoAI building blocks are free. Sentinel-2 and Landsat imagery is free. NASA and IBM publish Prithvi weights on Hugging Face. The Clay model is open source under an Apache license. The AlphaEarth Foundations embeddings are published under CC BY 4.0, and the Fields of the World field boundaries are open data. Running models over large areas costs compute, so platforms charge for processing.

Which AI is best for geolocation?

It depends on what is being located. For photos, image geolocation models such as PlaNet (ECCV 2016) and GeoCLIP (NeurIPS 2023) predict where a picture was taken. For addresses, geocoders match text to coordinates. For questions about places, such as which parcels a field sits on, a spatial database computes the answer, and a language model agent can write that query.

Why does spatial cross-validation matter for geospatial AI?

Nearby places resemble each other. A random train and test split puts near-copies of training samples into the test set, which overstates accuracy. Ploton and colleagues (Nature Communications, 2020) found a forest biomass model that looked strong under random cross-validation had quasi-null predictive power under spatial validation. Holding out whole regions gives a fairer estimate for a map of new places.