{"id":26565192,"url":"https://github.com/absarraashid3/sassysolver","last_synced_at":"2026-05-06T10:32:49.001Z","repository":{"id":283813775,"uuid":"952990382","full_name":"AbsarRaashid3/SassySolver","owner":"AbsarRaashid3","description":"SassySolver 🤖📚 - An AI-powered tool that humorously corrects wrong math memes! Built with a fine-tuned Qwen1.5-4B-Chat model using LoRA, deployed via Streamlit. It identifies common math misconceptions and provides accurate, sassy explanations. Make math memes smarter, one joke at a time!","archived":false,"fork":false,"pushed_at":"2025-03-22T10:36:15.000Z","size":79,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-17T22:42:17.872Z","etag":null,"topics":["artificial-intelligence","fine-tuning","generative-ai","lora","machine-learning","nlp-machine-learning","qlora","qwen","streamlit"],"latest_commit_sha":null,"homepage":"https://medium.com/@absarrashid3/sassysolver-the-ai-that-roasts-wrong-math-memes-1a98b40c1a12","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AbsarRaashid3.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-22T10:11:03.000Z","updated_at":"2025-03-22T10:41:17.000Z","dependencies_parsed_at":"2025-03-22T11:34:01.983Z","dependency_job_id":null,"html_url":"https://github.com/AbsarRaashid3/SassySolver","commit_stats":null,"previous_names":["absarraashid3/sassysolver"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AbsarRaashid3/SassySolver","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AbsarRaashid3%2FSassySolver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AbsarRaashid3%2FSassySolver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AbsarRaashid3%2FSassySolver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AbsarRaashid3%2FSassySolver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AbsarRaashid3","download_url":"https://codeload.github.com/AbsarRaashid3/SassySolver/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AbsarRaashid3%2FSassySolver/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271887611,"owners_count":24839135,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-24T02:00:11.135Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["artificial-intelligence","fine-tuning","generative-ai","lora","machine-learning","nlp-machine-learning","qlora","qwen","streamlit"],"created_at":"2025-03-22T17:19:56.058Z","updated_at":"2026-05-06T10:32:43.952Z","avatar_url":"https://github.com/AbsarRaashid3.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SassySolver 🤖📚 - Correcting Wrong Math Memes with AI\n\nSassySolver is a fun and educational AI-powered project designed to correct incorrect math memes and provide accurate explanations. By using a fine-tuned Qwen1.5-4B-Chat model, SassySolver aims to address common math misconceptions and errors with sass and precision.\n\n## 📌 Overview\n### SassySolver is built with the following features:\n\n- Fine-tuned Qwen1.5-4B-Chat model using LoRA (Low-Rank Adaptation) technique.\n- Memory-efficient quantization using bitsandbytes.\n- Model deployment via Streamlit with an interactive UI.\n- Trained on a diverse dataset of incorrect math memes and correct explanations.\n- Provides entertaining yet informative explanations for a wide variety of math-related mistakes.\n\n  ## 📁 Directory Structure\n\n  ```\n  ├── math_memes_dataset123.csv     # Dataset for training the model\n  ├── app.py                        # Streamlit deployment script\n  ├── your_script.py                # Script for testing the model with new inputs\n  ├── requirements.txt              # Dependencies for the project\n  ├── Output.png                    # Sample output of the model\n  ├── Output2.png                   # Sample output of the model\n  ├── Output3.png                   # Sample output of the model\n  └── README.md                     # Project README (this file)\n  ```\n\n## 🚀 Installation\n**To get started, clone this repository and install the required packages:**\n```\ngit clone https://github.com/AbsarRaashid3/SassySolver.git\ncd SassySolver\n```\n\n**Install the dependencies from requirements.txt:I**\n```\npip install -r requirements.txt\n```\n\n## 📚 Dataset\nThe dataset (math_memes_dataset123.csv) consists of pairs of incorrect math memes and their corresponding correct explanations. Example entries:\n```\ninput,output\n8 ÷ 2(2+2) = 1?,Incorrect! Correct solution: 8 ÷ 2×(2+2) = 8 ÷ 2×4 = 4×4 = 16. PEMDAS requires performing multiplication and division left‐to‐right after parentheses.\n1/2 + 1/3 = 2/5. Just add numerators and denominators!,Fraction error! The correct method is to find a common denominator: 1/2 = 3/6 and 1/3 = 2/6; so the sum is 5/6.\n\n```\n\n## 🧩 Model Training\n**The model is fine-tuned using LoRA (Low-Rank Adaptation) with quantization enabled to reduce memory usage. The training script is written in Jupyter Notebook.**\n\n### Training Configuration\n- Model: Qwen1.5-4B-Chat\n- LoRA Configuration: r=16, lora_alpha=16, lora_dropout=0.05\n- Quantization: 4-bit quantization using BitsAndBytesConfig\n- Training Epochs: 9\n- Evaluation Strategy: epoch\n- Optimized for both GPU and CPU compatibility.\n\n\n## 🌐 Deployment\nThe model is deployed using Streamlit with app.py.\n\n## Run the App Locally\n```\nstreamlit run app.py\n```\n\nOnce deployed, the UI will be accessible at:\n```\nhttp://localhost:8501\n```\n\n## Ngrok Deployment (Optional)\nIf you want to make your app publicly accessible, you can use ngrok.\n\n```\nngrok authtoken YOUR_NGROK_AUTH_TOKEN  # Set your ngrok auth token\n```\n\nThen, in your terminal:\n```\npython -m streamlit run app.py\n```\n\n## 📄 Usage\n- Open the Streamlit app.\n- Enter a wrong math meme.\n- Click \"Fix Math Meme\" button.\n- Receive a corrected explanation with a touch of sass!\n\n## 📦 Requirements\nThe required packages are listed in the requirements.txt file:\n```\ntorch\nstreamlit\ndatasets\ntransformers\nbitsandbytes\n```\n\nInstall them using:\n```\npip install -r requirements.txt\n```\n\n## 📌 Testing The Model\nUse the your_script.py file to test the model with more incorrect math memes.\n\n```\npython your_script.py\n```\n\n## 📷 Sample Outputs\n\n![Output](https://github.com/user-attachments/assets/fac32dae-467d-414b-b285-acb57989bd18)\n![Output2](https://github.com/user-attachments/assets/f5e01305-9ab9-42ef-9d5e-788f8dfe5d01)\n![Output3](https://github.com/user-attachments/assets/3bfe1213-ef55-4ab4-8305-84ec92f4f6cd)\n\n## 🔥 Future Improvements\n- Enhancing the dataset with more common misconceptions.\n- Improving the UI for better user experience.\n- Deploying the model as a web API for easier integration.\n\n\n## 💬 Acknowledgments\n**Special thanks to the developers of Qwen1.5-4B-Chat, Streamlit, and bitsandbytes for making this project possible.**\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabsarraashid3%2Fsassysolver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabsarraashid3%2Fsassysolver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabsarraashid3%2Fsassysolver/lists"}