我在上传 app.py 和requirements.txt 后遇到创建空间的问题。为了加载模型,我使用以下代码:from ultralyticsplus import YOLO, render_result。 (我使用 Gradio 创建网站。)
上传app.py到空间的主要任务是我希望将HTML代码嵌入到Google网站上。
model_path = ('(my model path on huggingface')
model = YOLO(model_path)
如果我使用其他方法来加载模型而不是使用YOLO,是否可以修复此错误?
错误说
Traceback (most recent call last):
File "/usr/local/lib/python3.10/site-packages/ultralyticsplus/ultralytics_utils.py", line 59, in __init__
self._load_from_hf_hub(model, hf_token=hf_token)
File "/usr/local/lib/python3.10/site-packages/ultralyticsplus/ultralytics_utils.py", line 91, in _load_from_hf_hub
) = self._assign_ops_from_task()
File "/usr/local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1614, in __getattr__
raise AttributeError("'{}' object has no attribute '{}'".format(
AttributeError: 'YOLO' object has no attribute '_assign_ops_from_task'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/user/app/app.py", line 95, in <module>
gr.Interface(fn=detect_objects,
File "/usr/local/lib/python3.10/site-packages/gradio/interface.py", line 518, in __init__
self.render_examples()
File "/usr/local/lib/python3.10/site-packages/gradio/interface.py", line 851, in render_examples
self.examples_handler = Examples(
File "/usr/local/lib/python3.10/site-packages/gradio/helpers.py", line 71, in create_examples
examples_obj.create()
File "/usr/local/lib/python3.10/site-packages/gradio/helpers.py", line 298, in create
client_utils.synchronize_async(self.cache)
File "/usr/local/lib/python3.10/site-packages/gradio_client/utils.py", line 889, in synchronize_async
return fsspec.asyn.sync(fsspec.asyn.get_loop(), func, *args, **kwargs) # type: ignore
File "/usr/local/lib/python3.10/site-packages/fsspec/asyn.py", line 103, in sync
raise return_result
File "/usr/local/lib/python3.10/site-packages/fsspec/asyn.py", line 56, in _runner
result[0] = await coro
File "/usr/local/lib/python3.10/site-packages/gradio/helpers.py", line 360, in cache
prediction = await Context.root_block.process_api(
File "/usr/local/lib/python3.10/site-packages/gradio/blocks.py", line 1695, in process_api
result = await self.call_function(
File "/usr/local/lib/python3.10/site-packages/gradio/blocks.py", line 1235, in call_function
prediction = await anyio.to_thread.run_sync(
File "/usr/local/lib/python3.10/site-packages/anyio/to_thread.py", line 56, in run_sync
return await get_async_backend().run_sync_in_worker_thread(
File "/usr/local/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 2144, in run_sync_in_worker_thread
return await future
File "/usr/local/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 851, in run
result = context.run(func, *args)
File "/usr/local/lib/python3.10/site-packages/gradio/utils.py", line 692, in wrapper
response = f(*args, **kwargs)
File "/home/user/app/app.py", line 24, in detect_objects
model = YOLO(model_path)
File "/usr/local/lib/python3.10/site-packages/ultralyticsplus/ultralytics_utils.py", line 65, in __init__
raise NotImplementedError(
NotImplementedError: Unable to load model='MvitHYF/v8mvitcocoaseed2024'. As an example try model='yolov8n.pt' or model='yolov8n.yaml'
我还在 VSCode 上运行了 app.py,一切都运行得很完美(在本地主机上运行)。但是,我在尝试创建空间时遇到了此错误。我尝试将 yolov8n.pt 添加到模型和空间站点,但没有任何变化。起初,我认为这可能会修复错误。
谢谢你的帮助
更新: 对于那些像我一样面临这个问题的人。我找到了解决方案。如果您想将ML模型部署到huggingface的空间,您需要上传requirement.txt。是的,requirement.txt 就是问题所在。我们不需要指定每个库的版本。例如,gradio==4.22.0,您可以写“gradio”而不是特定版本。
希望这有帮助