Ask Questions About Your Data With GeoSense

GeoSense is GeoAI’s built-in AI assistant for the workspace. Ask it questions about your annotations in plain language — it can filter, rank, compare, and summarize your data across the vector layers in your workspace.

Opening GeoSense

Click the round chat button in the bottom-right corner of the app to open the chat panel, then pick the GeoSense tab if the panel also shows a Help Desk tab. The button is there on every page, not only in a workspace.

GeoSense widget location in the workspace

When you send a message from a workspace, GeoSense is given every vector layer of the files in the workspace’s current scene, so you can ask about any class or layer without configuring it first.

Sessions

Sessions are contextful chat histories. A session started in a workspace belongs to that workspace’s project; one started anywhere else belongs to no project. Each session gets an automatically generated title and persists between visits so you can pick up where you left off.

GeoSense chat widget with an active session

(1) Start New Session

Start a fresh session with a clean context.

(2) Browse Sessions

Open the session browser. The count shows how many sessions it lists.

(3) Rename session

Click the pencil next to the current session’s title to rename it.

(4) End Session

Delete the current session and all of its messages.

Clicking Browse Sessions (2) opens the GeoSense Sessions browser. You can search it by name and sort it by Creation Date or Name. In a workspace, choose which sessions it lists: Project (the workspace project’s only), Project + Global (those plus sessions that belong to no project, the default) or All. Anywhere else, every session is listed. Select any entry to make it the active session, or end sessions you no longer need.

GeoSense session browser panel

Sending Messages

Click the message field at the bottom of the panel, type your question, then press Enter or click the send button to submit it.

In a workspace, right above it, you can see what contexts you will send along with your message.

Context Settings

Context provides GeoSense with information about your current map state so it can give more accurate, situationally relevant answers. All three context types are active by default and can be toggled individually by clicking their chips above the message field. The chips only appear in a workspace; a message sent from anywhere else carries no context.

Context

What it provides

Selection

The annotations you currently have selected in the workspace

Position

Your current viewport bounding box — what part of the map you are looking at

Visibility

Which classes and vector layers you currently have hidden

GeoSense message field with contexts

GeoSense may also ask you to share context it needs for a specific question. Selecting “Allow” on that request attaches the relevant context types to your reply automatically.

Contexts

Contexts let you refine your queries by sharing information about your current map state with GeoSense. Without contexts, GeoSense has no knowledge of what is visible in your viewport, what you have selected, or which layers you have hidden. Attaching a context closes that gap — for example, you can ask “find objects visible in my viewport” or “which of my selected annotations are trees?” and get a meaningful answer without any manual filtering.

Context chips appear at the bottom of each message, recording what state was attached when it was sent. Hovering a chip reveals a summary of its contents. A context is active (highlighted) when your current workspace state exactly matches the data it holds — for instance, a position context is active when your viewport matches its stored extent. Clicking a Visibility or Position chip restores your workspace to that stored state in one click.

Visibility Context

The Visibility context captures which vector layers and annotation classes are currently hidden, as well as any active property filters such as area or confidence thresholds. GeoSense uses this to answer questions scoped to what you are actually looking at, rather than your full dataset.

Hovering the chip shows a tooltip listing all hidden objects. A completely hidden vector layer is shown with reduced opacity; a vector with only some hidden classes shows those classes as colored dots beneath it.

Visibility context chip popover showing hidden objects

Clicking the chip itself activates the context, restoring your visibility settings and filters to match what it stored.

Position Context

The Position context captures your current viewport as a geographic bounding box. GeoSense uses this to answer questions scoped to the area you are viewing — without requiring you to draw a region or filter manually.

Hovering the chip shows the southwest and northeast corner coordinates of the stored viewport extent. You can copy either corner to the clipboard, or click Show this viewport to pan to the whole stored extent.

Position context chip popover showing viewport corners

Clicking the chip activates the context, panning your viewport to match its stored extent.

