Guidance on Supporting Custom Models Outside the Hailo Model Zoo

Dear Hailo Team and Community,

I am currently working on a project involving a custom-trained YOLOv8 variant (YOLOv8p2), which I aim to compile and deploy on the Hailo AI accelerator. However, I have encountered challenges as this specific variant is not included in the official Hailo model zoo, and I was unable to advance despite consulting the documentation and following the provided tutorials.

The YOLOv8p2 variant, while having a different architecture, performs the same fundamental neural network operations as the standard YOLOv8 model. Given these similarities, I believe adapting such models for Hailo should theoretically be feasible without extensive changes.

I would greatly appreciate your guidance on the following:

  1. Adapting Unsupported Models: Is there an established process or best practices for adapting models outside the Hailo model zoo for compilation and deployment on the Hailo accelerator?
  2. Customization of Model Configurations: Can you provide insights into customizing YAML configurations or other necessary adjustments to enable support for model variants like YOLOv8p2?
  3. Future Support for Custom Models: Are there plans to enhance flexibility in the DFC or expand support for custom models and variants in future updates?

I am particularly interested in understanding how to bridge the gap between the existing Hailo-supported models and custom architectures like YOLOv8p2 to leverage the accelerator’s impressive performance capabilities for this project.

Thank you in advance for your assistance and recommendations.

Best regards,
Shay

Welcome to the Hailo Community!

I would recommend to run trough the tutorials in the Hailo AI Software Suite to understand how to convert custom models. Run the following command:

hailo tutorial

This will start a Jupyter notebook server with notebooks for each step of the model conversion workflow.

The steps in the conversion process are the same (parse, optimize and compile). However they will require some more input from your side to successfully convert a model. On the other hand you will be able to convert your own custom model.

While you can add your own models to the Model Zoo with adding your own YAML and ALLS files, I recommend to follow the standard Hailo Dataflow Compiler flow explained in the tutorials. It is more flexible and allows you to include other functions into your workflow.

Please try the tutorials and see whether you will need any additional flexibility. And yes, we are working on enhanced features coming with future versions of the DFC. For instance we have a preview of a GUI.

Inside the suite you can try it with:

hailo dfc-studio

It currently support the parsing step only.