Skip to content

bk1210/Smart-Resource-Finder-Agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

6 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽ“ Smart Resource Finder Agent

Python Streamlit Groq License

An Agentic AI study assistant that helps college students find curated learning resources and build personalized exam study plans โ€” powered by Groq API and LLaMA 3.3-70B.

Features โ€ข Demo โ€ข Installation โ€ข Usage โ€ข Architecture โ€ข Tech Stack โ€ข Contact


๐Ÿ“Œ Overview

Smart Resource Finder Agent is an agentic AI system designed to support college students in their academic journey. Unlike a simple chatbot, this system implements a full Observe โ†’ Think โ†’ Act agentic loop where the AI autonomously decides which tools to call, executes them, and generates structured responses.

The platform offers two core features:

  • ๐Ÿ” Resource Finder โ€” Automatically discovers videos, documentation, tutorials, research papers, and practice sets for any academic topic
  • ๐Ÿ“… Study Planner โ€” Generates a personalized day-by-day study schedule based on exam date, available hours, and topics to cover โ€” with live progress tracking

โœจ Features

๐Ÿ” Resource Finder

  • Enter any academic topic and receive structured, categorized study resources
  • AI agent autonomously calls a resource search tool using tool calling / function calling
  • Resources organized into: Videos, Documentation, Tutorials, Research Papers, and Practice Sets
  • Each resource includes name, URL, description, and relevance explanation
  • Live Agent Loop display showing Observe โ†’ Think โ†’ Act steps in real time

๐Ÿ“… Study Planner

  • Set your exam date and the system plans backwards from today
  • Specify daily study hours and topics to cover
  • AI generates a specific, actionable day-by-day schedule (not vague tasks)
  • Final day is always auto-set to Full Revision + Mock Test
  • Interactive progress tracking โ€” tick off sessions as you complete them
  • Live progress bar showing completion percentage
  • ๐ŸŽ‰ Celebration message when all sessions are completed

๐ŸŽจ Interface

  • Clean dark-themed UI with gradient background
  • Two-tab layout โ€” Resource Finder and Study Planner
  • Fully responsive and professional design
  • No HTML/CSS knowledge required โ€” built entirely in Python

๐Ÿ–ฅ๏ธ Demo

Resource Finder

Input  โ†’ "Deep Learning"
Output โ†’ Structured resources across 5 categories with real URLs
         + Topic overview + Study path + Pro tips

Study Planner

Input  โ†’ Exam: 2026-05-10 | Hours/day: 3 | Topics: ML, DL, CNN, NLP
Output โ†’ 20-day schedule with specific daily tasks
         + Progress tracking with checkboxes

๐Ÿš€ Installation

Prerequisites

Step 1 โ€” Clone the Repository

git clone https://github.com/YOUR_USERNAME/smart-resource-finder-agent.git
cd smart-resource-finder-agent

Step 2 โ€” Install Dependencies

pip install -r requirements.txt

Step 3 โ€” Set Your API Key

Option A โ€” Environment Variable (Recommended)

# macOS / Linux
export GROQ_API_KEY="gsk_your_key_here"

# Windows PowerShell
$env:GROQ_API_KEY="gsk_your_key_here"

# Windows Command Prompt
set GROQ_API_KEY=gsk_your_key_here

Option B โ€” Directly in the App

Simply paste your API key into the sidebar input field after launching the app. No setup required.

Step 4 โ€” Run the App

python -m streamlit run app.py

Open your browser at http://localhost:8501


๐Ÿ“– Usage

Using the Resource Finder

  1. Navigate to the ๐Ÿ” Resource Finder tab
  2. Type any academic topic in the input box
    • Examples: Machine Learning, Fourier Transform, Operating Systems, Quantum Computing
  3. Click "Find Study Resources"
  4. Watch the Agent Loop execute in real time
  5. View structured resources organized by type

Using the Study Planner

  1. Navigate to the ๐Ÿ“… Study Planner tab
  2. Select your Exam Date using the date picker
  3. Set your Study Hours per Day
  4. Enter your Topics (one per line), for example:
    Machine Learning
    Deep Learning
    Convolutional Neural Networks
    Natural Language Processing
    
  5. Click "Generate My Study Plan"
  6. Review your personalized day-by-day schedule
  7. Check off each session as you complete it
  8. Track your progress via the live progress bar

