SafeVixAI/SafeVixAI-Dataset-Hub
SafeVixAI Dataset Hub 🛡️ The Intelligence Layer for the SafeVixAI platform — IIT Madras Road Safety Hackathon 2026 This repository hosts all datasets, pre-trained models, notebooks, and reproducible data acquisition scripts that power the SafeVixAI application. It is designed to be cloned directly into Google Colab or any research environment. Main Application Repo: SafeVixAI/SafeVixAI ⚡ Quickstart (Google Colab) # Clone the entire intelligence layer !git… See the full description on the dataset page: https://huggingface.co/datasets/SafeVixAI/SafeVixAI-Dataset-Hub.
1147
1from __future__ import annotations2 3import logging4logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')5LOGGER = logging.getLogger(__name__)6 7 8from pathlib import Path9ROOT_DIR = Path(__file__).resolve().parents[2]10 11from _overpass_utils import build_arg_parser, build_india_query, fetch_elements, normalize_row, write_rows12 13 14DEFAULT_OUTPUT = ROOT_DIR / 'chatbot_service' / 'data' / 'emergency' / 'ambulance_stations.csv'15SELECTORS = [16 'node["emergency"="ambulance_station"](area.searchArea);',17 'way["emergency"="ambulance_station"](area.searchArea);',18 'relation["emergency"="ambulance_station"](area.searchArea);',19 'node["amenity"="ambulance_station"](area.searchArea);',20 'way["amenity"="ambulance_station"](area.searchArea);',21 'relation["amenity"="ambulance_station"](area.searchArea);',22 'node["healthcare"="ambulance_station"](area.searchArea);',23 'way["healthcare"="ambulance_station"](area.searchArea);',24 'relation["healthcare"="ambulance_station"](area.searchArea);',25]26 27 28def main() -> None:29 parser = build_arg_parser('Fetch India ambulance station data from Overpass.', DEFAULT_OUTPUT)30 args = parser.parse_args()31 32 query = build_india_query(SELECTORS, timeout=args.timeout)33 elements = fetch_elements(query, endpoint=args.endpoint, timeout=args.timeout)34 rows = [35 row36 for element in elements37 if (row := normalize_row(element, default_type='ambulance', fallback_name='Unnamed ambulance station')) is not None38 ]39 count = write_rows(args.output, rows)40 LOGGER.info(f'Saved {count} ambulance station records to {args.output}')41 42 43if __name__ == '__main__':44 main()45 