Skip to content

DepthAI 3.8.0: getModelFromZoo() fails in official examples despite working Internet connection #851

Description

@Wangzr1222

Environment

  • OS: Windows 10 x64
  • Python: 3.10.20 (Anaconda)
  • depthai: 3.8.0
  • depthai-nodes: latest
  • oak-examples: latest main
  • Commit: f07aa4043ac188509ee06844a943bf6b2dd8fbc2
  • Device: OAK-D (Platform.RVC2)

Problem

The official examples fail when calling dai.getModelFromZoo().

I tested the following official examples:

  • apps/default-app
  • neural-networks/generic-example

Both fail at exactly the same line:

nn_archive = dai.NNArchive(dai.getModelFromZoo(model_description))

with the following error:

RuntimeError: Model not available. No internet connection available.
Could not connect to host:
https://easyml.cloud.luxonis.com/models/api/v1/health/

What I have verified

I have checked the following:

  • Internet connection is working normally.
  • The OAK device is detected correctly.
  • The YAML model description is loaded successfully.
  • curl can access the health endpoint.
  • Python requests can also access the same endpoint.
  • OpenSSL and certifi are installed and working correctly.
  • No HTTP/HTTPS proxy is configured.
  • The same error occurs in multiple official examples, so it does not appear to be application-specific.

curl

curl https://easyml.cloud.luxonis.com/models/api/v1/health/

returns

{"version":"development"}

Python requests

import requests

r = requests.get("https://easyml.cloud.luxonis.com/models/api/v1/health/")
print(r.status_code)
print(r.text)

returns

200
{"version":"development"}

YAML loading

The YAML file loads successfully:

model_description = dai.NNModelDescription.fromYamlFile(
    "./depthai_models/yolov6_nano_r2_coco.RVC2.yaml"
)

print(model_description)

Output:

NNModelDescription [
  model: luxonis/yolov6-nano:r2-coco-512x288
  platform: RVC2
]

The failure only happens when calling:

dai.getModelFromZoo(model_description)

Additional observation

I also tested the API manually.

The health endpoint works:

curl https://easyml.cloud.luxonis.com/models/api/v1/health/

However,

curl "https://easyml.cloud.luxonis.com/models/api/v1/models/luxonis/yolov6-nano:r2-coco-512x288"

returns

{"detail":"Not Found"}

Could this indicate that the model name or the Model Zoo API has changed?

Expected behavior

The official examples should automatically download the required model and run successfully.

Actual behavior

dai.getModelFromZoo() always throws

Model not available.
No internet connection available.

even though the machine has working Internet access.

Could you please help determine whether this is a Model Zoo API issue or a bug in getModelFromZoo()?

Thank you!

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions