Skip to content

kuman002/academic-notes-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧠 Intelligence System for Academic Notes

A Context-Bound QA System that answers student questions only based on uploaded academic notes. It uses RAG (Retrieval Augmented Generation) to ensure grounded answers and strict hallucination control.

πŸš€ Features

  • Text Chunking: Splits large academic PDFs into manageable logical chunks.
  • Semantic Search: Uses Local Embeddings (HuggingFace) to find relevant content without API rate limits.
  • Context-Bound AI: Answering engine (Llama-3 via Groq) is strictly prompted to admit ignorance if data is missing.
  • Hallucination Control: Returns "Information not available in the notes" for out-of-scope questions.
  • Source Attribution: Cites the specific page number and file name for every answer.

πŸ› οΈ Tech Stack

  • Backend: Flask (Python)
  • Vector DB: ChromaDB (Persistent storage)
  • LLM: Llama-3.3-70b (via Groq)
  • Embeddings: all-MiniLM-L6-v2 (HuggingFace)
  • Framework: LangChain

πŸƒβ€β™‚οΈ How to Run

  1. Clone the Repository

    git clone <your-repo-url>
    cd academic-notes-ai
  2. Install Dependencies

    pip install -r requirements.txt
  3. Setup Environment Variables Create a .env file in the root directory:

    GROQ_API_KEY=gsk_your_key_here...
  4. Run the Server

    python app.py

πŸ”Œ API Endpoints

1. Upload Notes (POST /upload)

Uploads a PDF or Text file to the knowledge base.

  • Body: form-data -> key: files (File)

2. Ask Question (POST /ask)

Asks a question based on the uploaded notes.

  • Body: raw JSON
    {
      "question": "What is the definition of mitosis?"
    }

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages