| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813 |
- """
- Common definitions and constants for the legal discovery pipeline.
- """
- from dataclasses import dataclass
- from typing import List, Dict, Optional
- from enum import Enum
- # Case-specific criteria
- CASE_NAME = "Jennifer Capasso v. Memorial Sloan Kettering Cancer Center"
- PLAINTIFF_NAME = "Jennifer Capasso"
- # Plaintiff name variations
- PLAINTIFF_VARIATIONS = [
- "jennifer capasso",
- "jen capasso",
- "jennifer",
- "jen",
- "jenn",
- "jenn capasso",
- "jennifer danielle capasso",
- "capasso",
- "j capasso",
- "jdc",
- ]
- # Facility names
- FACILITY_NAMES = ["memorial sloan kettering", "msk", "sloan kettering", "mskcc", "sk"]
- # Key topics for keyword filtering
- KEY_TOPICS = [
- # Treatment at MSK
- "treatment",
- "medical care",
- "doctor",
- "physician",
- "nurse",
- "appointment",
- "visit",
- "hospital",
- "clinic",
- "surgery",
- "procedure",
- "diagnosis",
- "medication",
- "prescription",
- # Complaints
- "complaint",
- "complain",
- "complained",
- "issue",
- "problem",
- "concern",
- "patient representative",
- "patient advocate",
- # Patient information updates
- "patient information",
- "medical records",
- "pronouns",
- "gender identity",
- "gender marker",
- "update records",
- # Discrimination
- "discrimination",
- "discriminate",
- "discriminated",
- "bias",
- "unfair",
- "mistreat",
- "transphobia",
- "misgendered",
- "deadname",
- "wrong pronouns",
- "refused",
- "denied",
- # March 7, 2022 surgery
- "march 7",
- "march 2022",
- "3/7/22",
- "3/7/2022",
- "lung surgery",
- "wedge resection"
- # Emotional distress
- "emotional distress",
- "mental anguish",
- "pain",
- "suffering",
- "trauma",
- "anxious",
- "depressed",
- "stress",
- ]
- # Text normalization expansions
- ACRONYMS = {
- "AAA": "american automobile association",
- "AAVE": "african american vernacular english",
- "AC": "air conditioning", # or alternating current
- "AC18": "ip camera app",
- "ACIO": "associate chief information officer",
- "ACL": "anterior cruciate ligament",
- "ACME": "automatic certificate management environment",
- "ADHD": "attention deficit hyperactivity disorder",
- "AF": "as fuck",
- "AFAB": "assigned femle at birth",
- "AFAIK": "as far as i know",
- "AI": "artificial intelligence",
- "AIDS": "acquired immune deficiency syndrome",
- "AKA": "also known as",
- "AMA": "against medical advice", # or ask me anything
- "AMAB": "assigned male at birth",
- "AMD": "advanced micro devices",
- "AMEX": "american express",
- "AP": "access point",
- "API": "application programming interface",
- "APICHA": "asian/pacific islander coalition on hiv/aids",
- "APR": "annual percentage rate",
- "ASAP": "as soon as possible",
- "ASPCA": "american society for prevention of cruelty to animals",
- "ASR": "automated speech recognition",
- "ATL": "atlanta",
- "ATM": "at the moment", # or automated teller machine or ass to mouth
- "AWS": "amazon web services",
- "BA": "breast augmentation",
- "BB": "baby",
- "BBC": "big black cock",
- "BBL": "brazilian butt lift",
- "BBQ": "barbecue",
- "BC": "because",
- "BCBS": "blue cross blue shield health insurance",
- "BDSM": "bondage, discipline, sadism, and masochism",
- "BFF": "best friends forever",
- "BI": "business intelligence", # or bisexual
- "BIOS": "basic input/output system",
- "BJ": "blowjob",
- "BK": "brooklyn",
- "BLT": "benzocaine, lidocaine, and tetracaine",
- "BM": "bowel movement",
- "BMI": "body mass index",
- "BMW": "bavarian motor works",
- "BNWO": "black new world order",
- "BO": "body odor",
- "BP": "blood pressure",
- "BPD": "bipolar disorder",
- "BR": "bedroom",
- "BRATT": "bananas, rice, applesauce, and toast",
- "BRB": "be right back",
- "BS": "bullshit",
- "BTW": "by the way",
- "BX": "beatrice the cat",
- "C2C": "cam to cam",
- "CBD": "cannabinodiol",
- "CBT": "cognitive-behavioral therapy", # or cock and ball torture
- "CC": "credit card", # or carbon copy
- "CD": "crossdresser", # or compact disc
- "CDC": "centers for disease control",
- "CEA": "carcinoembryonic antigen",
- "CHEMO": "chemotherapy",
- "CIO": "chief information officer",
- "CL": "callen-lorde community health center",
- "CLI": "command line interface",
- "COBRA": "consolidated omnibus budget reconciliation act",
- "COIN": "cecilia’s occupational inclusion network health program",
- "CP": "colored person",
- "CPAP": "continuous positive airway pressure",
- "CPU": "central processing unit",
- "CS": "customer service",
- "CSI": "crime scene investigation",
- "CT": "computed tomography",
- "CVS": "consumer value stores",
- "DARE": "drug abuse resistance education",
- "DB": "database", # or decibels
- "DBA": "doing business as",
- "DC": "district of columbia",
- "DCD": "adult video store",
- "DEA": "drug enforcement agency",
- "DEI": "diversity, equity, and inclusion",
- "DG": "dollar general",
- "DHCP": "dynamic host configuration protocol",
- "DIY": "do it yourself",
- "DJ": "disc jockey",
- "DK": "don't know",
- "DL": "down low",
- "DMT": "dimethyltryptamine",
- "DMV": "department of motor vehicles",
- "DNA": "deoxyribonucleic acid",
- "DND": "do not disturb",
- "DNS": "domain name server",
- "DOA": "dead on arrival",
- "DP": "double penetration",
- "DPO": "dental provider organization",
- "DR": "doctor",
- "DSM": "diagnostic and statistical manual",
- "DTC": "double-team challenge",
- "DTF": "down to fuck",
- "DUI": "driving under the influence",
- "DVR": "digital video recorder",
- "DVT": "deep vein thrombosis",
- "DWI": "driving while intoxicated",
- "EBS": "elastic block storage",
- "EBT": "electronic benefit transfer",
- "ED": "erectile dysfunction",
- "EDT": "eastern daylight time",
- "EEOC": "equal employment opportunity commission",
- "ELI5": "explain it like i'm 5",
- "EMS": "emergency medical services",
- "EMT": "emergency medical technician",
- "ENT": "ear nose and throat",
- "ENV": "environment",
- "EOD": "end of day",
- "EOW": "end of week",
- "EPO": "exclusive provider organization",
- "ERP": "enterprise resource planning",
- "ES": "elastic search", # or 'is' in german
- "ESL": "english as a second language",
- "ET": "eastern time",
- "ETA": "estimated time of arrival",
- "FAFO": "fuck around and find out",
- "FAQ": "frequently asked questions",
- "FB": "facebook",
- "FBI": "federal bureau of investigation",
- "FDG": "fluorodeoxyglucose",
- "FFS": "facial feminization surgery", # or for fuck's sake
- "FL": "fetlife", # or florida
- "FML": "fuck my life",
- "FMLA": "family medical leave act",
- "FNA": "fine needle aspiration",
- "FODMAP": "fermentable oligosaccharides, disaccharides, monosaccharides and polyols",
- "FOH": "get the fuck out of here",
- "FOLFOX": "leucovorin, fluorouracil, and oxaliplatin",
- "FOMO": "fear of missing out",
- "FTM": "female-to-male transsexual",
- "FUE": "follicular unit extraction",
- "FUT": "follicular unit transplantation",
- "FWIW": "for what it's worth",
- "FYI": "for your information",
- "GB": "gigabyte", # or gangbang
- "GBL": "gamma-butyrolactone",
- "GBP": "gabapentin",
- "GC": "gonorrhea",
- "GCS": "gender confirmation surgery",
- "GERD": "gastro-esophageal reflux disorder",
- "GF": "girlfriend", # or gluten free
- "GFI": "go for it",
- "GGUF": "gpt-generated unified format",
- "GHB": "gamma-hydroxy buterol",
- "GI": "gastrointestinal",
- "GLOW": "gorgeous ladies of wrestling",
- "GM": "good morning",
- "GOAT": "greatest of all time",
- "GP": "general practitioner",
- "GPS": "global positioning system",
- "GPU": "graphics processing unit",
- "GV": "google voice",
- "GWB": "george washington bridge",
- "HAI": "hepatic artery infusion",
- "HAM": "hard as a motherfucker",
- "HDD": "hard disk drive",
- "HDMI": "high definition multimedia interface",
- "HELOC": "home equity line of credit",
- "HIV": "human immunodeficiency virus",
- "HOEING": "working as an escort",
- "HOOKED": "worked as an escort",
- "HPV": "human papilloma virus",
- "HR": "hour",
- "HRT": "hormone replacement therapy",
- "HSV": "herpes simplex virus",
- "HSV2": "herpes simplex virus 2",
- "HUNNY": "honey",
- "HVAC": "heat, ventilation, and air conditioning",
- "IAM": "identity and access management",
- "IANAL": "i am not a lawyer",
- "IBS": "irritable bowel syndrome",
- "ICD": "international classification of diseases",
- "ID": "identification",
- "IDGAF": "i don't give a fuck",
- "IDK": "i don't know",
- "IFTT": "if this then that",
- "IFTTT": "if this then that",
- "IG": "instagram",
- "IIRC": "if i recall correctly",
- "ILYSM": "i love you so much",
- "IMO": "in my opinion",
- "INFO": "information",
- "IPL": "intense pulsed light",
- "IRL": "in real life",
- "ISP": "internet service provider",
- "IV": "intravenous",
- "JAN28": "january 28",
- "JC": "jersey city",
- "JDC": "jennifer danielle capasso",
- "JFC": "jesus fucking christ",
- "JFDI": "just fucking do it",
- "JFK": "john f kennedy airport",
- "JJ": "jungle juice",
- "JK": "just kidding",
- "JSON": "javascript object notation",
- "K9": "canine",
- "KK": "ok",
- "LAR": "lower arthroscopic resection",
- "LCSW": "licensed clinical social worker",
- "LDAP": "lightweight directory access protocol",
- "LED": "light emitting diode",
- "LGA": "laguardia airport",
- "LI": "long island",
- "LIC": "long island city",
- "LLM": "large language model",
- "LM": "let me", # or as in LM studio
- "LMAO": "laughing my ass off",
- "LMK": "let me know",
- "LOL": "laughing out loud",
- "LR": "living room",
- "LSD": "lysergic acid diethyl-amide",
- "LTD": "long-term disability",
- "M19": "main hospital 19th floor",
- "M4T": "male for transgender",
- "MA": "master of arts",
- "MAC": "media access control",
- "MB": "megabytes", # or motherboard
- "MBP": "macbook pro",
- "MCHC": "mean corpuscular hemoglobin",
- "MD": "doctor of medicine",
- "MDMA": "3,4-methylenedioxymethamphetamine",
- "MF": "motherfucker",
- "MFA": "multi-factor authentication", # or masters of fine arts
- "MI": "miles",
- "MIA": "missing in action",
- "MILF": "mom i'd like to fuck",
- "MN": "minnesota",
- "MRI": "magnetic resonance imaging",
- "MRSA": "methicillin resistant staphylococcus aureus",
- "MSKCC": "memorial sloan kettering cancer center",
- "MV": "manyvids",
- "NAS": "network attached storage",
- "NAT": "network address translation",
- "NBD": "no big deal",
- "NDA": "non-disclosure agreement",
- "NE": "northeast",
- "NED": "no evidence of disease",
- "NFS": "network file sharing",
- "NGL": "not going to lie",
- "NIH": "national institutes of health",
- "NJ": "new jersey",
- "NLP": "natural language processing",
- "NM": "not much",
- "NSA": "no strings attached",
- "NSFW": "not safe for work",
- "NVM": "nevermind",
- "NVR": "network video recorder",
- "NY": "New York",
- "NYCHA": "new york city housing authority",
- "NYE": "new year's eve",
- "NYPD": "new york city police department",
- "NYS": "new york state",
- "NYU": "new york university hospital",
- "O2": "oxygen",
- "OBS": "open broadcaster studio",
- "OCD": "obsessive-compulsive disorder",
- "OD": "to the extreme",
- "ODOD": "way far to the extreme",
- "OG": "original gangster",
- "OKC": "ok cupid",
- "OMFG": "oh my fucking god",
- "OMG": "oh my god",
- "OMGWTF": "oh my god what the fuck",
- "OMW": "on my way",
- "ONT": "optical network terminal",
- "OOC": "out of commission",
- "OOP": "out of pocket",
- "OP": "operation",
- "OSHA": "occupational safety and health administration",
- "P2P": "pay to play",
- "PACU": "post-anesthesia care unit",
- "PB": "peanut butter",
- "PC": "personal computer",
- "PCN": "penicillin",
- "PCR": "polymerase chain reaction",
- "PD": "police department",
- "PDE5": "phosphodiesterase 5",
- "PDF": "portable document format",
- "PEBKAC": "problem exists between keyboard and chair",
- "PET": "positron emission tomography", # or animal
- "PH": "penthouse",
- "PHP": "php hypertext processor",
- "PIP": "picture in picture", # or personal improvement plan
- "PITA": "pain in the ass",
- "PK": "anus",
- "PLS": "please",
- "PMA": "positive mental attitude",
- "PMV": "porn music video",
- "PNP": "do drugs and have sex",
- "POC": "proof of concept",
- "POV": "point of view",
- "PPE": "personal protective equipment",
- "PPO": "preferred provider organization",
- "PPV": "peritoneal pull-through vaginoplasty",
- "PR": "public relations",
- "PRP": "platelet rich plasma",
- "PSU": "power supply unit",
- "PT": "physical therapy", # or part or patient
- "PTA": "parent-teacher association",
- "PTO": "paid time off",
- "PTSD": "post-traumatic stress disorder",
- "PTZ": "pan, tilt, zoom",
- "QC": "queens county inn",
- "QV": "quick visit",
- "RAID": "redundant array of inexpensive disks",
- "RAM": "random access memory", # or a guy's name
- "RB": "robby b",
- "RBC": "red blood cell count",
- "RDW": "red cell distribution width",
- "RIP": "rest in peace", # or tear
- "RIT": "rochester institute of technology",
- "ROA": "route of administration",
- "ROC": "rochester, ny",
- "ROI": "return on investment",
- "RPR": "rapid plasma reagin",
- "RSI": "repetitive stress injury",
- "RTSP": "real-time streaming protocol",
- "RTW": "return to work",
- "SATA": "serial advanced technology attachment",
- "SBC": "sigle board computer", # or small black cock
- "SCA": "single case agreement",
- "SD": "secure digital",
- "SIBO": "small intestinal bacterial overgrowth",
- "SIL": "son in-law",
- "SIM": "subscriber identity module",
- "SK": "sloan kettering",
- "SMS": "short message service",
- "SOL": "shit out of luck",
- "SOS": "ship on shoal",
- "SSD": "solid state drive",
- "SSDI": "social security disability insurance",
- "SSH": "secure shell",
- "SSN": "social security number",
- "STD": "sexually transmitted disease",
- "STFU": "shut the fuck up",
- "STG": "swear to god",
- "STI": "sexually transmitted infection",
- "SUV": "standardized uptake value", # or sport utility vehicle
- "T4T": "trans for trans",
- "TB": "terabytes",
- "TBD": "to be determined",
- "TBH": "to be honest",
- "TBQH": "to be quite honest",
- "TCP": "transmission control protocol",
- "TDOR": "transgender day of remembrance",
- "TDOV": "transgender day of visibility",
- "TENS": "transcutaneous electrical nerve stimulation",
- "TF": "the fuck",
- "TFM": "the fucking manual",
- "TFW": "that feeling when",
- "TG": "transgender",
- "TIL": "today i learned",
- "TLC": "taxi and limousine commission", # or tender loving care,
- "TLS": "transport layer security",
- "TME": "total mesorectal excision",
- "TP": "toilet paper",
- "TPU": "tensor processing unit",
- "TS": "transsexual",
- "TSA": "transportation security agency",
- "TT": "testosterone",
- "TTY": "talk to you",
- "TTYL": "talk to you later",
- "TWT": "traveling while trans",
- "U2": "you too",
- "UA": "unemployment assistance",
- "UAT": "user acceptance testing",
- "UC": "urgent care",
- "UCC": "urgent care center",
- "UDP": "user datagram protocol",
- "UHC": "united health care",
- "UI": "user interface",
- "UID": "unique identifier",
- "UK": "united kingdom",
- "UPS": "united parcel service",
- "UR": "your",
- "URL": "uniform resource locator",
- "URMC": "university of rochester medical center",
- "USB": "universal serial bus",
- "UTC": "universal coordinated time",
- "UTF8": "unicode transformation format – 8-bit",
- "UTI": "urinary tract infection",
- "UV": "ultraviolet",
- "UWS": "upper west side",
- "UX": "user experience",
- "VA": "virginia",
- "VD": "valentine's day",
- "VII": "7",
- "VIP": "very important person",
- "VM": "virtual machine",
- "VP": "vice president",
- "VPN": "virtual private network",
- "VR": "virtual reality",
- "VS": "versus", # or victoria's secret
- "WFH": "work from home",
- "WG": "wireguard",
- "WI": "wisconsin",
- "WNY": "western new york state",
- "WOC": "wound, ostomy, and continence",
- "WOPR": "big computer",
- "WRT": "with regard to",
- "WTF": "what the fuck",
- "WW2": "world war 2",
- "WWI": "world war 1",
- "WWII": "world war 2",
- "WYM": "what do you mean",
- "XELOX": "xeloda and oxaliplatin",
- "XL": "extra large",
- "XML": "extensible markup language",
- "XXXL": "extra extra extra large",
- "XYZ": "miscellaneous things",
- "YOLO": "you only live once",
- "YTD": "year-to-date",
- "ZM": "zone minder",
- }
- TEXT_EXPANSIONS = {
- "5 boro": "five boroughs",
- "8up": "high",
- "aaaggghhh": "ugh",
- "aaah": "ah",
- "af": "as fuck",
- "agentdvr": "agent dvr video surveillance software",
- "ahhh": "ah",
- "anytime": "any time",
- "appt": "appointment",
- "asap": "As Soon As Possible",
- "autopay": "automatic payment",
- "awww": "aww",
- "awwww": "aww",
- "awwwww": "aww",
- "azithromycin": "azithromycin",
- "babyface": "young-looking face",
- "bb": "baby",
- "bbl": "brazilian butt lift",
- "bff": "best friend forever",
- "biggie": "big deal",
- "bleh": "ugh",
- "bo": "body odor",
- "bool": "boolean",
- "brattice": "beatrice",
- "brb": "be right back",
- "bros": "brothers",
- "btw": "by the way",
- "buzz": "intoxication",
- "bz": "beattrice",
- "c card": "cancer excuse",
- "cam": "camera",
- "care credit": "healthcare credit card",
- "clienting": "engaging in client services",
- "coin": "a client",
- "congrats": "congratulations",
- "coulda": "could have",
- "cruising": "looking for sex",
- "ctdna": "cell-free tumor dna analysis",
- "cuz": "because",
- "dawww": "aww",
- "dawwww": "aww",
- "dawwwww": "aww",
- "ddwrt": "router firmware",
- "dl": "down low",
- "dm'ed": "direct messaged",
- "doesnt": "does not",
- "doiing": "doing",
- "dokie": "ok",
- "dom": "dominant",
- "dongle": "adapter",
- "doppelgangers": "lookalikes",
- "downright": "perfectly",
- "dyryfuutyitg JJ grjuthfudgfujdg it rghrgg in cd dry ughydh it Dr h TS do thgxgytyy do huthjet he etiyfyiyttg": "ugh",
- "E53st": "east 53rd street",
- "ed": "erectile dysfunction",
- "ehhh": "eh",
- "eod": "End Of Day",
- "esp": "especially",
- "eta": "estimated time of arrival",
- "eufy": "eufy camera",
- "fb": "facebook",
- "ffs": "facial feminization surgery",
- "fml": "fuck my life",
- "fodmap": "fermentable oligosaccharides, disaccharides, monosaccharides, and polyols",
- "frfr": "for real, for real",
- "from my ass": "according to me",
- "fs": "file system",
- "ft": "foot",
- "ftm": "female to male transgender",
- "fucksake": "for fuck's sake",
- "fwiw": "for what it's worth",
- "gbp": "gabapentin",
- "gguf": "gpt-generated unified format",
- "gi": "gastrointestinal",
- "gke": "google kubernetes engine",
- "glow": "gorgeous ladies of wrestling",
- "gm financial": "general motors financial",
- "goddammit": "god damn it",
- "gosh": "oh my goodness",
- "grindr": "gay rendezvous internet dating resource app",
- "haha": "ha ha",
- "hahaha": "ha ha",
- "hasnt": "has not",
- "havent": "have not",
- "hehe": "hee hee",
- "hella": "really",
- "heyyy": "hey",
- "ho": "hooker",
- "hojo": "hotel",
- "hokay": "ok",
- "homo": "homosexual",
- "hooray": "yay",
- "hruwyd": "how are you? what are you doing?",
- "hunny": "sweetheart",
- "ibs": "irritable bowel syndrome",
- "id": "identification",
- "idc": "i don't care",
- "idk": "i don't know",
- "idnyc": "identification new york city",
- "ie": "that is",
- "iirc": "if i recall correctly",
- "immodium": "loperamide",
- "intel": "intelligence",
- "ipcam": "internet protocol camera",
- "jfc": "jesus fucking christ",
- "jfk": "john f kennedy airport",
- "jk": "just kidding",
- "jock itch": "tinea cruris",
- "k8s": "kubernetes",
- "klga": "laguardia airport",
- "km": "kilometers",
- "ladysack": "scrotum",
- "leeway": "flexibility",
- "lga": "laguardia airport",
- "lmao": "laughing my ass off",
- "lmk": "let me know",
- "lol": "laughing out loud",
- "loll": "laughing out loud",
- "lolllll": "laughing out loud",
- "lollllll": "laughing out loud",
- "lolllllll": "laughing out loud",
- "lolol": "laughing out loud",
- "lololol": "laughing out loud",
- "lolsob": "laughing out loud and crying",
- "lolxz": "laughing out loud",
- "lolz": "laughing out loud",
- "lovey": "affectionate",
- "ltd": "long-term disability",
- "mbps": "megabits per second",
- "mf": "Motherfucker",
- "ml": "milliliters",
- "mn": "Minnesota",
- "motility": "digestion",
- "nameserver": "name server",
- "ned": "no evident disease",
- "nfn": "not for nothing",
- "noone": "no one",
- "nooo": "no",
- "np": "nurse practitioner",
- "nvm": "never mind",
- "ny": "new york",
- "nyc": "new york city",
- "nys": "new york state",
- "obvs": "obviously",
- "ohhhh": "oh",
- "ok": "okay",
- "omfg": "oh my fucking god",
- "omg": "oh my god",
- "omgwtf": "oh my god what the fuck",
- "omw": "on my way",
- "oooh": "wow",
- "outward bound": "juvenile rehabilitation program",
- "papi": "daddy",
- "path": "pathology",
- "prob": "probably",
- "prolly": "probably",
- "publickey": "public key",
- "puffy": "swollen",
- "rebooking": "rescheduling",
- "rm": "room",
- "rn": "right now",
- "rpi3": "raspberry pi 3",
- "rpi4": "raspberry pi 4",
- "rtsp": "remote transport stream protocol",
- "runtime": "run time",
- "sadtrombone.jpg": "sad (sarcastic)",
- "sayin": "saying",
- "semi-reggie": "semi-regular",
- "shit break": "bowel movement",
- "sm": "sadomasochism",
- "smoking crack": "crazy",
- "sooo": "so",
- "specs": "specifications",
- "sqft": "square feet",
- "srlp": "sylvia rivera law project",
- "stg": "swear to god",
- "subby": "submissive",
- "sync": "synchronize",
- "t": "methamphetamine",
- "tag team": "work together",
- "tbh": "to be honest",
- "tf": "the fuck",
- "tflite": "tensorflow lite",
- "thats": "that is",
- "theres": "there is",
- "tho": "though",
- "tmp": "temporary",
- "tmpfs": "temporary file storage",
- "tops": "penetrating partners",
- "totes": "totally",
- "trillium": "trillium health",
- "tsa": "transportation security administration",
- "twacky": "drugged out",
- "twee": "overly nice",
- "vommed": "vomited",
- "vr": "virtual reality",
- "vram": "video random access memory",
- "werent": "were not",
- "wfh": "work from home",
- "wi": "Wisconsin",
- "wont": "will not",
- "woohoo": "yay",
- "woulda": "would have",
- "wouldnt": "would not",
- "wyd": "what are you doing?",
- "wym": "what do you mean?",
- "xp": "experience points",
- "yall": "you all",
- "yang": "disrespectful speech",
- "yeesh": "yikes",
- "yr": "your",
- }
- # Subpoena criteria descriptions
- SUBPOENA_CRITERIA = {
- 1: "Medical treatment, care, procedures, appointments, services, and healthcare experiences at Memorial Sloan Kettering Cancer Center (MSK) involving patient Jennifer Capasso.",
- 2: "Complaints, grievances, concerns, feedback, disputes, or responses regarding patient care, service quality, or treatment issues raised with MSK staff, personnel, administrators, patient representatives, advocates, or employees concerning Jennifer Capasso.",
- 3: "Patient information updates, record changes, profile modifications, requests to change pronouns, gender identity markers, gender designation, preferred name, or demographic information in medical records for Jennifer Capasso at MSK.",
- 4: "Gender markers, gender identity documentation, sex designation, pronouns, or gender-related patient identifiers used in medical records, files, or systems at hospitals, medical facilities, or healthcare institutions where Jennifer Capasso received care or treatment.",
- 5: "Discrimination, bias, prejudice, mistreatment, harassment, disparate treatment, or negative experiences based on gender identity, transgender status, or gender expression that Jennifer Capasso encountered in any context, setting, location, or institution.",
- 6: "Surgery, surgical procedure, operation, medical intervention, or treatment performed on March 7, 2022 at Memorial Sloan Kettering Cancer Center involving Jennifer Capasso.",
- 7: "Emotional distress, psychological harm, mental anguish, mental suffering, anxiety, depression, trauma, pain and suffering, physical harm, economic damages, financial losses, medical expenses, lost wages, or other compensable harm resulting from or related to Jennifer Capasso's care, treatment, or experiences at MSK.",
- }
- # Query texts for semantic filtering
- SEMANTIC_QUERIES = SUBPOENA_CRITERIA.values()
- # Model configurations
- class ModelConfig:
- """Configuration for LLM models"""
- QWEN3_235B = {
- 'name': 'Qwen/Qwen3-235B-Instruct',
- 'gpus': 4,
- 'cost_per_hour': 2.56,
- 'port': 8000,
- 'quantization': 'awq'
- }
-
- QWEN25_72B = {
- 'name': 'Qwen/Qwen2.5-72B-Instruct',
- 'gpus': 2,
- 'cost_per_hour': 1.28,
- 'port': 8001,
- 'quantization': None
- }
- # Confidence levels
- class ConfidenceLevel(Enum):
- HIGH = "high"
- MEDIUM = "medium"
- LOW = "low"
- @dataclass
- class Message:
- """Represents a single message"""
- line_number: int
- timestamp: str
- sender: str
- message: str
- message_normalized: str = ""
- @dataclass
- class Chunk:
- """Represents a chunk of messages"""
- chunk_id: int
- start_line: int
- end_line: int
- messages: List[Message]
- combined_text: str
- timestamp_start: str
- timestamp_end: str
- keyword_matches: Optional[List[str]] = None
- keyword_score: Optional[int] = None
- semantic_score_model1: Optional[float] = None
- semantic_score_model2: Optional[float] = None
- semantic_score_combined: Optional[float] = None
- @dataclass
- class InferenceResult:
- """Results from LLM inference"""
- chunk_id: int
- responsive_line_numbers: List[int]
- reasoning: str
- confidence: ConfidenceLevel
- model_name: str
- @dataclass
- class MergedResult:
- """Merged results from dual models"""
- chunk_id: int
- responsive_line_numbers: List[int]
- confidence: ConfidenceLevel
- qwen3_lines: List[int]
- qwen25_lines: List[int]
- agreement: bool
|