Martha Morrissey c677057b2e feat: overture places within buffer tool (#18)
* wip query places within buffer

* places within search area query working

* make async

* remove unused fields

* formatting

* remove literal type for more flexibile, but still map user input to 3 high level Overture categories- cafe, restaurant, and bar

* actually return pydantic FeatureCollection

* better formatting for tool message

* fix formatting

* fix init

* actually fix imports

* fix linting

* clearer agent instructions

* render the FeatureCollection automatically in steamlit
2025-12-05 17:28:37 +00:00
2025-12-05 08:53:04 +00:00
2025-12-04 09:36:14 +00:00
2025-12-04 09:22:18 +00:00

Geo Assistant

A geographic assistant that helps answer questions and perform tasks related to locations and geographic data.

Environment Setup

The project uses environment variables for configuration. Copy .env.example to .env and customize as needed:

cp .env.example .env

Edit .env to set your configuration:

  • OLLAMA_MODEL: Model name (default: llama3.2)
  • OLLAMA_BASE_URL: Ollama server URL (default: http://localhost:11434)
  • API_BASE_URL: API base URL for the frontend (default: http://localhost:8000)

The application will automatically load these variables from the .env file.

Ollama Setup

Install Ollama and download the required models:

ollama pull ministral-3:14b-cloud
ollama pull gpt-oss:20b-cloud

These models are used for agent and satellite image analysis.

Data Setup

Download Overture Maps place data locally:

mkdir -p data/overture/places
aws s3 sync s3://overturemaps-us-west-2/release/2025-11-19.0/theme=places/type=place/ data/overture/places/

Development Setup

Pre-commit Hooks

This project uses pre-commit hooks to ensure code quality. To set up pre-commit:

  1. Install dependencies (including pre-commit):
uv sync
  1. Install the git hooks:
uv run pre-commit install

Pre-commit will now automatically run ruff linting and formatting checks before each commit.

To manually run pre-commit on all files:

uv run pre-commit run --all-files

Running the API

uv run uvicorn geo_assistant.api.app:app --reload

The API will be available at http://localhost:8000.

Running the Frontend

streamlit run src/geo_assistant/frontend/app.py

The frontend will be available at http://localhost:8501.

S
Description
No description provided
Readme MIT 795 KiB
Languages
Python 100%