Added ModelRunner helpers in modeld/runners/__init__.py (#29737)
	
		
	
				
					
				
			* Added ModelRunner helper class * import Runtime in __init__.pypull/29742/head
							parent
							
								
									2dd7a6fc64
								
							
						
					
					
						commit
						d5a55136a1
					
				
				 2 changed files with 32 additions and 11 deletions
			
			
		| @ -0,0 +1,27 @@ | |||||||
|  | import os | ||||||
|  | from openpilot.system.hardware import TICI | ||||||
|  | from openpilot.selfdrive.modeld.runners.runmodel_pyx import RunModel, Runtime | ||||||
|  | assert Runtime | ||||||
|  | 
 | ||||||
|  | USE_THNEED = int(os.getenv('USE_THNEED', str(int(TICI)))) | ||||||
|  | USE_SNPE = int(os.getenv('USE_SNPE', str(int(TICI)))) | ||||||
|  | 
 | ||||||
|  | class ModelRunner(RunModel): | ||||||
|  |   THNEED = 'THNEED' | ||||||
|  |   SNPE = 'SNPE' | ||||||
|  |   ONNX = 'ONNX' | ||||||
|  | 
 | ||||||
|  |   def __new__(cls, paths, *args, **kwargs): | ||||||
|  |     if ModelRunner.THNEED in paths and USE_THNEED: | ||||||
|  |       from openpilot.selfdrive.modeld.runners.thneedmodel_pyx import ThneedModel as Runner | ||||||
|  |       runner_type = ModelRunner.THNEED | ||||||
|  |     elif ModelRunner.SNPE in paths and USE_SNPE: | ||||||
|  |       from openpilot.selfdrive.modeld.runners.snpemodel_pyx import SNPEModel as Runner | ||||||
|  |       runner_type = ModelRunner.SNPE | ||||||
|  |     elif ModelRunner.ONNX in paths: | ||||||
|  |       from openpilot.selfdrive.modeld.runners.onnxmodel_pyx import ONNXModel as Runner | ||||||
|  |       runner_type = ModelRunner.ONNX | ||||||
|  |     else: | ||||||
|  |       raise Exception("Couldn't select a model runner, make sure to pass at least one valid model path") | ||||||
|  | 
 | ||||||
|  |     return Runner(str(paths[runner_type]), *args, **kwargs) | ||||||
					Loading…
					
					
				
		Reference in new issue