๐Ÿ”„ Pipeline

Pipeline

๐Ÿ—๏ธ Architecture

Agent Loop โ€” Observe โ†’ Think โ†’ Act

Student Input (topic)
        โ”‚
        โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚    OBSERVE    โ”‚  โ† Parse and wrap the student's topic
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
        โ”‚
        โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚     THINK     โ”‚  โ† Groq LLM reasons about resource types & difficulty
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
        โ”‚  tool_call: search_study_resources(topic, level, resource_types)
        โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚      ACT      โ”‚  โ† Execute tool โ†’ feed result back โ†’ LLM composes answer
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
        โ”‚
        โ–ผ
Structured Markdown Response โ†’ Streamlit UI

Project Structure

smart-resource-finder-agent/
โ”‚
โ”œโ”€โ”€ app.py              # Streamlit web interface (two-tab UI)
โ”œโ”€โ”€ agent.py            # Agentic loop โ€” Observe โ†’ Think โ†’ Act
โ”œโ”€โ”€ tools.py            # Tool definition and executor
โ”œโ”€โ”€ requirements.txt    # Python dependencies
โ””โ”€โ”€ README.md           # Project documentation

File Responsibilities

File Responsibility
app.py Web interface, tab layout, user inputs, result rendering, study planner UI
agent.py Groq API connection, agentic loop, tool call detection and execution
tools.py Tool schema definition, tool executor, parameter routing

๐Ÿ› ๏ธ Tech Stack

Technology Version Purpose
Python 3.11 Core programming language
Groq API Latest Ultra-fast LLM inference engine
LLaMA 3.3-70B Meta Large language model for resource generation and planning
Streamlit โ‰ฅ 1.35 Python-based web application framework
Groq Python SDK โ‰ฅ 0.9.0 Official client for Groq API communication
Tool Calling โ€” Agentic mechanism for autonomous tool invocation
JSON โ€” Structured data exchange and study plan parsing
Custom CSS โ€” Dark theme, animations, and UI styling

๐Ÿ“ฆ Dependencies

groq>=0.9.0
streamlit>=1.35.0

Install with:

pip install -r requirements.txt

๐Ÿ”‘ Environment Variables

Variable Required Description
GROQ_API_KEY Yes Your Groq API key from console.groq.com

๐Ÿ™‹ FAQ

Q: Is the Groq API free? Yes. Groq offers a free tier with generous rate limits, sufficient for demos and student projects. Get your key at console.groq.com/keys.

Q: Does the study plan persist after closing the browser? Currently the plan is stored in Streamlit session state and resets on page refresh. For persistent storage, a database integration can be added in future versions.

Q: Can I use a different LLM model? Yes. In agent.py, change the MODEL constant to any Groq-supported model such as mixtral-8x7b-32768 or gemma2-9b-it.

Q: Why does Streamlit rerun on every interaction? Streamlit reruns the entire script on each user action by design. Session state is used to preserve the study plan and checkbox values across these reruns.


๐Ÿ”ฎ Future Improvements

  • Persistent database storage for study plans (SQLite / Firebase)
  • Export study plan as PDF
  • YouTube API integration for real video search
  • Email reminder system for daily study sessions
  • Multi-subject support with separate progress tracking per subject
  • Dark/Light mode toggle

๐Ÿ“„ License

This project is licensed under the MIT License โ€” see the LICENSE file for details.


๐Ÿ‘ค Contact

Your Name


๐Ÿ™ Acknowledgements

  • Groq โ€” for providing free, ultra-fast LLM inference
  • Meta AI โ€” for the open-source LLaMA 3.3-70B model
  • Streamlit โ€” for making Python web apps effortless

โญ If you found this project useful, please give it a star on GitHub! โญ

Built with โค๏ธ for college students everywhere

About

Agentic AI study assistant for college students. Finds curated learning resources (videos, docs, tutorials, papers) for any academic topic and generates personalized exam study plans with progress tracking. Built with Groq API, LLaMA 3.3-70B & Streamlit.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages