from transformers import AutoProcessor, AutoModelForCausalLM MODEL_ID = "ValiantLabs/gemma-4-12B-it-Guardpoint" # Load modelprocessor = AutoProcessor.from_pretrained(MODEL_ID)model = AutoModelForCausalLM.from_pretrained( MODEL_ID, dtype="auto", device_map="auto") # Prepare the model inputprompt = "A 60-year-old undergoes a Total Knee Arthroplasty (TKA). Post-operatively, they complain of a clunking sensation and instability when descending stairs. On exam, they have excessive posterior translation of the tibia at 90 degrees of flexion. The TKA used a Cruciate Retaining (CR) implant. Diagnosis is PCL incompetence or rupture. Explain why a CR implant relies on a functional PCL for femoral rollback and how converting to a Posterior Stabilized (PS) implant resolves this biomechanical failure."#prompt = "I have that tube in my chest for dialysis while my arm heals. The dressing came off in the shower and the tube got tugged a bit. It didn't come out, but now there's this red cuff thing showing that used to be inside the skin. It’s sticking out about an inch. Can I just push it back in and tape it?"#prompt = "In the workup of a tumor of unknown primary, a biopsy shows a poorly differentiated carcinoma. The IHC profile is: CK7+, CK20+, CDX2+, TTF-1 negative, PAX8 negative. Based on this cytokeratin and transcription factor profile, where is the most likely primary site of the malignancy?"#prompt = "I have bad arthritis in my lower back and hips. I saw a chiropractor who said my 'pelvis is twisted' and wants to do high-velocity adjustments. My rheumatologist said absolutely not because of my 'osteophytes'. Who is right? I just want to walk without stiffness." messages = [ {"role": "user", "content": prompt},] # Process inputtext = processor.apply_chat_template( messages, tokenize=False, add_generation_prompt=True, enable_thinking=True)inputs = processor(text=text, return_tensors="pt").to(model.device)input_len = inputs["input_ids"].shape[-1] # Generate outputoutputs = model.generate(**inputs, max_new_tokens=40000)response = processor.decode(outputs[0][input_len:], skip_special_tokens=False) # Parse outputprocessor.parse_response(response)print(response)