--- language: en license: mit library_name: transformers tags: - finance - banking - indian - upi - transaction-classification - qwen - fine-tuned base_model: Qwen/Qwen2.5-0.5B --- # Indian Transaction Classifier Fine-tuned Qwen2.5-0.5B for classifying Indian bank transactions (UPI, NEFT, IMPS, RTGS) into 30+ categories with merchant identification. ## Model Description This model is fine-tuned on 1,700 privacy-sanitized Indian bank transaction descriptions. It classifies transactions into categories like salary, food, grocery, trading, bills, etc. and identifies the merchant/company when possible. ## Categories **Income:** salary, dividend, interest, rental, capital_gains, other_income **Expenses:** food, grocery, shopping, bills, medical, insurance, tax_payment, credit_card, personal_transfer, investment, trading_deposit, trading_credit, education, travel, entertainment, donation, loan_emi, loan_repayment, cash_withdrawal **Special:** friends, family, flat_deposit, trading_fees, vehicle_purchase, staff_salary, health_fitness, transfer, unclassified ## Usage ```python from transformers import AutoModelForCausalLM, AutoTokenizer model = AutoModelForCausalLM.from_pretrained("SahilGoel/indian-txn-classifier") tokenizer = AutoTokenizer.from_pretrained("SahilGoel/indian-txn-classifier") system_prompt = "You are a bank transaction classifier for Indian bank statements..." input_text = "UPI/zerodhabroking@/HDFC BANK LTD" prompt = f"### System:\n{system_prompt}\n\n### Input:\n{input_text}\n\n### Output:\n" inputs = tokenizer(prompt, return_tensors="pt") outputs = model.generate(**inputs, max_new_tokens=100) print(tokenizer.decode(outputs[0], skip_special_tokens=True)) ``` ## Training Data 1,700 privacy-sanitized transaction descriptions. PII (phone numbers, personal UPI handles, reference numbers) has been redacted. ## Pipeline Architecture 1. **Rule engine** (70-80% coverage) - regex patterns for known merchants and UPI handles 2. **Recurring pattern detector** (10% more) - identifies repeating transactions 3. **Fine-tuned Qwen 0.5B** (remaining) - LLM fallback for uncertain transactions ## Supported Banks ICICI, HDFC, SBI, Axis, Kotak, Yes Bank, Federal Bank, IDFC First, IndusInd, Bank of Baroda, Punjab National, Canara, Union Bank, Unity SFB ## GitHub Code and training pipeline: [the-great-one/indian-txn-classifier](https://github.com/The-Great-One/indian-txn-classifier)