Skip to content

meghanapula/ai-task-manager

Repository files navigation

🤖 AI Task Manager

An AI-powered task manager built with Streamlit, LangChain, Google Gemini, and ChromaDB.
This app lets users upload an Excel file of tasks, then interact with it using natural language to add, update, delete, or ask questions about tasks.


🚀 Features

  • 📁 Upload .xlsx task files
  • 🧠 Ask natural language instructions like:
    • "Add task to finish blog post due next Friday"
    • "Update task 'Build UI mockup' to Completed"
    • "Delete task 'Team Meeting'"
  • 🗃️ Ask questions like:
    • "What tasks are due this week?"
    • "Which tasks are marked Completed?"
  • 💾 Download the updated task file after edits
  • 🔍 Uses RAG (Retrieval-Augmented Generation) for smart question-answering from task data

🛠️ Tech Stack

Tool/Library Purpose
🐍 Python Core programming language
🧱 Streamlit UI and app framework
📊 Pandas Excel/CSV data manipulation
🔗 LangChain Prompt templates, LLM chains, RAG
💬 Google Gemini (via LangChain) LLM for natural language understanding
🔎 ChromaDB Vector database for semantic retrieval
🔤 Google GenerativeAI Embeddings Convert task text into vector embeddings for search

🧠 How It Works

1. Upload Tasks

User uploads an Excel sheet with task information (e.g. Task Name, Due Date, Status).

2. AI Assistant for Instructions

You can tell the assistant what to do using plain English (e.g., "Add a task to finalize report").

LangChain uses a prompt template to structure this into a valid JSON instruction, which is parsed and applied to the table using pandas.

3. RAG: Ask Questions about the Tasks

  • Task descriptions are converted into chunks
  • Chunks are embedded using Google GenerativeAI Embeddings
  • Embeddings are stored in ChromaDB
  • When a question is asked, LangChain retrieves the most relevant chunks using semantic similarity
  • Gemini answers based on the retrieved context

📂 Folder Structure

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages