mirror of
https://github.com/dataforcanada/d4c-service-geo-assistant.git
synced 2026-06-13 14:31:01 +02:00
24c53b66e3eaf910b72fa8f15cc763070bebfed2
* wip buffer tool * add search area to attribute * add geopandas dependency * add buffer tool and fix graph to add in the overture tool * make async * simpler buffering * cleaner comments Co-authored-by: Wei Ji <23487320+weiji14@users.noreply.github.com> * Change from FeatureCollection to Feature And ensure that output search area is a Polygon * update test comments * remove unhelpful test checks --------- Co-authored-by: Wei Ji <23487320+weiji14@users.noreply.github.com> Co-authored-by: Daniel Wiesmann <yellowcap@users.noreply.github.com>
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.
Development Setup
Pre-commit Hooks
This project uses pre-commit hooks to ensure code quality. To set up pre-commit:
- Install dependencies (including pre-commit):
uv sync
- 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.
Languages
Python
100%