Selection Context

The Selection context captures the annotations and regions you currently have selected. GeoSense can use this to answer questions scoped to your selection, rank or filter within it, or reference specific objects you have already identified visually.

Clicking the chip opens an interactive panel with a highlight block of all selected objects, including any regions. From there you can pan to the full set or export them, and click Select All to restore your active selection to match what the context holds.

Selection context chip popover showing selected objects

Because this panel contains interactive controls, the Selection context chip uses a click-to-open popover rather than a hover tooltip.

Example Use Cases

Finding the Largest Annotations of each Class in a Dataset

Rank your annotations by area and retrieve the top results. You can even group your results by class to avoid conflating results or having one class completely dominate, and get broadly applicable results.

“Show me the 5 largest annotations of each class.”

Result: ranked table of the largest annotations by class


Finding Annotations That Overlap With Another Class

GeoSense can run spatial queries across classes, identifying annotations from one class that intersect geometrically with annotations from another.

“Which tree annotations are overlapping with a road?”

Result: highlight block of trees that intersect road annotations


Calculating Aggregate Statistics Over a Filtered Set

Ask GeoSense to compute statistics — count, average, sum, min, max — over a filtered subset of your data, not just the entire layer.

“What is the average area of tree annotations with a confidence of at least 95%?”

Result: aggregate statistic response with a property display


Querying Within Your Active Selection

With the Selection context active, GeoSense can answer questions about exactly what you have selected — useful for drilling into a subset you have already identified visually.

It can also reason using that extra context, so you can ask about indirect derivations of your data.

“Out of the annotations I have selected, which ones have an area greater than 2000 pixels?”

Result: highlight block filtered to the active selection


Surfacing Low-Confidence Detections for Review

Sort detections by confidence to find the ones most in need of manual review. Combine with area to prioritize large, uncertain annotations first.

“List all annotations with a confidence below 70%, sorted by area from largest to smallest.”

Result: table of low-confidence detections sorted by area descending


Finding Spatially Isolated Annotations

Identify annotations that have no neighbors of the same class within a given distance — useful for spotting outliers or lone detections that may be false positives.

“Which tree annotations have no other tree within 150 meters of them?”

Result: highlight block of isolated tree annotations


Analyzing What Is Visible in Your Viewport

Using the Position context, GeoSense can answer questions scoped to what is currently visible in your viewport — without requiring you to draw a region or filter manually.

“What is the area breakdown by class in my current viewport?”

Result: class frequency summary for the current viewport


Interactive Elements

GeoSense provides a lot of UI support for various operations and analytical tasks. The following is a selection of the most impactful visual features it provides to streamline your processes.

Highlight Blocks

When GeoSense returns a set of matching annotations it presents them in a highlight block — a compact result grid that lets you work with the results directly from chat.

From a highlight block you can:

  • Pan to All to fit the results in the viewport, or click any single annotation to pan to it

  • Select All to bring the results into your workspace selection

  • Copy to Layer — copy the entire result set into a new vector layer in your project

  • Export Annotations — export the result set as a file

A highlight block is also automatically appended to any message that references annotations inline, so the full set is always one click away.

GeoSense annotation preview and highlight block

Note

Annotation references in GeoSense responses are live — they point to the underlying data. If an annotation is deleted from its vector layer, its reference in chat will stop resolving.

Rich Responses

GeoSense formats its responses to make results easy to scan:

  • Tables for comparing annotations side-by-side across multiple properties

  • Lists for ranked or grouped outputs

  • Property displays for measurements such as area, confidence, length, and coordinates, formatted to your workspace preferences

  • Code blocks for generated query examples or technical output

Clarification Questions

When a question is ambiguous or GeoSense needs more information before it can answer, it will pause and ask a clarifying question. You can reply by selecting one of the provided options or by typing a free-form answer. If GeoSense needs specific context from your map state, it will ask for it and you can approve sharing it with a single click.