Inspiration
Millions of people worldwide cannot afford doctors or live far from hospitals. Every day, people suffer because they don't know if their symptoms are serious or not. A mother in a rural village cannot get medical guidance for her sick child. An elderly person living alone doesn't know if their chest pain needs emergency care. This reality inspired MediVoice AI — what if anyone, anywhere could simply speak their symptoms and get instant, reliable health guidance powered by Amazon Nova AI?
What it does
MediVoice AI is a voice-powered medical assistant that allows users to:
- 🎤 Speak or type their symptoms in natural language
- 📸 Upload a photo of a visible condition like a rash or wound
- 🧠 Receive instant AI analysis with possible conditions and next steps
- 🔊 Get voice responses spoken back using Nova Sonic
- 🌍 Work on any device — phone, tablet, or computer
- ✅ Always shows medical disclaimer for responsible use
How we built it
The project uses three Amazon Nova models working together:
| Model | Role |
|---|---|
| Nova Sonic | Converts voice input to text and speaks responses |
| Nova Lite | Analyzes symptoms and reasons about conditions |
| Nova Multimodal Embeddings | Processes and analyzes uploaded medical images |
Tech Stack:
- Backend: Java Spring Boot with LangChain4j
- Frontend: React.js with Web Speech API
- AI: Amazon Nova via Amazon Bedrock
- Storage: AWS S3 for secure image storage
- Build: Maven
Challenges we ran into
- Nova Sonic bidirectional streaming required HTTP/2 configuration with NettyNioAsyncHttpClient which was complex to set up in Java
- AWS SDK integration with Spring Boot needed careful configuration of Bedrock runtime clients
- Voice recording in browser required handling microphone permissions and audio encoding correctly
- Timeout handling for Nova Sonic TTS required CompletableFuture with time caps and graceful fallback
- CORS configuration between Java backend and React frontend needed careful setup
Accomplishments that we're proud of
- ✅ Successfully integrated all 3 Amazon Nova models in one application
- ✅ Built a working medical analysis system that responds in ~13 seconds
- ✅ Implemented secure image storage in AWS S3 with unique file naming
- ✅ Created a clean, accessible UI that works for elderly users
- ✅ Added responsible AI features with medical disclaimers throughout
- ✅ Built graceful fallbacks when Nova Sonic is unavailable
What we learned
- How to orchestrate multiple Nova models in a single Java pipeline
- The power of multimodal AI for combining voice, text and image inputs
- How LangChain4j simplifies AI agent development in Java
- The importance of responsible AI design in healthcare applications
- How Amazon Bedrock makes it easy to access frontier AI models
What's next for MediVoice AI
- 🌐 Add multilingual support using Nova Sonic's language capabilities
- 📱 Build a mobile app for offline rural use
- 🏥 Integrate with real medical databases like WHO and NHS guidelines
- 🤝 Partner with NGOs and community health workers
- 🔒 Add patient privacy features and HIPAA compliance
- 📊 Build symptom tracking over time for chronic conditions
Built With
- amazon-bedrock
- amazon-nova
- amazon-nova-lite
- amazon-nova-multimodal-embeddings
- amazon-web-services
- css3
- git
- html5
- java
- javascript
- langchain4j
- maven
- python
- react
- rest-api
- spring-boot
Log in or sign up for Devpost to join the conversation.