Summary
ELI5 (Explain Like I’m 5) is an AI-powered learning assistant designed to help users deeply understand complex topics by breaking them down and guiding them to explain concepts in their own words. Inspired by the Feynman Technique, this stateless API challenges users with thought-provoking hints and skeptical questions rather than direct corrections, fostering critical thinking and reinforcing comprehension through an iterative learning process managed by the client.
How It Works (Workflow)
-
Generate Atomic Topics: User provides a general topic (e.g., “Quantum Physics”). The API breaks it down into smaller, manageable atomic topics (e.g., “Wave-particle duality”, “Quantum entanglement”).
-
Define Learning Goal: User selects an atomic topic and provides their initial explanation. The API analyzes the explanation and returns a specific learning goal to the client.
-
Iterative Refinement: User submits refined explanations along with the previously generated learning goal. The API provides feedback (skeptical questions or hints) based on the explanation and the goal.
-
Goal Achievement: This client-managed loop continues. The user repeatedly calls the API with their explanation and the goal until the API indicates the explanation meets the learning goal, signifying a solid grasp of the atomic topic.
Key Features
-
🔍 General-to-Atomic Decomposition: Converts broad subjects into specific, focused learning units.
-
🎯 Goal-Oriented Learning: Establishes clear learning objectives based on initial understanding, returned to the client.
-
🤔 Socratic Feedback: Provides guiding questions and hints instead of direct answers to stimulate deeper thinking.
-
🔄 Iterative Refinement Loop: Enables repeated explanation and improvement until mastery, driven by the client passing the goal state.
-
🚫 Adjustable Rate Limiting: Configurable rate limit per user/IP using Redis to maintain stability.
-
🌐 Stateless Design: Each API request contains all necessary information; no server-side session state is maintained between requests.
Tech Stack
ELI5 API leverages modern and efficient technologies:
-
Backend: FastAPI (Python 3.11+)
-
AI Model: Gemini LearnLM 1.5 Pro education fine-tuned model for topic decomposition, goal generation, and feedback.
-
Structured Output: Instructor for reliable LLM responses.
-
Server: Uvicorn ASGI server.
-
Rate Limiting: Redis (Optional, for rate limiting).
-
Deployment: Docker & Docker Compose (Optional, for containerization.)
For more details, please visit the GitHub repository.