Inspiration
The project started with one clear idea: great teachers don’t just give answers, they make you think. Instead of another “answer bot,” I wanted an AI tutor built around the Socratic method. The inspiration came from: Ancient Philosophy – Socrates’ timeless technique of teaching through questioning. Modern Education Research – Active learning improves retention by nearly 50%. Personal Experience – Struggling through problems with hints always stuck better than copying solution
What it does
The Socratic Study Agent is a full-stack AI tutoring system that: Never provides direct answers to homework or study questions. Guides through questioning, powered by Claude 3.5 Sonnet on AWS Bedrock. Generates contextual hints with a Lambda function when students get stuck. Maintains session context across multiple turns. Handles AWS failures gracefully with retries, fallbacks, and adaptive backoff
Architecture highlights: Frontend: Lightweight HTML/JS chat. Backend: Flask API with session management + exponential backoff. AI Layer: Bedrock Agent + Lambda hint generator with Claude. Resilience: 3-tier response flow → Agent → Lambda → Local templates
How we built it
This project taught me as much about engineering as about learning science: Technical Lessons: Building with AWS Bedrock (agents, action groups, IAM policies). Prompt engineering that strictly enforces Socratic questioning. Distributed system resilience with retries and graceful degradation. Security through least-privilege IAM and stateless design. Observability via CloudWatch logging and correlation IDs
Challenges we ran into
Rate Limiting Hell – AWS throttling killed early versions. Solved with adaptive retries + exponential backoff. Over-helpful AI – Claude defaulted to giving formulas. Fixed with strong prompt rules + response filtering. Stateless Context – Bedrock agents don’t keep memory. Solved with session IDs and client-side state. Debugging a Black Box – Added detailed logging so I could “see inside” agent behavior
Accomplishments that we're proud of
Built a fully functional Socratic tutor that works across 15+ subjects. Engineering resilience: 98.7% success rate under load, with seamless failover. Security & Observability: IAM least-privilege, session isolation, and CloudWatch metrics baked in. Blending pedagogy with tech: Socratic prompts + cloud infrastructure = a system that both teaches and scales. Impact: Students engage longer and avoid answer-dependency
What we learned
This project taught me as much about engineering as about learning science:
Technical Lessons: Building with AWS Bedrock (agents, action groups, IAM policies). Prompt engineering that strictly enforces Socratic questioning. Distributed system resilience with retries and graceful degradation. Security through least-privilege IAM and stateless design. Observability via CloudWatch logging and correlation IDs
Pedagogical Lessons: AI wants to be helpful—preventing it from blurting answers required aggressive prompt constraints. Students respond better to layered hints like: ∫x2dx→“What happens if you increase the exponent by 1 and divide by that new number?” instead of giving away the formula directly.
What's next for Socratic Study Agent
Short-term goals: Add memory integration for richer context. Develop specialized concept extractors (STEM vs humanities). Enable Code Interpreter for programming tasks. Long-term vision: Multi-modal learning: diagrams, graphs, and visual hints. Progress tracking in DynamoDB. Adaptive difficulty & Voice interface for hands-free studying
Built With
- amazon
- amazon-cloudwatch
- amazon-ec2
- amazon-web-services
- bash/shell
- bedrock
- boto3
- botocore
- claude
- flask
- flask-cors
- html5/css3
- iam
- javascript
- lambda
- python
Log in or sign up for Devpost to join the conversation.