Self-Guided AI Audio Tour Agent
A conversational voice agent system that generates immersive, self-guided audio tours based on the user’s location, areas of interest, and tour durati…
- OpenAI
Voice Agents ·Intermediate
A voice-first insurance claim intake app that lets a claimant talk naturally while the agent builds a structured claim packet in real time. The UI shows the live conversation, extracted claim facts, operator guidance, missing items, and an adjuster-ready handoff.
GOOGLE_API_KEYLicense Apache-2.0 · content curated and maintained by Doutor AI.
An insurance claim agent that can talk, listen, see damage through your camera, and draw incident sketches while the conversation continues. Built with Gemini 3.8 Live, with an optional live avatar for synchronized voice and video.
The agent records details in a field notebook, checks mock policy records, and asks for missing information. A background agent team applies intake rules and prepares a downloadable claim packet with notes, captured evidence, and illustrations for human review.
Requires Python 3.12 and a Google API key with access to the configured models.
cd voice_ai_agents/insurance_claim_live_agent_team
python3.12 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
Set these values in .env:
GOOGLE_GENAI_USE_VERTEXAI=False
GOOGLE_API_KEY=your-google-api-key
Start the app:
python -m uvicorn live_demo.server:app --reload --host 127.0.0.1 --port 4177
Open localhost:4177.
Intake data is stored in memory. Download your packet before restarting or resetting; the app does not submit it to an insurer.
Requires Google Cloud access to Gemini Live and Application Default Credentials. The Python requirements include avatar support.
gcloud auth application-default login
Add to .env, then restart the server:
FNOL_AVATAR_NAME=Kira
FNOL_AVATAR_PROJECT=your-project-id
FNOL_AVATAR_LOCATION=us-central1
FNOL_AVATAR_VOICE=Kore
GOOGLE_API_KEY and GOOGLE_GENAI_USE_VERTEXAI=False for claim processing and sketches.FNOL_AVATAR_NAME and FNOL_AVATAR_IMAGE unset for voice-only mode.Custom portraits require a Google Cloud project allowlisted for custom avatars.
FNOL_AVATAR_IMAGE=/path/to/your/avatar.png
FNOL_AVATAR_VOICE=Kore
FNOL_AVATAR_NAME as the API's avatar reference.Restart the server after changing .env.
| Variable | Default | Purpose |
|---|---|---|
FNOL_GEMINI_LIVE_MODEL | gemini-3.8-live | Live conversation and avatar |
FNOL_SKETCH_MODEL | gemini-3.1-flash-image | Incident sketches |
FNOL_VOICE | Kore | Voice-only responses |
FNOL_TRANSCRIPTION_VOCABULARY | Empty | Comma-separated speech-recognition hints |
FNOL_AVATAR_NAME | Empty | Prebuilt avatar; empty disables it unless an image is set |
FNOL_AVATAR_PROJECT | Empty | Avatar Cloud project |
FNOL_AVATAR_LOCATION | us-central1 | Avatar API region |
FNOL_AVATAR_VOICE | Kore | Avatar voice |
FNOL_AVATAR_IMAGE | Empty | Custom portrait path |
Vocabulary hints are optional, do not establish identity, and do not guarantee spelling. The template includes no personal name overrides or fixed conversation script.
| Input | Behavior |
|---|---|
| Camera off, with enough incident detail | Draw an illustration |
| Camera on, showing damage | Capture and independently verify the frame |
| Unclear camera view | Ask for a clearer view |
| Explicit diagram request | Draw in either camera mode |
| Correction to a sketch | Redraw using the corrected details |
Use this fictional example with the camera off:
I'm Maya Singh, policy H0-44721. Our basement flooded when the sump pump failed.
Nobody is hurt. Water entered by the stairs and spread across the carpet toward the boxes.
The agent checks the mock policy, records the facts, asks for missing details, and sketches when it has enough scene information.
| Policy | Policyholder | Type | Status |
|---|---|---|---|
| H0-44721 | Maya Singh | Homeowners | Active |
| AUTO-90210 | Jordan Lee | Auto | Active |
| RNT-3008 | Priya Shah | Renters | Active |
| TRV-7711 | Alex Chen | Travel | Active |
| MED-5520 | Sam Rivera | Medical reimbursement | Active |
| AUTO-11111 | Chris Park | Auto | Lapsed |
Unknown, lapsed, mismatched, and out-of-period policies route to human review. These records are examples, not a carrier connection.
| Component | Responsibility |
|---|---|
agent.py | ADK graph: normalization, classification, validation, and packet generation |
policies.py, schemas.py | Intake rules, routing, and structured data |
policy_directory.py | Mock policy records |
live_demo/live_tools.py | Live configuration, prompts, and tool declarations |
live_demo/server.py | Sessions, WebSocket transport, tools, and downloads |
live_demo/app.js | Conversation, camera input, and notebook updates |
live_demo/avatar.js | Synchronized avatar playback, interruption, and fallback |
live_demo/index.html, styles.css | Responsive interface |
gemini-3.8-live handles conversation, camera input, and optional avatar output.gemini-3.8-flash extracts claim facts and verifies captured photos.gemini-3.1-flash-image generates sketches.lookup_policy, sync_claim_packet, pin_evidence_photo, and draw_incident_sketch.Run from the app directory. JavaScript tests require Node.js.
python -m unittest discover -s tests -p 'test_*.py'
node tests/client-regressions.cjs
node tests/avatar-player.cjs
Tests cover claim rules, evidence, sessions, transcripts, interruption, avatar playback, and downloads. Model calls and devices are mocked; verify live microphone and camera behavior separately.
A conversational voice agent system that generates immersive, self-guided audio tours based on the user’s location, areas of interest, and tour durati…
An OpenAI SDK powered customer support agent application that delivers voice-powered responses to questions about your knowledge base using OpenAI's G…
Creates a voice-enabled RAG system using OpenAI's SDK - Supports PDF document processing and chunking - Uses Qdrant as the vector database for efficie…
Need a tailor-made solution?
Not sure where to start with AI in your business? Get a free assessment and a tailored plan - no commitment.
Doutor AI gives you 1,859 ready-to-copy AI prompts, by industry and in plain English - plus a complete technical library for those who want to go further.