Views
No views yet
ibm-granite/granite-3.0-350m specialized for generating UPSC Civil Services (Mains) style questions for General Studies (GS) papers.Question:/Answer: prompt format. To get a good response, you must follow this template.1import torch
2from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
3import re
4
5# --- 1. Load the Model ---
6MODEL_ID = "Hardman/upsc-question-generator"
7
8# Configure for 4-bit loading
9bnb_config = BitsAndBytesConfig(
10 load_in_4bit=True,
11 bnb_4bit_use_double_quant=True,
12 bnb_4bit_quant_type="nf4",
13 bnb_4bit_compute_dtype=torch.float16
14)
15
16model = AutoModelForCausalLM.from_pretrained(
17 MODEL_ID,
18 quantization_config=bnb_config,
19 device_map="auto",
20 dtype=torch.float16
21)
22
23tokenizer = AutoTokenizer.from_pretrained(MODEL_ID)
24
25# --- 2. Define the Prompt ---
26topic = "GS3 - Cybersecurity threats in India"
27num_questions = 2
28
29instruction = f"""Generate exactly {num_questions} original UPSC-style Mains questions for the topic: "{topic}"."""
30prompt = f"Question:\n{instruction}\n\nAnswer:"
31
32# --- 3. Generate ---
33inputs = tokenizer(prompt, return_tensors="pt", padding=True, truncation=True)
34inputs = {k: v.to(model.device) for k, v in inputs.items()}
35
36with torch.no_grad():
37 outputs = model.generate(
38 **inputs,
39 max_new_tokens=512,
40 temperature=0.7,
41 top_p=0.9,
42 do_sample=True,
43 pad_token_id=tokenizer.eos_token_id,
44 eos_token_id=tokenizer.eos_token_id
45 )
46
47# --- 4. Decode and Parse ---
48full_output = tokenizer.decode(outputs[0], skip_special_tokens=True)
49answer = full_output.split("Answer:")[-1].strip()
50
51# Clean up the output
52for line in answer.split('\n'):
53 line = line.strip()
54 line = re.sub(r"^(Question \d+:|\d+\)|\d+\.)\s*", "", line)
55 if len(line) > 25: # Filter out junk
56 print(line)
57
58
59''''
60
61## Training Details
62
63Base Model: ibm-granite/granite-3.0-350m
64Method: 4-bit QLoRA (fine-tuning) using Unsloth.
65Data: A custom dataset of 58 topics and their associated past questions for all 4 GS papers.
66Hardware: Google Colab T4 GPU
67Training Steps: 120