Hi, during inference using the YOLOv12 v1 model with Ultralytics, everything functions properly. However, when I switch to the YOLOv12 Turbo model, the following error is reported.
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\engine\model.py", line 185, in __call__
return self.predict(source, stream, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\engine\model.py", line 555, in predict
return self.predictor.predict_cli(source=source) if is_cli else self.predictor(source=source, stream=stream)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\engine\predictor.py", line 218, in __call__
return list(self.stream_inference(source, model, *args, **kwargs)) # merge list of Result into one
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\utils\_contextlib.py", line 36, in generator_context
response = gen.send(None)
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\engine\predictor.py", line 299, in stream_inference
self.model.warmup(
~~~~~~~~~~~~~~~~~^
imgsz=(1 if self.model.pt or self.model.triton else self.dataset.bs, self.model.ch, *self.imgsz)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\nn\autobackend.py", line 808, in warmup
self.forward(im) # warmup
~~~~~~~~~~~~^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\nn\autobackend.py", line 592, in forward
y = self.model(im, augment=augment, visualize=visualize, embed=embed, **kwargs)
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\module.py", line 1751, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\module.py", line 1762, in _call_impl
return forward_call(*args, **kwargs)
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\nn\tasks.py", line 115, in forward
return self.predict(x, *args, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\nn\tasks.py", line 133, in predict
return self._predict_once(x, profile, visualize, embed)
~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\nn\tasks.py", line 156, in _predict_once
x = m(x) # run
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\module.py", line 1751, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\module.py", line 1762, in _call_impl
return forward_call(*args, **kwargs)
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\nn\modules\block.py", line 1873, in forward
y.extend(m(y[-1]) for m in self.m)
~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\nn\modules\block.py", line 1873, in <genexpr>
y.extend(m(y[-1]) for m in self.m)
~^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\module.py", line 1751, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\module.py", line 1762, in _call_impl
return forward_call(*args, **kwargs)
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\container.py", line 240, in forward
input = module(input)
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\module.py", line 1751, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\module.py", line 1762, in _call_impl
return forward_call(*args, **kwargs)
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\nn\modules\block.py", line 1803, in forward
x = x + self.attn(x)
~~~~~~~~~^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\module.py", line 1751, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\module.py", line 1762, in _call_impl
return forward_call(*args, **kwargs)
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\ultralytics\nn\modules\block.py", line 1712, in forward
qkv = self.qkv(x).flatten(2).transpose(1, 2)
^^^^^^^^
File "C:\Users\destiny\miniconda3\envs\ultralytics\Lib\site-packages\torch\nn\modules\module.py", line 1940, in __getattr__
raise AttributeError(
f"'{type(self).__name__}' object has no attribute '{name}'"
)
AttributeError: 'AAttn' object has no attribute 'qkv'. Did you mean: 'qk'?
Hi, during inference using the YOLOv12 v1 model with Ultralytics, everything functions properly. However, when I switch to the YOLOv12 Turbo model, the following error is reported.