Update modeling_minicpmv.py
Browse files- modeling_minicpmv.py +6 -1
modeling_minicpmv.py
CHANGED
@@ -181,12 +181,17 @@ class MiniCPMV(MiniCPMVPreTrainedModel):
|
|
181 |
)
|
182 |
|
183 |
def _decode(self, inputs_embeds, tokenizer, attention_mask, decode_text=False, **kwargs):
|
|
|
184 |
terminators = [tokenizer.convert_tokens_to_ids(i) for i in self.terminators]
|
185 |
output = self.llm.generate(
|
186 |
inputs_embeds=inputs_embeds,
|
187 |
pad_token_id=0,
|
188 |
eos_token_id=terminators,
|
189 |
attention_mask=attention_mask,
|
|
|
|
|
|
|
|
|
190 |
**kwargs
|
191 |
)
|
192 |
if decode_text:
|
@@ -258,7 +263,7 @@ class MiniCPMV(MiniCPMVPreTrainedModel):
|
|
258 |
if stream:
|
259 |
result = self._decode_stream(model_inputs["inputs_embeds"], tokenizer, **kwargs)
|
260 |
else:
|
261 |
-
result = self._decode(model_inputs["inputs_embeds"], tokenizer, attention_mask, decode_text=
|
262 |
|
263 |
if return_vision_hidden_states:
|
264 |
return result, vision_hidden_states
|
|
|
181 |
)
|
182 |
|
183 |
def _decode(self, inputs_embeds, tokenizer, attention_mask, decode_text=False, **kwargs):
|
184 |
+
from transformers import GenerationConfig
|
185 |
terminators = [tokenizer.convert_tokens_to_ids(i) for i in self.terminators]
|
186 |
output = self.llm.generate(
|
187 |
inputs_embeds=inputs_embeds,
|
188 |
pad_token_id=0,
|
189 |
eos_token_id=terminators,
|
190 |
attention_mask=attention_mask,
|
191 |
+
generation_config=GenerationConfig(
|
192 |
+
output_logits=True,
|
193 |
+
output_scores=True
|
194 |
+
)
|
195 |
**kwargs
|
196 |
)
|
197 |
if decode_text:
|
|
|
263 |
if stream:
|
264 |
result = self._decode_stream(model_inputs["inputs_embeds"], tokenizer, **kwargs)
|
265 |
else:
|
266 |
+
result = self._decode(model_inputs["inputs_embeds"], tokenizer, attention_mask, decode_text=False, **kwargs)
|
267 |
|
268 |
if return_vision_hidden_states:
|
269 |
return result, vision_hidden_states
|