Views
No views yet




google/gemma-2b base model for air quality index (AQI) related question answering.google/gemma-2b.1from transformers import AutoModelForCausalLM, AutoTokenizer
2from peft import PeftModel
3import torch
4
5# Load the base Gemma 2B model
6base_model = AutoModelForCausalLM.from_pretrained("google/gemma-2b", device_map="auto")
7
8# Load tokenizer and LoRA adapter weights from this repo
9tokenizer = AutoTokenizer.from_pretrained("alifarooq77/aqi-model")
10model = PeftModel.from_pretrained(base_model, "alifarooq77/aqi-model")
11
12model.eval()
13
14# Prepare prompt format used during training
15def prepare_prompt(question: str) -> str:
16 return f"### Instruction:\n{question}\n\n### Answer:\n"
17
18# Generate response function
19def generate_response(question: str) -> str:
20 prompt = prepare_prompt(question)
21 inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
22
23 outputs = model.generate(
24 **inputs,
25 max_new_tokens=120,
26 eos_token_id=tokenizer.eos_token_id,
27 do_sample=True,
28 temperature=0.95,
29 top_p=0.9,
30 repetition_penalty=1.15,
31 )
32 generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
33 answer = generated_text.split("### Answer:\n")[-1].strip()
34 return answer
35
36# Example usage
37question = "What should be done to lower AQI?"
38print("Question:", question)
39print("Answer:", generate_response(question))