Basic Learning Micro lessons Agent working with Gradio
Add Interactive Micro-Learning Agent System
Overview
Built a complete AI-powered micro-learning generator that transforms user topics into structured educational modules with interactive knowledge checks.
Key Features
- AI Agent Workflow: Multi-agent system (planner → searcher → content creator) that researches and generates personalized learning content
- Interactive Gradio Interface: User-friendly web UI for topic input and lesson consumption
- Smart Content Safety: Guardrails with rate limiting (5/hour), content filtering, and educational topic validation
- Dynamic Learning Modules: Generates 1-5 bite-sized lessons (200-400 words each) with learning objectives and practical examples
- Interactive Knowledge Checks: Multiple choice quizzes with real-time feedback, scoring, and explanations
- Responsive Design: Clean UI with always-visible usage guidelines and progressive disclosure
Technical Implementation
- OpenAI Agents SDK: Structured agent workflows with web search capabilities
- Pydantic Models: Type-safe data structures for learning content
- Gradio Components: Native interactive elements (Radio, Button, Markdown) for seamless UX
- Async Workflow: Non-blocking content generation with proper error handling
- Jupyter Ready: Designed for notebook environments with share links
Usage
Users input educational topics (e.g., "Sustainable supply chain management for SMEs") and receive structured learning modules with interactive quizzes that provide immediate feedback and performance tracking.
Cost Management
Implements guardrails to control OpenAI API usage while maintaining educational quality and user experience.
Hey this is really cool @Yosolita1978 . Thank you so much. Hey did you mean to include that change to .gitignore? Would it be possible to remove that from the PR? Thanks so much
Of course!. Here is the PR without the .gitignore!
Hey @Yosolita1978 - actually that change you've made would now delete the .gitignore altogether if I merged it! (I believe).. would you be able to change this PR so that it only adds your project, and doesn't affect the .gitignore.. sorry for the hassle