๐ Over 240 million emergency calls are made in the United States each year (National Emergency Number Association), putting extreme pressure on dispatchers in life-or-death situations. In those critical first moments, key details can be missed, delayed, or misunderstood when callers are panicking.
FirstWaveAI was built to rethink the emergency intake process. I created an AI-powered call assistant that speaks directly with callers, asks clarifying questions, and structures critical information in real time. The system then visualizes the situation on a live map, identifies nearby resources, and generates an AI-assisted dispatch recommendation, all while keeping a human dispatcher in full control with an approval override. ๐
FirstWaveAI is a real-time emergency dispatch assistant that combines speech recognition, multi-agent AI, and interactive visualization to help dispatchers work faster and more accurately.
- Callers can speak naturally using the Web Speech API, while the system transcribes the conversation in real time and maintains a full transcript.
Six specialized AI agents work together to analyze the call:
- ๐ Extraction Agent โ Captures key details (location, injuries, hazards, people count)
- ๐ฆ Triage Agent โ Assigns priority levels (P1โP4)
- โ Next-Question Agent โ Suggests clarifying follow-ups
- ๐ Dispatch Planner โ Recommends EMS, Fire, or Police
- ๐บ๏ธ Resource Locator โ Finds nearest available units with ETAs
- ๐ก๏ธ Safety Guardrail โ Ensures ethical recommendations
A clean three-column interface shows:
- Live chat transcript ๐ฌ
- AI-generated emergency summary ๐
- Dispatch recommendations with approve/cancel controls โ โ
An interactive Leaflet map displays nearby hospitals, fire stations, police, and pharmacies with distances and travel times.
- Python 3.13+ - Core programming language
- FastAPI - Modern, high-performance web framework
- LangGraph - Multi-agent AI workflow orchestration
- Groq + LLaMA 3.3 70B - High-performance LLM inference
- Fish Audio API - Text-to-speech synthesis
- Server-Sent Events (SSE) - Real-time streaming updates
- Uvicorn - ASGI server for production deployment
- Next.js 16 - React framework with App Router
- React 19 - Latest React features
- TypeScript - Type-safe development
- Tailwind CSS 4 - Utility-first styling with custom emergency theme
- shadcn/ui - High-quality component library
- Leaflet + OpenStreetMap - Interactive mapping
- Web Speech API - Real-time speech recognition and transcription
- Python 3.13+
- Node.js 18+
- npm/yarn
- Groq API Key (for LLaMA 3.3 70B - get free at console.groq.com)
- Fish Audio API Key (for text-to-speech - optional)
git clone https://github.com/your-username/firstwave.git
cd firstwavecd backend
# Create and activate virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Set up environment variables
cp .env.example .env
# Edit .env and add your API keys:
# - GROQ_API_KEY=your-groq-api-key-here
# - FISH_AUDIO_API_KEY=your-fish-audio-api-key-here (optional)
# - FISH_AUDIO_VOICE_ID=optional_voice_id (optional)
# Start the backend server
python main.pyBackend will be running at http://localhost:8000
cd frontend
# Install dependencies
npm install
# Start the development server
npm run devFrontend will be running at http://localhost:3000
This platform serves multiple emergency response applications:
- Emergency Call Triage: Real-time analysis and prioritization of emergency calls
- Dispatcher Assistance: AI-powered support for human dispatchers
- Resource Optimization: Intelligent matching of emergencies with nearby resources
- Response Time Improvement: Faster information extraction and dispatch recommendations
This project is licensed under the MIT License.