jomasego commited on
Commit
e3a2240
·
verified ·
1 Parent(s): a6f9ca1

Upload src/llm/gemma_client.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. src/llm/gemma_client.py +13 -4
src/llm/gemma_client.py CHANGED
@@ -88,23 +88,32 @@ class GemmaClient:
88
  {"role": "user", "content": user_prompt},
89
  ]
90
 
91
- model_inputs = self._tokenizer.apply_chat_template(
92
  messages,
93
  tokenize=True,
94
  add_generation_prompt=True,
95
  return_tensors="pt",
96
- ).to(self._model.device)
 
 
 
 
 
 
 
 
 
97
 
98
  with torch.no_grad():
99
  outputs = self._model.generate(
100
- model_inputs,
101
  max_new_tokens=self.config.max_new_tokens,
102
  temperature=self.config.temperature,
103
  do_sample=True,
104
  pad_token_id=self._tokenizer.eos_token_id,
105
  )
106
 
107
- prompt_len = model_inputs.shape[1]
108
  generated_ids = outputs[0][prompt_len:]
109
  return self._tokenizer.decode(generated_ids, skip_special_tokens=True).strip()
110
 
 
88
  {"role": "user", "content": user_prompt},
89
  ]
90
 
91
+ raw = self._tokenizer.apply_chat_template(
92
  messages,
93
  tokenize=True,
94
  add_generation_prompt=True,
95
  return_tensors="pt",
96
+ )
97
+ # Newer transformers may return a BatchEncoding; older returns a plain tensor
98
+ if hasattr(raw, "input_ids"):
99
+ input_ids = raw.input_ids.to(self._model.device)
100
+ gen_kwargs = {"input_ids": input_ids}
101
+ if hasattr(raw, "attention_mask"):
102
+ gen_kwargs["attention_mask"] = raw.attention_mask.to(self._model.device)
103
+ else:
104
+ input_ids = raw.to(self._model.device)
105
+ gen_kwargs = {"input_ids": input_ids}
106
 
107
  with torch.no_grad():
108
  outputs = self._model.generate(
109
+ **gen_kwargs,
110
  max_new_tokens=self.config.max_new_tokens,
111
  temperature=self.config.temperature,
112
  do_sample=True,
113
  pad_token_id=self._tokenizer.eos_token_id,
114
  )
115
 
116
+ prompt_len = input_ids.shape[1]
117
  generated_ids = outputs[0][prompt_len:]
118
  return self._tokenizer.decode(generated_ids, skip_special_tokens=True).strip()
119