add device parameter to TransformerModel
This commit is contained in:
		
							parent
							
								
									5991206ae5
								
							
						
					
					
						commit
						81388b14f7
					
				|  | @ -284,7 +284,7 @@ class HfApiModel(Model): | |||
| class TransformersModel(Model): | ||||
|     """This engine initializes a model and tokenizer from the given `model_id`.""" | ||||
| 
 | ||||
|     def __init__(self, model_id: Optional[str] = None): | ||||
|     def __init__(self, model_id: Optional[str] = None, device: Optional[str] = None): | ||||
|         super().__init__() | ||||
|         default_model_id = "HuggingFaceTB/SmolLM2-1.7B-Instruct" | ||||
|         if model_id is None: | ||||
|  | @ -293,15 +293,18 @@ class TransformersModel(Model): | |||
|                 f"`model_id`not provided, using this default tokenizer for token counts: '{model_id}'" | ||||
|             ) | ||||
|         self.model_id = model_id | ||||
|         if device is None: | ||||
|             device = "cuda" if torch.cuda.is_available() else "cpu" | ||||
|         self.device = device | ||||
|         try: | ||||
|             self.tokenizer = AutoTokenizer.from_pretrained(model_id) | ||||
|             self.model = AutoModelForCausalLM.from_pretrained(model_id) | ||||
|             self.model = AutoModelForCausalLM.from_pretrained(model_id).to(self.device) | ||||
|         except Exception as e: | ||||
|             logger.warning( | ||||
|                 f"Failed to load tokenizer and model for {model_id=}: {e}. Loading default tokenizer and model instead from {model_id=}." | ||||
|             ) | ||||
|             self.tokenizer = AutoTokenizer.from_pretrained(default_model_id) | ||||
|             self.model = AutoModelForCausalLM.from_pretrained(default_model_id) | ||||
|             self.model = AutoModelForCausalLM.from_pretrained(default_model_id).to(self.device) | ||||
| 
 | ||||
|     def make_stopping_criteria(self, stop_sequences: List[str]) -> StoppingCriteriaList: | ||||
|         class StopOnStrings(StoppingCriteria): | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue