Thanks for sharing. The failure is while calling tune_graph. The graph tuning assumes the data to be float32. Additionally, last time I tried, the graph tuning cant work with QNN ops. One way to handle this is to call QnnCanonilcalize (python/tvm/relay/qnn/transform.py) before calling graph tuning. But, ideally, the graph tuning should be changed to support qnn ops as well.
I would suggest skipping the tune_graph for now .