Spaces:
Sleeping
Sleeping
import streamlit as st | |
import boto3 | |
import json | |
import chromadb | |
import pandas as pd | |
import time | |
import re | |
from datetime import datetime | |
# Sample Bollywood movies data (simplified for demo) | |
SAMPLE_MOVIES = [ | |
{"title": "Mughal-e-Azam", "year": 1960, "genre": "Epic Romance", "director": "K. Asif", | |
"plot": "Crown prince Salim’s forbidden love for a court dancer sparks war with Emperor Akbar."}, | |
{"title": "Junglee", "year": 1961, "genre": "Rom-Com", "director": "Subodh Mukherjee", | |
"plot": "A prim aristocrat learns to live and love after meeting a free-spirited girl in Kashmir."}, | |
{"title": "Bees Saal Baad", "year": 1962, "genre": "Mystery Thriller", "director": "Biren Nag", | |
"plot": "A young heir returns to his haunted village to break a 20-year-old curse and prove his sanity."}, | |
{"title": "Bandini", "year": 1963, "genre": "Social Drama", "director": "Bimal Roy", | |
"plot": "In pre-Independence India, a female convict must choose between duty, love and freedom."}, | |
{"title": "Sangam", "year": 1964, "genre": "Romance", "director": "Raj Kapoor", | |
"plot": "A love triangle tests lifelong friendship when an air-force pilot marries the woman both men adore."}, | |
{"title": "Guide", "year": 1965, "genre": "Romantic Drama","director": "Vijay Anand", | |
"plot": "A tour guide becomes spiritual guru while helping a dancer escape an oppressive marriage."}, | |
{"title": "Teesri Manzil", "year": 1966, "genre": "Musical Mystery","director": "Vijay Anand", | |
"plot": "Suave drummer Rocky helps a young woman hunt the killer behind her sister’s fatal fall."}, | |
{"title": "Upkar", "year": 1967, "genre": "Patriotic Drama","director": "Manoj Kumar", | |
"plot": "A farmer-soldier embodies ‘Jai Jawan Jai Kisan’, sacrificing for family and nation."}, | |
{"title": "Jewel Thief", "year": 1967, "genre": "Heist Thriller","director": "Vijay Anand", | |
"plot": "A look-alike is hired by police to trap an elusive jewel smuggler, only to be ensnared himself."}, | |
{"title": "Aradhana", "year": 1969, "genre": "Musical Romance","director": "Shakti Samanta", | |
"plot": "An unwed mother survives social stigma while her son grows up to become an Air-Force pilot."}, | |
# ---- 1970s ------------------------------------------------------------ | |
{"title": "Purab Aur Paschim", "year": 1970, "genre": "Patriotic Drama","director": "Manoj Kumar", | |
"plot": "An idealistic Indian visits London and battles cultural cynicism with traditional values."}, | |
{"title": "Johny Mera Naam", "year": 1970, "genre": "Crime Thriller","director": "Vijay Anand", | |
"plot": "Separated brothers collide years later—one a suave con-man, the other a cop on his trail."}, | |
{"title": "Anand", "year": 1971, "genre": "Slice-of-Life","director": "Hrishikesh Mukherjee", | |
"plot": "A terminally-ill but exuberant man teaches his cynical doctor how to celebrate life."}, | |
{"title": "Haathi Mere Saathi", "year": 1971, "genre": "Family Adventure","director": "M. A. Thirumugham", | |
"plot": "Orphan Raju’s circus empire and elephant family face a ruthless hunter and marital rift."}, | |
{"title": "Seeta Aur Geeta", "year": 1972, "genre": "Action Comedy","director": "Ramesh Sippy", | |
"plot": "Separated twins—one timid, one feisty—swap places to defeat oppressive relatives."}, | |
{"title": "Pakeezah", "year": 1972, "genre": "Classic Romance","director": "Kamal Amrohi", | |
"plot": "A courtesan’s dream of respectability kindles when a nobleman admires her henna-stained feet."}, | |
{"title": "Bombay to Goa", "year": 1972, "genre": "Road Comedy", "director": "S. Ramanathan", | |
"plot": "A motley bus ride from Bombay to Goa turns perilous after a witness boards with gangsters on her heels."}, | |
{"title": "Bobby", "year": 1973, "genre": "Teen Romance", "director": "Raj Kapoor", | |
"plot": "Rich boy, poor girl defy class barriers in a coming-of-age love story that redefined youth cinema."}, | |
{"title": "Zanjeer", "year": 1973, "genre": "Action Crime", "director": "Prakash Mehra", | |
"plot": "An angry police inspector hunts a crime baron who ruined his childhood."}, | |
{"title": "Yaadon Ki Baraat", "year": 1973, "genre": "Musical Action","director": "Nasir Hussain", | |
"plot": "Three brothers separated in childhood reunite through a signature family song."}, | |
{"title": "Roti Kapda Aur Makaan","year": 1974, "genre": "Social Drama", "director": "Manoj Kumar", | |
"plot": "An honest man fights poverty, corruption and political betrayal to secure basic needs for loved ones."}, | |
{"title": "Deewar", "year": 1975, "genre": "Crime Drama", "director": "Yash Chopra", | |
"plot": "Brothers on opposite sides of the law clash over morality, mother and money."}, | |
{"title": "Sholay", "year": 1975, "genre": "Action Adventure","director": "Ramesh Sippy", | |
"plot": "Two small-time crooks are hired by a retired cop to capture a ruthless bandit in a lawless village."}, | |
{"title": "Chupke Chupke", "year": 1975, "genre": "Comedy", "director": "Hrishikesh Mukherjee", | |
"plot": "A botany professor pranks his in-laws with an elaborate masquerade as a driver."}, | |
{"title": "Kabhi Kabhie", "year": 1976, "genre": "Romantic Drama","director": "Yash Chopra", | |
"plot": "Unfulfilled lovers meet years later, entangling two generations in poetic nostalgia."}, | |
{"title": "Do Anjaane", "year": 1976, "genre": "Thriller", "director": "Dulal Guha", | |
"plot": "An amnesiac man returns to confront his wife’s betrayal and claim his lost identity."}, | |
{"title": "Amar Akbar Anthony", "year": 1977, "genre": "Action Comedy","director": "Manmohan Desai", | |
"plot": "Three brothers raised in different faiths unite to defeat the crime lord who tore them apart."}, | |
{"title": "Dharam Veer", "year": 1977, "genre": "Fantasy Adventure","director": "Manmohan Desai", | |
"plot": "Royal twins separated at birth grow up as best friends unaware of their lineage."}, | |
{"title": "Hum Kisise Kum Naheen", "year": 1977, "genre": "Musical Romance","director": "Nasir Hussain", | |
"plot": "Suitors clash over a rare diamond and the heart of a wealthy heiress."}, | |
{"title": "Trishul", "year": 1978, "genre": "Revenge Drama","director": "Yash Chopra", | |
"plot": "An illegitimate son builds a business empire to destroy the estranged father who wronged his mother."}, | |
{"title": "Don", "year": 1978, "genre": "Gangster Action","director": "Chandra Barot", | |
"plot": "When dreaded Don is killed, his look-alike infiltrates the cartel to help police."}, | |
{"title": "Muqaddar Ka Sikandar", "year": 1978, "genre": "Melodrama", "director": "Prakash Mehra", | |
"plot": "An orphan rises to wealth yet pines for unrequited love while a courtesan silently adores him."}, | |
{"title": "Satyam Shivam Sundaram","year": 1978, "genre": "Romantic Drama","director": "Raj Kapoor", | |
"plot": "A man obsessed with physical beauty marries a village girl scarred by fire, discovering inner divinity."}, | |
{"title": "Gol Maal", "year": 1979, "genre": "Comedy", "director": "Hrishikesh Mukherjee", | |
"plot": "A young man invents a mustachioed twin to keep a job with his disciplinarian boss."}, | |
{"title": "Kaala Patthar", "year": 1979, "genre": "Disaster Drama","director": "Yash Chopra", | |
"plot": "Coal-mine workers fight greed and nature when flooding threatens hundreds underground."}, | |
{"title": "Suhaag", "year": 1979, "genre": "Action Drama", "director": "Manmohan Desai", | |
"plot": "Brothers raised apart—one cop, one outlaw—discover blood ties while battling a crime ring."}, | |
# ---- 1980s ------------------------------------------------------------ | |
{"title": "Qurbani", "year": 1980, "genre": "Action Thriller","director": "Feroz Khan", | |
"plot": "Two friends fall for the same singer while plotting a high-stakes diamond heist."}, | |
{"title": "Karz", "year": 1980, "genre": "Reincarnation Thriller","director": "Subhash Ghai", | |
"plot": "A pop star recalls a past life and seeks justice from the wife who murdered him."}, | |
{"title": "Kranti", "year": 1981, "genre": "Historical Action","director": "Manoj Kumar", | |
"plot": "Freedom fighters unite diverse Indians against British rule in the 19th century."}, | |
{"title": "Chashme Buddoor", "year": 1981, "genre": "College Comedy","director": "Sai Paranjpye", | |
"plot": "Three Delhi students vie for a girl; prank wars end in unexpected romance."}, | |
{"title": "Naseeb", "year": 1981, "genre": "Masala Drama", "director": "Manmohan Desai", | |
"plot": "A lottery ticket triggers betrayal; years later, sons cross paths in a glamorous hotel."}, | |
{"title": "Laawaris", "year": 1981, "genre": "Melodrama", "director": "Prakash Mehra", | |
"plot": "An illegitimate boy seeks his true parentage, armed only with a torn photograph."}, | |
{"title": "Namak Halaal", "year": 1982, "genre": "Comedy", "director": "Prakash Mehra", | |
"plot": "Village bumpkin Arjun joins a five-star hotel, foiling an assassination with naïve heroism."}, | |
{"title": "Vidhaata", "year": 1982, "genre": "Action Drama", "director": "Subhash Ghai", | |
"plot": "A grandfather turns underworld kingpin to avenge his son, but fears for his grandson’s soul."}, | |
{"title": "Arth", "year": 1982, "genre": "Relationship Drama","director": "Mahesh Bhatt", | |
"plot": "A filmmaker’s wife rebuilds her identity after her husband’s affair with an actress."}, | |
{"title": "Coolie", "year": 1983, "genre": "Action Drama", "director": "Manmohan Desai", | |
"plot": "Railway porters revolt to save their leader’s mother abducted by a wealthy smuggler."}, | |
{"title": "Hero", "year": 1983, "genre": "Romantic Action","director": "Subhash Ghai", | |
"plot": "A goon posing as cop to kidnap a police chief’s daughter falls genuinely in love."}, | |
{"title": "Himmatwala", "year": 1983, "genre": "Masala Action", "director": "K. Raghavendra Rao", | |
"plot": "An engineering graduate returns to his village to avenge his father and woo a feisty heiress."}, | |
{"title": "Ardh Satya", "year": 1983, "genre": "Police Drama", "director": "Govind Nihalani", | |
"plot": "An honest cop wrestles with systemic corruption and his own violent rage."}, | |
{"title": "Mashaal", "year": 1984, "genre": "Crime Drama", "director": "Yash Chopra", | |
"plot": "An idealistic editor becomes a dreaded don to topple the gangster who ruined him."}, | |
{"title": "Saaransh", "year": 1984, "genre": "Social Drama", "director": "Mahesh Bhatt", | |
"plot": "Elderly parents grapple with grief and bureaucracy after their only son dies abroad."}, | |
{"title": "Utsav", "year": 1984, "genre": "Period Rom-Com","director": "Girish Karnad", | |
"plot": "In ancient Ujjain, a courtesan hides from a lustful king while romancing a poor poet."}, | |
{"title": "Ram Teri Ganga Maili", "year": 1985, "genre": "Romantic Drama","director": "Raj Kapoor", | |
"plot": "Innocent Ganga searches for her lover in a corrupt city as the sacred river is defiled."}, | |
{"title": "Arjun", "year": 1985, "genre": "Action Drama", "director": "Rahul Rawail", | |
"plot": "An unemployed youth becomes political pawn while fighting local goons to protect slum dwellers."}, | |
{"title": "Meri Jung", "year": 1985, "genre": "Courtroom Drama","director": "Subhash Ghai", | |
"plot": "A lawyer seeks justice against the ruthless advocate who framed his father."}, | |
{"title": "Karma", "year": 1986, "genre": "Action Patriotic","director": "Subhash Ghai", | |
"plot": "A jailer forms a rogue commando squad of convicts to capture a terror mastermind."}, | |
{"title": "Naam", "year": 1986, "genre": "Crime Drama", "director": "Mahesh Bhatt", | |
"plot": "Two brothers in Dubai choose starkly different paths of smuggling and righteousness."}, | |
{"title": "Nagina", "year": 1986, "genre": "Fantasy Thriller","director": "K. Raghavendra Rao", | |
"plot": "Shape-shifting serpent woman avenges her husband’s murder in rustic Rajasthan."}, | |
{"title": "Janbaaz", "year": 1986, "genre": "Action Romance","director": "Feroz Khan", | |
"plot": "Two brothers—cop and playboy—confront drug mafia after a lover’s overdose."}, | |
{"title": "Mr India", "year": 1987, "genre": "Sci-Fi Adventure","director": "Shekhar Kapur", | |
"plot": "A genial caretaker turns invisible to defeat a megalomaniac threatening orphaned children."}, | |
{"title": "Khoon Bhari Maang", "year": 1988, "genre": "Revenge Thriller","director": "Rakesh Roshan", | |
"plot": "A betrayed wife returns from crocodile jaws with a new face to ruin her greedy husband."}, | |
{"title": "Qayamat Se Qayamat Tak","year": 1988, "genre": "Tragic Romance","director": "Mansoor Khan", | |
"plot": "Star-crossed lovers from feuding families choose death over separation."}, | |
{"title": "Tezaab", "year": 1988, "genre": "Action Drama", "director": "N. Chandra", | |
"plot": "Ex-army man turned criminal fights to save his childhood sweetheart from a lecherous gangster."}, | |
{"title": "Chandni", "year": 1989, "genre": "Romantic Drama","director": "Yash Chopra", | |
"plot": "A woman torn between wheelchair-bound fiancé and charming friend finds her true calling."}, | |
{"title": "Maine Pyar Kiya", "year": 1989, "genre": "Rom-Com", "director": "Sooraj Barjatya", | |
"plot": "Rich boy and mechanic’s daughter swear platonic friendship that blossoms into epic love."}, | |
{"title": "Tridev", "year": 1989, "genre": "Action Masala", "director": "Rajiv Rai", | |
"plot": "A cop, an assassin and a playboy unite to destroy an arms kingpin."}, | |
{"title": "Parinda", "year": 1989, "genre": "Crime Noir", "director": "Vidhu Vinod Chopra", | |
"plot": "Two brothers’ bond shatters when one becomes a don’s henchman, the other joins police."}, | |
{"title": "Ram Lakhan", "year": 1989, "genre": "Action Drama", "director": "Subhash Ghai", | |
"plot": "Brothers—honest cop and flamboyant rogue—avenge parents’ murder while clashing over methods."}, | |
# ---- 1990s (hits & super-hits) --------------------------------------- | |
{"title": "Dil", "year": 1990, "genre": "Campus Rom-Com","director": "Indra Kumar", | |
"plot": "Sparring college rivals from rival families fall hilariously in love."}, | |
{"title": "Ghayal", "year": 1990, "genre": "Action Drama", "director": "Rajkumar Santoshi", | |
"plot": "An amateur boxer seeks vengeance on the tycoon who framed him for murder."}, | |
{"title": "Aashiqui", "year": 1990, "genre": "Musical Romance","director": "Mahesh Bhatt", | |
"plot": "Two lovers brave societal odds; soulful soundtrack became cultural phenomenon."}, | |
{"title": "Agneepath", "year": 1990, "genre": "Gangster Drama","director": "Mukul Anand", | |
"plot": "A wronged boy grows into ruthless don Vijay Dinananath Chauhan to reclaim his mother’s honour."}, | |
{"title": "Saajan", "year": 1991, "genre": "Romantic Drama","director": "Lawrence D’Souza", | |
"plot": "Poet in hiding lets his orphaned friend woo the woman who loves his verses."}, | |
{"title": "Hum", "year": 1991, "genre": "Action Drama", "director": "Mukul Anand", | |
"plot": "Dock-worker Tiger fights drug lord while protecting three younger siblings."}, | |
{"title": "Lamhe", "year": 1991, "genre": "Romantic Drama","director": "Yash Chopra", | |
"plot": "Man falls for a girl who later dies; years later her look-alike daughter loves him."}, | |
{"title": "Jo Jeeta Wohi Sikandar","year": 1992, "genre": "Sports Coming-of-Age","director": "Mansoor Khan", | |
"plot": "Underachiever Sanju trains for inter-collegiate cycle race to salvage pride."}, | |
{"title": "Beta", "year": 1992, "genre": "Family Drama", "director": "Indra Kumar", | |
"plot": "Devoted son’s wife battles scheming step-mother for household supremacy."}, | |
{"title": "Khuda Gawah", "year": 1992, "genre": "Epic Action", "director": "Mukesh Bhatta??","plot": "Afghan warrior Badshah Khan vows lifelong love after a sporting bet leads him to India."}, | |
{"title": "Deewana", "year": 1992, "genre": "Romantic Drama","director": "Raj Kanwar", | |
"plot": "Newly-widowed singer finds love again, unaware her first husband lives."}, | |
{"title": "Raju Ban Gaya Gentleman","year": 1992, "genre": "Rom-Com","director": "Aziz Mirza", | |
"plot": "Idealistic engineer from Darjeeling navigates Mumbai’s ruthless construction world."}, | |
{"title": "Baazigar", "year": 1993, "genre": "Revenge Thriller","director": "Abbas-Mustan", | |
"plot": "A charming psychopath woos two sisters to destroy their crooked tycoon father."}, | |
{"title": "Khalnayak", "year": 1993, "genre": "Action Thriller","director": "Subhash Ghai", | |
"plot": "Daring policeman and girlfriend-officer chase flamboyant outlaw Ballu."}, | |
{"title": "Darr", "year": 1993, "genre": "Psychological Thriller","director": "Yash Chopra", | |
"plot": "Obsessive stalker terrorizes the woman he loves and her naval-officer fiancé."}, | |
{"title": "Hum Hain Rahi Pyar Ke","year": 1993, "genre": "Family Rom-Com","director": "Mahesh Bhatt", | |
"plot": "Guardian of three orphans hires a runaway heiress as nanny; chaos ensues."}, | |
{"title": "Hum Aapke Hain Koun..!", "year": 1994, "genre": "Family Romance","director": "Sooraj Barjatya", | |
"plot": "Two large families celebrate 14 songs of love until tragedy tests duty versus desire."}, | |
{"title": "Mohra", "year": 1994, "genre": "Action Thriller","director": "Rajiv Rai", | |
"plot": "Jailed ex-commando becomes pawn in journalist’s crusade against drug syndicate."}, | |
{"title": "1942: A Love Story", "year": 1994, "genre": "Period Romance","director": "Vidhu Vinod Chopra", | |
"plot": "Lovers from opposing sides of Quit India movement confront betrayal and British might."}, | |
{"title": "Krantiveer", "year": 1994, "genre": "Social Drama", "director": "Mehul Kumar", | |
"plot": "Happy-go-lucky wastrel becomes fiery crusader against communal riots and corruption."}, | |
{"title": "Main Khiladi Tu Anari","year": 1994, "genre": "Buddy Action Comedy","director": "Sameer Malkan", | |
"plot": "Method actor shadows tough cop to prepare for role; both chase deadly gangster."}, | |
{"title": "Dilwale Dulhania Le Jayenge","year": 1995, "genre": "Rom-Com","director": "Aditya Chopra", | |
"plot": "NRIs Raj and Simran fall in Europe; Raj travels to Punjab to win her stern father."}, | |
{"title": "Rangeela", "year": 1995, "genre": "Musical Rom-Com","director": "Ram Gopal Varma", | |
"plot": "Tapori Munnabhai loves aspiring actress Mili, but her film-star co-actor woos her too."}, | |
{"title": "Karan Arjun", "year": 1995, "genre": "Reincarnation Action","director": "Rakesh Roshan", | |
"plot": "Murdered brothers reincarnate to avenge killing and protect their mother."}, | |
{"title": "Coolie No. 1", "year": 1995, "genre": "Comic Capers","director": "David Dhawan", | |
"plot": "A porter poses as tycoon to marry a rich man’s daughter, mayhem follows."}, | |
{"title": "Baazi", "year": 1995, "genre": "Action Thriller","director": "Ashutosh Gowariker", | |
"plot": "Honest cop battles corrupt chief minister unleashing plague on Mumbai."}, | |
{"title": "Ghatak", "year": 1996, "genre": "Action Drama", "director": "Rajkumar Santoshi", | |
"plot": "Kashi fights a tyrant don enslaving Varanasi’s impoverished neighbourhood."}, | |
{"title": "Raja Hindustani", "year": 1996, "genre": "Rom-Drama", "director": "Dharmesh Darshan", | |
"plot": "Small-town cabbie and heiress elope; class divide threatens marriage."}, | |
{"title": "Khamoshi: The Musical","year": 1996, "genre": "Musical Drama","director": "Sanjay Leela Bhansali", | |
"plot": "Hearing daughter of deaf-mute couple struggles between passion for music and filial duty."}, | |
{"title": "Border", "year": 1997, "genre": "War Drama", "director": "J. P. Dutta", | |
"plot": "Outnumbered Indian soldiers hold Longewala post during the 1971 Indo-Pak war."}, | |
{"title": "Pardes", "year": 1997, "genre": "Family Romance","director": "Subhash Ghai", | |
"plot": "NRI businessman’s son and foster-son clash over desi bride engaged in small-town India."}, | |
{"title": "Dil To Pagal Hai", "year": 1997, "genre": "Musical Romance","director": "Yash Chopra", | |
"plot": "Dance troupe’s director discovers his dream girl while his best friend silently loves him."}, | |
{"title": "Ishq", "year": 1997, "genre": "Screwball Comedy","director": "Indra Kumar", | |
"plot": "Rich-poor lovers’ parents scheme to break bonds using mistaken identities and slapstick."}, | |
{"title": "Kuch Kuch Hota Hai", "year": 1998, "genre": "Campus Rom-Com","director": "Karan Johar", | |
"plot": "Eight years after college, a widower’s daughter reunites him with tomboy best friend."}, | |
{"title": "Pyaar To Hona Hi Tha", "year": 1998, "genre": "Rom-Com", "director": "Anees Bazmee", | |
"plot": "Pet-thief helps jilted fiancée win back ex in Paris but falls himself."}, | |
{"title": "Satya", "year": 1998, "genre": "Crime Drama", "director": "Ram Gopal Varma", | |
"plot": "An innocent migrant descends into Mumbai underworld, ruining love and life."}, | |
{"title": "Ghulam", "year": 1998, "genre": "Action Drama", "director": "Vikram Bhatt", | |
"plot": "Street boxer rebels against local don after witnessing brother’s complicity."}, | |
{"title": "Soldier", "year": 1998, "genre": "Revenge Thriller","director": "Abbas-Mustan", | |
"plot": "Undercover officer poses as crook to expose army weapons scandal."}, | |
{"title": "Hum Dil De Chuke Sanam","year": 1999, "genre": "Romantic Drama","director": "Sanjay Leela Bhansali", | |
"plot": "New bride’s husband takes her to Italy to reunite with her true love."}, | |
{"title": "Taal", "year": 1999, "genre": "Musical Romance","director": "Subhash Ghai", | |
"plot": "Village singer’s love with NRI crumbles; she rises as pop diva guided by another suitor."}, | |
{"title": "Biwi No. 1", "year": 1999, "genre": "Comedy", "director": "David Dhawan", | |
"plot": "Neglected wife transforms into glam model to teach philandering husband a lesson."}, | |
{"title": "Hum Saath-Saath Hain", "year": 1999, "genre": "Family Drama", "director": "Sooraj Barjatya", | |
"plot": "Joint-family unity is tested by inheritance politics and scheming relatives."}, | |
{"title": "Sarfarosh", "year": 1999, "genre": "Action Thriller","director": "John Mathew Matthan", | |
"plot": "ACP Ajay fights cross-border arms smuggling aided by a ghazal singer with secrets."}, | |
{"title": "Vaastav", "year": 1999, "genre": "Crime Drama", "director": "Mahesh Manjrekar", | |
"plot": "Young man’s accidental killing thrusts him into the brutal Mumbai underworld."}, | |
{"title": "Dil Se..", "year": 1998, "genre": "Romantic Thriller","director": "Mani Ratnam", | |
"plot": "Radio journalist obsesses over mysterious woman tied to insurgency in Northeast."}, | |
{"title": "Akele Hum Akele Tum", "year": 1995, "genre": "Relationship Drama","director": "Mansoor Khan", | |
"plot": "Estranged artist parents battle for son’s custody while rediscovering love."}, | |
{"title": "Judaai", "year": 1997, "genre": "Family Drama","director": "Raj Kanwar", | |
"plot": "Greedy wife sells her husband to rich girl; regret follows riches."}, | |
{"title": "Virasat", "year": 1997, "genre": "Rural Drama", "director": "Priyadarshan", | |
"plot": "Foreign-educated heir returns to feuding village, inherits mantle of benevolent chief."}, | |
{"title": "Pyaar Kiya To Darna Kya","year": 1998,"genre": "Rom-Com","director": "Sohail Khan", | |
"plot": "Rowdy college boy seeks farm-girl’s brother’s approval, battling bullies and buffalos."}, | |
# ---- 2000 – 2009 (60 titles) ----------------------------------------- | |
{"title": "Kaho Naa... Pyaar Hai", "year": 2000, "genre": "Musical Rom-Thriller","director": "Rakesh Roshan", | |
"plot": "After her lover is killed, a woman meets his look-alike and uncovers a conspiracy."}, | |
{"title": "Mohabbatein", "year": 2000, "genre": "Musical Drama","director": "Aditya Chopra", | |
"plot": "A violinist confronts authoritarian principal over three blossoming campus romances."}, | |
{"title": "Dhadkan", "year": 2000, "genre": "Romantic Drama","director": "Dharmesh Darshan", | |
"plot": "Arranged-marriage bride’s ex-lover returns, now millionaire, intent on winning her back."}, | |
{"title": "Hera Pheri", "year": 2000, "genre": "Situational Comedy","director": "Priyadarshan", | |
"plot": "Broke tenants and landlord kidnap wrong girl in bid to repay debts."}, | |
{"title": "Lagaan", "year": 2001, "genre": "Sports Epic", "director": "Ashutosh Gowariker", | |
"plot": "Villagers challenge British officers to cricket match to abolish unjust tax."}, | |
{"title": "Dil Chahta Hai", "year": 2001, "genre": "Buddy Drama", "director": "Farhan Akhtar", | |
"plot": "Three privileged friends mature through love, heartbreak and art from Goa to Sydney."}, | |
{"title": "Gadar: Ek Prem Katha", "year": 2001, "genre": "Partition Action Romance","director": "Anil Sharma", | |
"plot": "Sikh trucker crosses borders during 1947 carnage to rescue his Muslim wife."}, | |
{"title": "Kabhi Khushi Kabhie Gham","year": 2001, "genre": "Family Drama","director": "Karan Johar", | |
"plot": "Adopted son marries poor girl, is disowned; younger brother reunites estranged family."}, | |
{"title": "Chandni Bar", "year": 2001, "genre": "Social Drama", "director": "Madhur Bhandarkar", | |
"plot": "Bar dancer’s struggle for dignity traps her children in Mumbai’s underbelly."}, | |
{"title": "Devdas", "year": 2002, "genre": "Epic Romance", "director": "Sanjay Leela Bhansali", | |
"plot": "Alcoholic aristocrat pines for childhood love, finds solace with courtesan."}, | |
{"title": "Raaz", "year": 2002, "genre": "Horror Thriller","director": "Vikram Bhatt", | |
"plot": "Crisis-hit couple visits Ooty; wife haunted by spirit linked to husband’s affair."}, | |
{"title": "Humraaz", "year": 2002, "genre": "Musical Thriller","director": "Abbas-Mustan", | |
"plot": "Stage partners plot to swindle tycoon via marriage but love derails plan."}, | |
{"title": "Kaante", "year": 2002, "genre": "Heist Action", "director": "Sanjay Gupta", | |
"plot": "Six NRIs rob LA bank but suspect a mole during bloody standoff."}, | |
{"title": "Saathiya", "year": 2002, "genre": "Urban Romance","director": "Shaad Ali", | |
"plot": "Young lovers elope; mundane married life brings ego clashes and accident."}, | |
{"title": "Kal Ho Naa Ho", "year": 2003, "genre": "Rom-Drama", "director": "Nikkhil Advani", | |
"plot": "Terminally-ill Aman teaches pessimistic Naina to love, pairing her with friend Rohit."}, | |
{"title": "Koi... Mil Gaya", "year": 2003, "genre": "Sci-Fi Drama","director": "Rakesh Roshan", | |
"plot": "Mentally-disabled man befriends stranded alien; gains super-human abilities."}, | |
{"title": "Tere Naam", "year": 2003, "genre": "Tragic Romance","director": "Satish Kaushik", | |
"plot": "Rowdy lover’s head injury leads to insanity, dooming his pure romance."}, | |
{"title": "Munna Bhai M.B.B.S.", "year": 2003, "genre": "Comedy Drama","director": "Rajkumar Hirani", | |
"plot": "Lovable goon fakes medical degree, heals hospital with ‘jadoo ki jhappi’."}, | |
{"title": "Baghban", "year": 2003, "genre": "Family Drama", "director": "Ravi Chopra", | |
"plot": "Elderly couple separated by selfish sons find refuge with adopted boy."}, | |
{"title": "LOC Kargil", "year": 2003, "genre": "War Epic", "director": "J. P. Dutta", | |
"plot": "Multi-star chronicle of Indian Army’s 1999 Kargil mountain battles."}, | |
{"title": "Veer-Zaara", "year": 2004, "genre": "Cross-Border Romance","director": "Yash Chopra", | |
"plot": "Indian pilot imprisoned in Pakistan re-unites with lover after 22 years."}, | |
{"title": "Swades", "year": 2004, "genre": "Drama", "director": "Ashutosh Gowariker", | |
"plot": "NASA engineer returns home, electrifies village, rediscovers rooted identity."}, | |
{"title": "Dhoom", "year": 2004, "genre": "Action Heist","director": "Sanjay Gadhvi", | |
"plot": "Mumbai cop teams up with racer to nab a biker gang of thieves."}, | |
{"title": "Main Hoon Na", "year": 2004, "genre": "Action Comedy","director": "Farah Khan", | |
"plot": "Army major goes undercover in college to protect general’s daughter from militant."}, | |
{"title": "Hum Tum", "year": 2004, "genre": "Rom-Com", "director": "Kunal Kohli", | |
"plot": "Cartoonist and spirited woman meet over a decade, falling in love late."}, | |
{"title": "Mujhse Shaadi Karogi","year": 2004, "genre": "Rom-Com", "director": "David Dhawan", | |
"plot": "Short-tempered man’s room-mate sabotages his romance with neighbour."}, | |
{"title": "Lakshya", "year": 2004, "genre": "War Drama", "director": "Farhan Akhtar", | |
"plot": "Aimless youth becomes Kargil war hero scaling impossible cliff."}, | |
{"title": "Black", "year": 2005, "genre": "Inspirational Drama","director": "Sanjay Leela Bhansali", | |
"plot": "Blind-deaf girl’s turbulent bond with eccentric teacher unlocks sightless horizons."}, | |
{"title": "Bunty Aur Babli", "year": 2005, "genre": "Con-Comedy", "director": "Shaad Ali", | |
"plot": "Small-town dreamers become Bonnie-and-Clyde scammers tailed by weary cop."}, | |
{"title": "Parineeta", "year": 2005, "genre": "Period Romance","director": "Pradeep Sarkar", | |
"plot": "Childhood sweethearts battle class prejudice in 1960s Calcutta."}, | |
{"title": "No Entry", "year": 2005, "genre": "Adult Comedy", "director": "Anees Bazmee", | |
"plot": "Philandering husbands, suspicious wives and a call-girl cause door-slamming confusion."}, | |
{"title": "Salaam Namaste", "year": 2005, "genre": "Rom-Com", "director": "Siddharth Anand", | |
"plot": "Live-in couple in Melbourne navigate career, commitment and unplanned pregnancy."}, | |
{"title": "Rang De Basanti", "year": 2006, "genre": "Youth Drama", "director": "Rakyesh Omprakash Mehra", | |
"plot": "Delhi slackers portray freedom fighters, awaken to fight corruption after friend’s death."}, | |
{"title": "Krrish", "year": 2006, "genre": "Superhero", "director": "Rakesh Roshan", | |
"plot": "Gifted youngster dons mask to thwart evil scientist reviving alien tech."}, | |
{"title": "Fanaa", "year": 2006, "genre": "Romantic Thriller","director": "Kunal Kohli", | |
"plot": "Blind Kashmiri tourist loves Delhi guide who’s actually a terrorist."}, | |
{"title": "Kabhi Alvida Naa Kehna","year": 2006,"genre": "Relationship Drama","director": "Karan Johar", | |
"plot": "Two unhappy spouses confront taboo love and choices in NYC."}, | |
{"title": "Lage Raho Munna Bhai", "year": 2006, "genre": "Comedy Drama","director": "Rajkumar Hirani", | |
"plot": "Lovable don adopts Gandhi’s ideals to woo radio jockey and reform society."}, | |
{"title": "Dhoom 2", "year": 2006, "genre": "Action Heist","director": "Sanjay Gadhvi", | |
"plot": "Charismatic thief ‘A’ raids global treasures; cat-and-mouse with cool cop."}, | |
{"title": "Om Shanti Om", "year": 2007, "genre": "Reincarnation Masala","director": "Farah Khan", | |
"plot": "Junior artist reborn as superstar avenges actress burned alive by producer."}, | |
{"title": "Chak De! India", "year": 2007, "genre": "Sports Drama","director": "Shimit Amin", | |
"plot": "Disgraced hockey captain coaches Indian women’s team to World Cup glory."}, | |
{"title": "Taare Zameen Par", "year": 2007, "genre": "Inspirational Drama","director": "Aamir Khan", | |
"plot": "Dyslexic boy’s art teacher reveals hidden brilliance to skeptical parents."}, | |
{"title": "Jab We Met", "year": 2007, "genre": "Rom-Com", "director": "Imtiaz Ali", | |
"plot": "Depressed tycoon meets talkative Sikh girl; accidental journey transforms both."}, | |
{"title": "Bhool Bhulaiyaa", "year": 2007, "genre": "Horror-Comedy","director": "Priyadarshan", | |
"plot": "Psychiatrist investigates palace hauntings linked to dissociative identity."}, | |
{"title": "Partner", "year": 2007, "genre": "Rom-Com", "director": "David Dhawan", | |
"plot": "Love guru helps awkward man woo boss while bungling his own romance."}, | |
{"title": "Jodhaa Akbar", "year": 2008, "genre": "Historical Epic","director": "Ashutosh Gowariker", | |
"plot": "Political marriage between Mughal emperor Akbar and Rajput princess blooms into love."}, | |
{"title": "Ghajini", "year": 2008, "genre": "Action Thriller","director": "A. R. Murugadoss", | |
"plot": "Tycoon with 15-minute memory hunts gang lord who murdered his fiancée."}, | |
{"title": "Rock On!!", "year": 2008, "genre": "Musical Drama","director": "Abhishek Kapoor", | |
"plot": "Estranged college band reunites years later to reclaim lost dreams."}, | |
{"title": "Dostana", "year": 2008, "genre": "Rom-Com", "director": "Tarun Mansukhani", | |
"plot": "Two men pretend to be gay roommates to rent Miami flat; both love landlady."}, | |
{"title": "Rab Ne Bana Di Jodi", "year": 2008, "genre": "Rom-Com", "director": "Aditya Chopra", | |
"plot": "Shy husband dons funky alter-ego to win vivacious wife in dance contest."}, | |
{"title": "Fashion", "year": 2008, "genre": "Drama", "director": "Madhur Bhandarkar", | |
"plot": "Small-town girl’s meteoric modeling rise and devastating fall in glamour world."}, | |
{"title": "Singh Is Kinng", "year": 2008, "genre": "Action Comedy","director": "Anees Bazmee", | |
"plot": "Bumbling Punjabi becomes Australia’s gangster king and spreads goodness."}, | |
{"title": "3 Idiots", "year": 2009, "genre": "Coming-of-Age Comedy","director": "Rajkumar Hirani", | |
"plot": "Engineering roommates rebel against rote system, search for maverick friend ‘Rancho’."}, | |
{"title": "Love Aaj Kal", "year": 2009, "genre": "Rom-Drama", "director": "Imtiaz Ali", | |
"plot": "Modern couple dissect love via flashbacks to 1970s Sikh romance."}, | |
{"title": "Wanted", "year": 2009, "genre": "Action", "director": "Prabhu Deva", | |
"plot": "Gritty hit-man Inspector Radhe infiltrates city gang to eliminate crime lord."}, | |
{"title": "Kaminey", "year": 2009, "genre": "Crime Thriller","director": "Vishal Bhardwaj", | |
"plot": "Twin brothers—one lisps, one stammers—tangle with cops, dons and a guitar case of cocaine."}, | |
{"title": "Dev.D", "year": 2009, "genre": "Experimental Drama","director": "Anurag Kashyap", | |
"plot": "Modern ‘Devdas’ spirals into drugs and neon brothels after heartbreak."}, | |
{"title": "Ajab Prem Ki Ghazab Kahani","year": 2009,"genre": "Rom-Com","director": "Rajkumar Santoshi", | |
"plot": "Happy-go-lucky boy helps stammering girl unite with true love but wins her heart instead."}, | |
{"title": "Paa", "year": 2009, "genre": "Emotional Drama","director": "R. Balki", | |
"plot": "12-year-old with progeria bonds with estranged politician father."}, | |
{"title": "Race", "year": 2008, "genre": "Stylish Thriller","director": "Abbas-Mustan", | |
"plot": "Plot twists galore as step-brothers plot double-crosses over insurance fortune."}, | |
{"title": "Wake Up Sid", "year": 2009, "genre": "Coming-of-Age", "director": "Ayan Mukerji", | |
"plot": "Spoiled Mumbai boy mentors under indie writer, discovers passion for photography."}, | |
# ---- 2010 – 2019 (70 titles) ----------------------------------------- | |
{"title": "Dabangg", "year": 2010, "genre": "Action Masala","director": "Abhinav Kashyap", | |
"plot": "Fearless cop Chulbul Pandey battles corrupt politician and half-brother."}, | |
{"title": "My Name Is Khan", "year": 2010, "genre": "Drama", "director": "Karan Johar", | |
"plot": "Autistic Muslim man crosses post-9/11 America to tell President he is not a terrorist."}, | |
{"title": "Raajneeti", "year": 2010, "genre": "Political Drama","director": "Prakash Jha", | |
"plot": "Modern Mahabharata in electoral battlefield of a powerful dynasty."}, | |
{"title": "Housefull", "year": 2010, "genre": "Ensemble Comedy","director": "Sajid Khan", | |
"plot": "Unlucky-in-love man fakes marriage, triggering a domino of mistaken identities."}, | |
{"title": "Band Baaja Baaraat", "year": 2010, "genre": "Rom-Com", "director": "Maneesh Sharma", | |
"plot": "Street-smart Delhiites start wedding-planning biz, fall in love amid marigolds."}, | |
{"title": "Zindagi Na Milegi Dobara","year": 2011,"genre": "Buddy Road Film","director": "Zoya Akhtar", | |
"plot": "Three friends confront fears on a bachelor trip across scenic Spain."}, | |
{"title": "Bodyguard", "year": 2011, "genre": "Action Romance","director": "Siddique", | |
"plot": "Loyal bodyguard unknowingly romances boss’s daughter over secret calls."}, | |
{"title": "Singham", "year": 2011, "genre": "Action", "director": "Rohit Shetty", | |
"plot": "Straight-arrow village cop takes on swaggering Goa don-politician nexus."}, | |
{"title": "Rockstar", "year": 2011, "genre": "Musical Drama","director": "Imtiaz Ali", | |
"plot": "Heartbreak propels shy guitarist into self-destructive stardom."}, | |
{"title": "Delhi Belly", "year": 2011, "genre": "Black Comedy","director": "Abhinay Deo", | |
"plot": "Journalist roommates dodge gangsters after mis-delivered smuggled diamonds and food poisoning."}, | |
{"title": "Agneepath", "year": 2012, "genre": "Action Drama","director": "Karan Malhotra", | |
"plot": "Vijay Chauhan destroys sadistic Kancha controlling Mandwa island."}, | |
{"title": "Barfi!", "year": 2012, "genre": "Rom-Com Drama","director": "Anurag Basu", | |
"plot": "Deaf-mute boy, autistic girl and journalist weave bittersweet love triangle in 1970s Darjeeling."}, | |
{"title": "Ek Tha Tiger", "year": 2012, "genre": "Spy Action", "director": "Kabir Khan", | |
"plot": "RAW agent Tiger falls for ISI rival during Irish assignment."}, | |
{"title": "Kahaani", "year": 2012, "genre": "Thriller", "director": "Sujoy Ghosh", | |
"plot": "Pregnant woman hunts missing husband in Kolkata; nothing is as it seems."}, | |
{"title": "Student of the Year", "year": 2012, "genre": "Campus Rom-Com","director": "Karan Johar", | |
"plot": "Three rich students compete for love and coveted trophy."}, | |
{"title": "Gangs of Wasseypur", "year": 2012, "genre": "Crime Saga", "director": "Anurag Kashyap", | |
"plot": "70-year revenge between coal mafia families in Bihar’s badlands."}, | |
{"title": "Chennai Express", "year": 2013, "genre": "Action Comedy","director": "Rohit Shetty", | |
"plot": "Man’s Goa plan derails when he helps runaway south-Indian bride on train."}, | |
{"title": "Dhoom 3", "year": 2013, "genre": "Heist Thriller","director": "Vijay Krishna Acharya", | |
"plot": "Illusionist twins rob Chicago bank to avenge father; biker cops pursue."}, | |
{"title": "Bhaag Milkha Bhaag", "year": 2013, "genre": "Biopic Sports","director": "Rakyesh O. Mehra", | |
"plot": "Trauma-scarred refugee becomes India’s flying Sikh sprinter Milkha Singh."}, | |
{"title": "Yeh Jawaani Hai Deewani","year": 2013,"genre": "Rom-Com","director": "Ayan Mukerji", | |
"plot": "Free-spirited backpacker reunites with studious classmate on Himalayan trek."}, | |
{"title": "Kai Po Che!", "year": 2013, "genre": "Coming-of-Age","director": "Abhishek Kapoor", | |
"plot": "Three friends open cricket academy; Gujarat riots alter destinies."}, | |
{"title": "Aashiqui 2", "year": 2013, "genre": "Musical Romance","director": "Mohit Suri", | |
"plot": "Fading rockstar mentors bar singer who eclipses his stardom while he spirals."}, | |
{"title": "PK", "year": 2014, "genre": "Satire Drama","director": "Rajkumar Hirani", | |
"plot": "Alien questions religious dogma while searching for remote to contact spaceship."}, | |
{"title": "Queen", "year": 2014, "genre": "Comedy Drama","director": "Vikas Bahl", | |
"plot": "Dumped bride embarks on solo Europe honeymoon, discovering independence."}, | |
{"title": "Kick", "year": 2014, "genre": "Action Masala","director": "Sajid Nadiadwala", | |
"plot": "Thrill-seeker Devil robs corrupt tycoons to fund sick children’s surgeries."}, | |
{"title": "Haider", "year": 2014, "genre": "Political Drama","director": "Vishal Bhardwaj", | |
"plot": "Kashmiri student returns to find father missing, mother with uncle; Hamlet ensues."}, | |
{"title": "Highway", "year": 2014, "genre": "Road Drama", "director": "Imtiaz Ali", | |
"plot": "Kidnapped heiress finds freedom on rustic journey with abductors."}, | |
{"title": "2 States", "year": 2014, "genre": "Rom-Com", "director": "Abhishek Varman", | |
"plot": "Punjabi boy, Tamil girl battle cross-cultural parents for marriage approval."}, | |
{"title": "Baahubali: The Beginning (Hindi)","year": 2015,"genre": "Mythic Action","director": "S. S. Rajamouli", | |
"plot": "Raised by villagers, Shivudu discovers royal lineage and vows to rescue captive queen."}, | |
{"title": "Bajrangi Bhaijaan", "year": 2015, "genre": "Adventure Drama","director": "Kabir Khan", | |
"plot": "Devout Indian escorts mute Pakistani girl home through perilous borders."}, | |
{"title": "Tanu Weds Manu Returns","year": 2015,"genre": "Rom-Com","director": "Aanand L. Rai", | |
"plot": "Estranged couple’s divorce detours when husband meets wife’s spunky doppelgänger."}, | |
{"title": "Dil Dhadakne Do", "year": 2015, "genre": "Ensemble Dramedy","director": "Zoya Akhtar", | |
"plot": "Dysfunctional rich family’s cruise exposes marital and business cracks."}, | |
{"title": "Piku", "year": 2015, "genre": "Slice-of-Life","director": "Shoojit Sircar", | |
"plot": "Road-trip with constipated father deepens bond with stressed architect daughter."}, | |
{"title": "Airlift", "year": 2016, "genre": "Historical Thriller","director": "Raja Menon", | |
"plot": "Kuwait-based Indian tycoon leads world’s largest civilian evacuation during 1990 invasion."}, | |
{"title": "Dangal", "year": 2016, "genre": "Sports Biopic","director": "Nitesh Tiwari", | |
"plot": "Wrestler trains daughters to win India’s first female world wrestling gold."}, | |
{"title": "Sultan", "year": 2016, "genre": "Sports Drama","director": "Ali Abbas Zafar", | |
"plot": "Washed-up wrestler stages MMA comeback and redeems love life."}, | |
{"title": "Udta Punjab", "year": 2016, "genre": "Crime Drama", "director": "Abhishek Chaubey", | |
"plot": "Drug epidemic intertwines rockstar, migrant, cop and doctor in Punjab."}, | |
{"title": "Neerja", "year": 2016, "genre": "Biopic Thriller","director": "Ram Madhvani", | |
"plot": "23-year-old flight purser sacrifices life saving passengers from hijackers."}, | |
{"title": "M.S. Dhoni: The Untold Story","year": 2016,"genre": "Sports Biopic","director": "Neeraj Pandey", | |
"plot": "Ticket collector’s rise to World-Cup-winning Indian cricket captain."}, | |
{"title": "Ae Dil Hai Mushkil", "year": 2016, "genre": "Romantic Drama","director": "Karan Johar", | |
"plot": "Unrequited love, heartbreak and friendship across London, Paris and Vienna."}, | |
{"title": "Baahubali 2: The Conclusion (Hindi)", "year": 2017, "genre": "Mythic Action", "director": "S. S. Rajamouli", | |
"plot": "Son of slain prince returns to overthrow cruel cousin and reunite kingdom."}, | |
{"title": "Tiger Zinda Hai", "year": 2017, "genre": "Spy Action", "director": "Ali Abbas Zafar", | |
"plot": "RAW agent Tiger and ISI wife rescue nurses from Iraqi terrorist."}, | |
{"title": "Hindi Medium", "year": 2017, "genre": "Social Satire","director": "Saket Chaudhary", | |
"plot": "Chandni Chowk couple pretends poverty to secure daughter’s elite school admission."}, | |
{"title": "Secret Superstar", "year": 2017, "genre": "Musical Drama","director": "Advait Chandan", | |
"plot": "Burqa-clad YouTuber defies abusive father to pursue singing dream."}, | |
{"title": "Toilet: Ek Prem Katha","year": 2017, "genre": "Social Comedy","director": "Shree Narayan Singh", | |
"plot": "New bride leaves rural home lacking toilet; husband fights tradition to build one."}, | |
{"title": "Raees", "year": 2017, "genre": "Crime Drama", "director": "Rahul Dholakia", | |
"plot": "Bootlegger in 1980s Gujarat clashes with righteous cop."}, | |
{"title": "Padmaavat", "year": 2018, "genre": "Historical Epic","director": "Sanjay Leela Bhansali", | |
"plot": "Alauddin Khilji obsesses over Rajput queen leading to fiery jauhar."}, | |
{"title": "Sanju", "year": 2018, "genre": "Biopic Drama","director": "Rajkumar Hirani", | |
"plot": "Roller-coaster life of controversial actor Sanjay Dutt."}, | |
{"title": "Andhadhun", "year": 2018, "genre": "Black Comedy Thriller","director": "Sriram Raghavan", | |
"plot": "Blind pianist (or is he?) trapped in murder plot of aging star."}, | |
{"title": "Badhaai Ho", "year": 2018, "genre": "Comedy Drama","director": "Amit Ravindernath Sharma", | |
"plot": "Middle-aged mother’s unexpected pregnancy embarrasses grown sons and nosy neighbours."}, | |
{"title": "Stree", "year": 2018, "genre": "Horror-Comedy","director": "Amar Kaushik", | |
"plot": "Male-abducting witch haunts small town; tailor and pals investigate."}, | |
{"title": "Raazi", "year": 2018, "genre": "Spy Thriller","director": "Meghna Gulzar", | |
"plot": "Kashmiri girl marries Pakistani officer as Indian undercover agent in 1971."}, | |
{"title": "Sonu Ke Titu Ki Sweety","year": 2018,"genre": "Bromance Comedy","director": "Luv Ranjan", | |
"plot": "Serial dater’s fiancée locks horns with his possessive best friend."}, | |
{"title": "Simmba", "year": 2018, "genre": "Action Masala","director": "Rohit Shetty", | |
"plot": "Corrupt cop reforms after sister-figure’s assault; wreaks vengeance on rapists."}, | |
{"title": "Uri: The Surgical Strike","year": 2019,"genre": "War Action","director": "Aditya Dhar", | |
"plot": "Indian commandos execute covert retaliation inside PoK after 2016 terror attack."}, | |
{"title": "Gully Boy", "year": 2019, "genre": "Hip-Hop Drama","director": "Zoya Akhtar", | |
"plot": "Slum youth channels angst into rap, rises from Dharavi to world stage."}, | |
{"title": "Kabir Singh", "year": 2019, "genre": "Romantic Drama","director": "Sandeep Reddy Vanga", | |
"plot": "Brilliant surgeon’s self-destruction after lover’s arranged marriage."}, | |
{"title": "War", "year": 2019, "genre": "Action Thriller","director": "Siddharth Anand", | |
"plot": "Rogue agent Kabir challenges protégé in globe-trotting stunt spectacle."}, | |
{"title": "Article 15", "year": 2019, "genre": "Social Thriller","director": "Anubhav Sinha", | |
"plot": "IPS officer confronts caste atrocities while investigating missing Dalit girls."}, | |
{"title": "Dream Girl", "year": 2019, "genre": "Comedy", "director": "Raaj Shaandilyaa", | |
"plot": "Man with female voice impersonation becomes crisis-hotline star, chaos follows."}, | |
{"title": "Bala", "year": 2019, "genre": "Comedy Drama","director": "Amar Kaushik", | |
"plot": "Young man’s premature balding tests vanity and relationships."}, | |
{"title": "Chhichhore", "year": 2019, "genre": "Comedy Drama","director": "Nitesh Tiwari", | |
"plot": "Middle-aged friends recall hostel misadventures to heal suicidal son."}, | |
{"title": "Good Newwz", "year": 2019, "genre": "Comedy", "director": "Raj Mehta", | |
"plot": "Sperm-mix-up at IVF clinic swaps two very different couples’ pregnancies."}, | |
{"title": "Housefull 2", "year": 2012, "genre": "Slapstick Comedy","director": "Sajid Khan", | |
"plot": "Con-men pose as billionaires; four brides, four grooms, double chaos."}, | |
{"title": "Total Dhamaal", "year": 2019, "genre": "Adventure Comedy","director": "Indra Kumar", | |
"plot": "Eccentric groups race across country to grab hidden 50-crore loot."}, | |
{"title": "Kedarnath", "year": 2018, "genre": "Romantic Drama","director": "Abhishek Kapoor", | |
"plot": "Muslim porter and Hindu pilgrim’s love tested by 2013 Uttarakhand floods."}, | |
{"title": "Judwaa 2", "year": 2017, "genre": "Action Comedy","director": "David Dhawan", | |
"plot": "Separated twins reunite to defeat smuggling kingpin, woo girlfriends."}, | |
{"title": "Bharat", "year": 2019, "genre": "Epic Drama", "director": "Ali Abbas Zafar", | |
"plot": "Everyman’s 70-year journey mirrors India’s post-Partition history."}, | |
{"title": "Luka Chuppi", "year": 2019, "genre": "Rom-Com", "director": "Laxman Utekar", | |
"plot": "Live-in couple hide relationship from conservative families in Mathura."}, | |
{"title": "Baaghi 2", "year": 2018, "genre": "Action", "director": "Ahmed Khan", | |
"plot": "Army officer rescues ex-lover’s kidnapped child, unearthing trafficking ring."}, | |
# ---- 2020 – 2025 (51 titles) ----------------------------------------- | |
{"title": "Tanhaji: The Unsung Warrior","year": 2020,"genre": "Historical Action","director": "Om Raut", | |
"plot": "Maratha warrior Tanaji storms Kondhana fort from Mughals in 17th century."}, | |
{"title": "Baaghi 3", "year": 2020, "genre": "Action", "director": "Ahmed Khan", | |
"plot": "Fearless Ronnie wreaks havoc in Syria to rescue kidnapped brother."}, | |
{"title": "Malang", "year": 2020, "genre": "Action Thriller","director": "Mohit Suri", | |
"plot": "Drug-fuelled beach romance turns into vengeful night of killings."}, | |
{"title": "Shubh Mangal Zyada Saavdhan","year": 2020,"genre": "Gay Rom-Com","director": "Hitesh Kewalya", | |
"plot": "Gay couple fight family prejudice in small-town wedding chaos."}, | |
{"title": "Dil Bechara", "year": 2020, "genre": "Rom-Drama", "director": "Mukesh Chhabra", | |
"plot": "Terminal teens in Jamshedpur live big love inspired by ‘TFIOS’."}, | |
{"title": "Ludo", "year": 2020, "genre": "Dark Comedy Anthology","director": "Anurag Basu", | |
"plot": "Four intersecting tales of crime, fate and board-game chance."}, | |
{"title": "Sooryavanshi", "year": 2021, "genre": "Action", "director": "Rohit Shetty", | |
"plot": "ATS chief thwarts massive sleeper-cell terror attack in Mumbai."}, | |
{"title": "Shershaah", "year": 2021, "genre": "War Biopic", "director": "Vishnuvardhan", | |
"plot": "Captain Vikram Batra’s heroic sacrifice in 1999 Kargil war."}, | |
{"title": "Mimi", "year": 2021, "genre": "Drama Comedy","director": "Laxman Utekar", | |
"plot": "Small-town dancer becomes surrogate for US couple; raises baby alone."}, | |
{"title": "Chandigarh Kare Aashiqui","year": 2021,"genre": "Rom-Drama","director": "Abhishek Kapoor", | |
"plot": "Bodybuilder loves Zumba instructor, struggles after learning she’s trans woman."}, | |
{"title": "83", "year": 2021, "genre": "Sports Drama","director": "Kabir Khan", | |
"plot": "India’s underdog cricket team lifts 1983 World Cup at Lord’s."}, | |
{"title": "Bell Bottom", "year": 2021, "genre": "Spy Thriller","director": "Ranjit Tewari", | |
"plot": "RAW officer leads covert mission to rescue hijacked plane in Dubai."}, | |
{"title": "Gangubai Kathiawadi", "year": 2022, "genre": "Biopic Drama","director": "Sanjay Leela Bhansali", | |
"plot": "Teen girl sold to brothel becomes powerful champion of sex-workers."}, | |
{"title": "RRR (Hindi)", "year": 2022, "genre": "Mythic Action","director": "S. S. Rajamouli", | |
"plot": "Fictionalised Telugu freedom fighters unite against British Raj."}, | |
{"title": "Brahmāstra Part One: Shiva","year": 2022,"genre": "Fantasy Adventure","director": "Ayan Mukerji", | |
"plot": "DJ with fire astrā powers protects universe-splitting Brahmāstra fragment."}, | |
{"title": "Drishyam 2", "year": 2022, "genre": "Crime Thriller","director": "Abhishek Pathak", | |
"plot": "Goa family’s perfect cover-up faces reopened police investigation seven years later."}, | |
{"title": "Bhool Bhulaiyaa 2", "year": 2022, "genre": "Horror-Comedy","director": "Anees Bazmee", | |
"plot": "Con-man kid reawakens vengeful spirit Manjulika in ancestral haveli."}, | |
{"title": "The Kashmir Files", "year": 2022, "genre": "Historical Drama","director": "Vivek Agnihotri", | |
"plot": "Exposes exodus of Kashmiri Pandits through survivor professor and inquisitive student."}, | |
{"title": "Kantara (Hindi)", "year": 2022, "genre": "Folklore Action","director": "Rishab Shetty", | |
"plot": "Village guardian clashes with forest department over sacred land and deities."}, | |
{"title": "Pathaan", "year": 2023, "genre": "Spy Action", "director": "Siddharth Anand", | |
"plot": "Exiled agent Pathaan thwarts bioweapon attack by rogue RAW officer."}, | |
{"title": "Jawan", "year": 2023, "genre": "Vigilante Action","director": "Atlee", | |
"plot": "Masked crusader hijacks metro; mission ties to vendetta against corrupt politician."}, | |
{"title": "Gadar 2", "year": 2023, "genre": "War Drama", "director": "Anil Sharma", | |
"plot": "Truck driver Tara Singh enters 1971 Pakistan to rescue captured son."}, | |
{"title": "Animal", "year": 2023, "genre": "Gangster Saga","director": "Sandeep Reddy Vanga", | |
"plot": "Violent son’s obsession with distant father drives bloody underworld ascent."}, | |
{"title": "Rocky Aur Rani Kii Prem Kahaani","year": 2023,"genre": "Rom-Com","director": "Karan Johar", | |
"plot": "Culture-clash lovers swap families for three months to prove compatibility."}, | |
{"title": "OMG 2", "year": 2023, "genre": "Social Satire","director": "Amit Rai", | |
"plot": "Messenger of Shiva guides teen in masturbation scandal and court crusade for sex-ed."}, | |
{"title": "12th Fail", "year": 2023, "genre": "Biopic Drama","director": "Vidhu Vinod Chopra", | |
"plot": "Village boy who failed class XII cracks India’s toughest UPSC exam."}, | |
{"title": "Tu Jhoothi Main Makkaar","year": 2023,"genre": "Rom-Com","director": "Luv Ranjan", | |
"plot": "Break-up artist falls for commitment-phobic girl; families complicate split."}, | |
{"title": "Zara Hatke Zara Bachke","year": 2023,"genre": "Family Rom-Com","director": "Laxman Utekar", | |
"plot": "Small-town couple fake divorce to qualify for government housing quota."}, | |
{"title": "The Kerala Story", "year": 2023, "genre": "Drama Thriller","director": "Sudipto Sen", | |
"plot": "Woman recounts radicalisation and trafficking of Kerala girls to ISIS."}, | |
{"title": "Fukrey 3", "year": 2023, "genre": "Comedy Caper","director": "Mrighdeep Lamba", | |
"plot": "Delhi slackers battle corrupt politician via water-theft scheme."}, | |
{"title": "Satyaprem Ki Katha", "year": 2023, "genre": "Rom-Drama", "director": "Sameer Vidwans", | |
"plot": "Small-town dreamer marries survivor of assault; healing love blossoms."}, | |
{"title": "Dream Girl 2", "year": 2023, "genre": "Comedy", "director": "Raaj Shaandilyaa", | |
"plot": "Karam’s female call-voice alters life again when debts force bigger charade."}, | |
{"title": "Tiger 3", "year": 2023, "genre": "Spy Action", "director": "Maneesh Sharma", | |
"plot": "Aging agents Tiger & Zoya race against ex-RAW chief’s conspiracy."}, | |
{"title": "Fighter", "year": 2024, "genre": "Aerial Action","director": "Siddharth Anand", | |
"plot": "Elite Indian Air-Force unit counters cross-border terror in high-octane dogfights."}, | |
{"title": "Dunki", "year": 2024, "genre": "Dramedy", "director": "Rajkumar Hirani", | |
"plot": "Illegal immigrations via ‘donkey route’ explored with humour and heart."}, | |
{"title": "Article 370", "year": 2024, "genre": "Political Thriller","director": "Aditya Suhas Jambhale", | |
"plot": "Agent involved in covert manoeuvres behind abrogation of Kashmir’s special status."}, | |
{"title": "Crew", "year": 2024, "genre": "Heist Comedy","director": "Rajesh A. Krishnan", | |
"plot": "Debt-ridden air-hostesses stumble upon smuggling ring of gold bars."}, | |
{"title": "Shaitaan", "year": 2024, "genre": "Supernatural Thriller","director": "Vikas Bahl", | |
"plot": "Family battles eerie stranger who hypnotises teen daughter via occult."}, | |
{"title": "Teri Baaton Mein Aisa Uljha Jiya","year": 2024,"genre": "Sci-Fi Rom-Com","director": "Amit Joshi", | |
"plot": "Robotics engineer falls for humanoid android intended for uncle’s US project."}, | |
{"title": "Bade Miyan Chote Miyan","year": 2024,"genre": "Action Buddy","director": "Ali Abbas Zafar", | |
"plot": "Two elite soldiers retrieve stolen AI weapon from rogue scientist."}, | |
{"title": "Laapataa Ladies", "year": 2024, "genre": "Comedy Drama","director": "Kiran Rao", | |
"plot": "Groom loses veiled bride on rural train; mix-ups spark female agency."}, | |
{"title": "Premalu (Hindi)", "year": 2024, "genre": "Rom-Com", "director": "Girivinay Nair", | |
"plot": "Malayali youth’s Bangalore crush turns into sweet comic pursuit."}, | |
{"title": "Crakk – Jeetegaa Toh Jiyegaa!", "year": 2024, "genre": "Sports Action","director": "Aditya Datt", | |
"plot": "Slum freerunner enters deadly underground extreme-sports competition for glory."}, | |
{"title": "Kuch Khattaa Ho Jaay", "year": 2024, "genre": "Family Comedy","director": "Ashok Gahlot", | |
"plot": "Newlyweds fake pregnancy for inheritance; real chaos follows."}, | |
{"title": "Yodha", "year": 2024, "genre": "Action Thriller","director": "Sagar Ambre", | |
"plot": "Disgraced commando boards hijacked flight to prove innocence."}, | |
{"title": "Swatantrya Veer Savarkar","year": 2024,"genre": "Biopic Drama","director": "Randeep Hooda", | |
"plot": "Life of revolutionary Vinayak Damodar Savarkar from cellular jail to politics."}, | |
{"title": "Mr & Mrs Mahi", "year": 2024, "genre": "Sports Rom-Drama","director": "Sharan Sharma", | |
"plot": "Failed cricketer coaches his doctor-wife to live his dream on field."}, | |
{"title": "Sarfira", "year": 2024, "genre": "Inspirational Drama","director": "Sudha Kongara", | |
"plot": "Village dropout battles aviation establishment to launch low-cost airline."}, | |
{"title": "Stree 2", "year": 2024, "genre": "Horror-Comedy","director": "Amar Kaushik", | |
"plot": "Men of Chanderi again confront man-hunting witch’s chilling return."}, | |
{"title": "Singham Again", "year": 2025, "genre": "Action", "director": "Rohit Shetty", | |
"plot": "DCP Bajirao Singham joins cop-verse to crush terrorist network in Varanasi."}, | |
{"title": "Bhool Bhulaiyaa 3", "year": 2025, "genre": "Horror-Comedy","director": "Anees Bazmee", | |
"plot": "Psychiatrist Rooh Baba faces new labyrinth of spirits in ancestral palace."} | |
] | |
# Simple function to connect to AWS Bedrock | |
def connect_to_bedrock(): | |
try: | |
client = boto3.client('bedrock-runtime', region_name='us-east-1') | |
return client | |
except: | |
st.error("⚠️ AWS Bedrock not configured. Using mock responses for demo.") | |
return None | |
# Get embeddings from Bedrock | |
def get_embeddings(bedrock_client, text): | |
if not bedrock_client: | |
# Return dummy embedding for demo | |
import random | |
return [random.random() for _ in range(1536)] | |
try: | |
body = json.dumps({"inputText": text}) | |
response = bedrock_client.invoke_model( | |
modelId="amazon.titan-embed-text-v1", | |
body=body | |
) | |
result = json.loads(response['body'].read()) | |
return result['embedding'] | |
except: | |
# Return dummy embedding if API fails | |
import random | |
return [random.random() for _ in range(1536)] | |
# Create movie documents and store in ChromaDB | |
def setup_movie_database(bedrock_client): | |
st.write("🎬 Setting up Bollywood movies database...") | |
# Create ChromaDB client | |
chroma_client = chromadb.Client() | |
# Create or recreate collection | |
try: | |
chroma_client.delete_collection("bollywood_movies") | |
except: | |
pass | |
collection = chroma_client.create_collection("bollywood_movies") | |
# Prepare data for ChromaDB | |
ids = [] | |
documents = [] | |
metadatas = [] | |
embeddings = [] | |
progress_bar = st.progress(0) | |
for i, movie in enumerate(SAMPLE_MOVIES): | |
# Create document text | |
doc_text = f"Title: {movie['title']}\nYear: {movie['year']}\nGenre: {movie['genre']}\nDirector: {movie['director']}\nPlot: {movie['plot']}" | |
# Get embedding | |
embedding = get_embeddings(bedrock_client, doc_text) | |
# Prepare data | |
ids.append(str(i)) | |
documents.append(doc_text) | |
metadatas.append({ | |
'title': movie['title'], | |
'year': movie['year'], | |
'genre': movie['genre'].lower(), | |
'director': movie['director'].lower(), | |
'decade': f"{(movie['year'] // 10) * 10}s" | |
}) | |
embeddings.append(embedding) | |
progress_bar.progress((i + 1) / len(SAMPLE_MOVIES)) | |
# Add to ChromaDB | |
collection.add( | |
ids=ids, | |
documents=documents, | |
metadatas=metadatas, | |
embeddings=embeddings | |
) | |
st.success(f"✅ Added {len(SAMPLE_MOVIES)} movies to database!") | |
return collection | |
# Simple query filter detection | |
def detect_filters(query): | |
query_lower = query.lower() | |
filters = {} | |
# Genre detection | |
genres = ['action', 'comedy', 'drama', 'romance', 'sports', 'adventure'] | |
for genre in genres: | |
if genre in query_lower: | |
filters['genre'] = genre | |
break | |
# Decade detection | |
decades = ['1960s', '1970s', '1980s', '1990s', '2000s', '2010s'] | |
for decade in decades: | |
if decade in query_lower: | |
filters['decade'] = decade | |
break | |
# Year detection | |
years = re.findall(r'\b(19\d{2}|20\d{2})\b', query) | |
if years: | |
year = int(years[0]) | |
filters['decade'] = f"{(year // 10) * 10}s" | |
# Director detection (simple) | |
directors = ['hrishikesh mukherjee', 'rajkumar hirani', 'aamir khan', 'yash chopra'] | |
for director in directors: | |
if director in query_lower: | |
filters['director'] = director | |
break | |
return filters | |
# Retrieve without metadata filter | |
def retrieve_without_filter(collection, bedrock_client, query, top_k=5): | |
start_time = time.time() | |
# Get query embedding | |
query_embedding = get_embeddings(bedrock_client, query) | |
# Search without filters | |
results = collection.query( | |
query_embeddings=[query_embedding], | |
n_results=top_k | |
) | |
end_time = time.time() | |
# Format results | |
movies = [] | |
for i in range(len(results['documents'][0])): | |
movies.append({ | |
'document': results['documents'][0][i], | |
'metadata': results['metadatas'][0][i], | |
'distance': results['distances'][0][i] | |
}) | |
return movies, end_time - start_time | |
# Retrieve with metadata filter | |
def retrieve_with_filter(collection, bedrock_client, query, filters, top_k=5): | |
start_time = time.time() | |
# Get query embedding | |
query_embedding = get_embeddings(bedrock_client, query) | |
# Create where clause for filtering | |
where_clause = {} | |
for key, value in filters.items(): | |
where_clause[key] = value | |
# Search with filters | |
try: | |
results = collection.query( | |
query_embeddings=[query_embedding], | |
n_results=top_k, | |
where=where_clause | |
) | |
except: | |
# If filtering fails, fall back to no filter | |
results = collection.query( | |
query_embeddings=[query_embedding], | |
n_results=top_k | |
) | |
end_time = time.time() | |
# Format results | |
movies = [] | |
for i in range(len(results['documents'][0])): | |
movies.append({ | |
'document': results['documents'][0][i], | |
'metadata': results['metadatas'][0][i], | |
'distance': results['distances'][0][i] | |
}) | |
return movies, end_time - start_time | |
# Generate answer using Bedrock | |
def generate_answer(bedrock_client, query, movies): | |
if not bedrock_client: | |
return "🎬 Based on the retrieved movies, here are some recommendations that match your query!" | |
# Create context from movies | |
context = "\n\n".join([movie['document'] for movie in movies]) | |
prompt = f""" | |
Based on the following Bollywood movies information, please answer the user's question. | |
Question: {query} | |
Movies Information: | |
{context} | |
Please provide a helpful and informative answer about the movies. | |
""" | |
try: | |
body = json.dumps({ | |
"anthropic_version": "bedrock-2023-05-31", | |
"max_tokens": 400, | |
"messages": [{"role": "user", "content": prompt}] | |
}) | |
response = bedrock_client.invoke_model( | |
modelId="anthropic.claude-3-haiku-20240307-v1:0", | |
body=body | |
) | |
result = json.loads(response['body'].read()) | |
return result['content'][0]['text'] | |
except: | |
return "🎬 Based on the retrieved movies, here are some great recommendations that match your query!" | |
# Main app | |
def main(): | |
st.title("🎬 Bollywood Movies RAG with Metadata Filtering") | |
st.write("Ask questions about Bollywood movies and see how metadata filtering speeds up retrieval!") | |
# Initialize session state | |
if 'collection' not in st.session_state: | |
st.session_state.collection = None | |
if 'setup_done' not in st.session_state: | |
st.session_state.setup_done = False | |
# Setup section | |
if not st.session_state.setup_done: | |
st.subheader("🛠️ Setup Movie Database") | |
if st.button("🚀 Load Bollywood Movies Data"): | |
try: | |
bedrock_client = connect_to_bedrock() | |
collection = setup_movie_database(bedrock_client) | |
st.session_state.collection = collection | |
st.session_state.bedrock_client = bedrock_client | |
st.session_state.setup_done = True | |
st.balloons() | |
except Exception as e: | |
st.error(f"❌ Setup failed: {str(e)}") | |
else: | |
st.success("✅ Movie database is ready!") | |
# Sample queries | |
st.subheader("🔍 Try These Sample Queries") | |
sample_queries = [ | |
"What are some good action movies?", | |
"Tell me a few comedy movies from the 1970s", | |
"What is the movie Sholay about?", | |
"Tell me a few movies directed by Hrishikesh Mukherjee", | |
"What are some romantic movies from the 1990s?" | |
] | |
query_option = st.radio("Choose a query:", ["Custom Query"] + sample_queries) | |
if query_option == "Custom Query": | |
query = st.text_input("Enter your question about Bollywood movies:") | |
else: | |
query = query_option | |
st.write(f"Selected: **{query}**") | |
if query: | |
if st.button("🔍 Search Movies"): | |
try: | |
bedrock_client = st.session_state.bedrock_client | |
collection = st.session_state.collection | |
# Detect filters | |
filters = detect_filters(query) | |
st.write("---") | |
# Method 1: Without metadata filter | |
st.subheader("📊 Method 1: Without Metadata Filter") | |
movies_no_filter, time_no_filter = retrieve_without_filter(collection, bedrock_client, query) | |
st.write(f"⏱️ **Time taken: {time_no_filter:.4f} seconds**") | |
st.write("**Retrieved Movies:**") | |
for i, movie in enumerate(movies_no_filter, 1): | |
with st.expander(f"{i}. {movie['metadata']['title']} ({movie['metadata']['year']})"): | |
st.write(f"**Genre:** {movie['metadata']['genre'].title()}") | |
st.write(f"**Director:** {movie['metadata']['director'].title()}") | |
st.write(f"**Distance:** {movie['distance']:.4f}") | |
# Method 2: With metadata filter | |
st.subheader("🎯 Method 2: With Metadata Filter") | |
if filters: | |
st.write(f"**Detected Filters:** {filters}") | |
movies_with_filter, time_with_filter = retrieve_with_filter(collection, bedrock_client, query, filters) | |
st.write(f"⏱️ **Time taken: {time_with_filter:.4f} seconds**") | |
st.write("**Filtered Retrieved Movies:**") | |
for i, movie in enumerate(movies_with_filter, 1): | |
with st.expander(f"{i}. {movie['metadata']['title']} ({movie['metadata']['year']})"): | |
st.write(f"**Genre:** {movie['metadata']['genre'].title()}") | |
st.write(f"**Director:** {movie['metadata']['director'].title()}") | |
st.write(f"**Distance:** {movie['distance']:.4f}") | |
# Performance comparison | |
st.subheader("⚡ Performance Comparison") | |
col1, col2, col3 = st.columns(3) | |
with col1: | |
st.metric("Without Filter", f"{time_no_filter:.4f}s") | |
with col2: | |
st.metric("With Filter", f"{time_with_filter:.4f}s") | |
with col3: | |
speedup = ((time_no_filter - time_with_filter) / time_no_filter) * 100 if time_no_filter > 0 else 0 | |
st.metric("Speedup", f"{speedup:.1f}%") | |
# Generate final answer | |
st.subheader("🤖 AI Generated Answer") | |
answer = generate_answer(bedrock_client, query, movies_with_filter) | |
st.success(answer) | |
else: | |
st.write("**No specific filters detected** - using general retrieval") | |
st.write(f"⏱️ **Time taken: {time_no_filter:.4f} seconds**") | |
# Generate answer with no filter results | |
st.subheader("🤖 AI Generated Answer") | |
answer = generate_answer(bedrock_client, query, movies_no_filter) | |
st.success(answer) | |
except Exception as e: | |
st.error(f"❌ Search failed: {str(e)}") | |
# Show movie database | |
if st.checkbox("📋 Show All Movies in Database"): | |
st.subheader("Movie Database") | |
df = pd.DataFrame(SAMPLE_MOVIES) | |
st.dataframe(df) | |
# Reset button | |
if st.button("🔄 Reset Database"): | |
st.session_state.collection = None | |
st.session_state.setup_done = False | |
st.rerun() | |
# Installation and deployment guide | |
def show_guides(): | |
col1, col2 = st.columns(2) | |
with col1: | |
with st.expander("📖 Installation Guide"): | |
st.markdown(""" | |
**Step 1: Install Libraries** | |
```bash | |
pip install streamlit boto3 chromadb pandas | |
``` | |
**Step 2: Setup AWS** | |
```bash | |
aws configure | |
``` | |
**Step 3: Run Locally** | |
```bash | |
streamlit run bollywood_rag.py | |
``` | |
""") | |
with col2: | |
with st.expander("🚀 Deploy to Hugging Face"): | |
st.markdown(""" | |
**Step 1: Create files** | |
- `app.py` (this code) | |
- `requirements.txt` | |
- `README.md` | |
**Step 2: requirements.txt** | |
``` | |
streamlit | |
boto3 | |
chromadb | |
pandas | |
``` | |
**Step 3: Deploy** | |
1. Push to GitHub | |
2. Connect to Hugging Face Spaces | |
3. Select Streamlit SDK | |
4. Add AWS secrets in settings | |
""") | |
# Run the app | |
if __name__ == "__main__": | |
show_guides() | |
main() |