Views
No views yet
google/gemma-2b-it designed to act as an expert Agentic programming tutor. It was developed as part of an AI/ML Engineer assessment for Purple Merit Technologies.google/gemma-2b-ittransformers and peft. Note: Ensure you load the model in float16 if running on a T4 GPU to prevent memory access errors.1from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig
2from peft import PeftModel
3import torch
4
5BASE = "google/gemma-2b-it"
6ADAPTER = "Imrozkhan007/programming-tutor-gemma-2b"
7
8# Use float16 for T4 compatibility
9bnb_config = BitsAndBytesConfig(
10 load_in_4bit=True,
11 bnb_4bit_quant_type='nf4',
12 bnb_4bit_compute_dtype=torch.float16
13)
14
15tokenizer = AutoTokenizer.from_pretrained(BASE)
16base_model = AutoModelForCausalLM.from_pretrained(BASE, quantization_config=bnb_config, device_map={"": 0})
17model = PeftModel.from_pretrained(base_model, ADAPTER)
18model.eval()
19
20# Example Prompt
21prompt = "Explain binary search step by step"
22messages = [
23 {"role": "user", "content": f"You are an expert programming tutor...\n\nStudent Question: {prompt}"}
24]
25formatted_prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
26
27inputs = tokenizer(formatted_prompt, return_tensors='pt').to(model.device)
28out = model.generate(**inputs, max_new_tokens=512, temperature=0.3)
29print(tokenizer.decode(out[0], skip_special_tokens=True))