This following small example gives different results on different runs. And the results are also not correct.
Am I using it incorrectly?
import tvm
from tvm import relay
data = relay.var("data", shape=(3,), dtype="int32")
out = relay.one_hot(data, tvm.relay.const(1.0, "float32"), tvm.relay.const(0.0, "float32"), depth=3,
dtype="float32", axis=-1)
print(out)
func = relay.Function([data], out)
mod = tvm.IRModule.from_expr(func)
target = 'llvm'
with relay.build_config(opt_level=3):
graph, lib, params = relay.build_module.build(mod, target=target, params=None)
from tvm.contrib import graph_runtime
rt_mod = graph_runtime.create(graph, lib, ctx=tvm.cpu(0))
import numpy as np
np_data = np.array([0, 1, 2]).astype("float32")
rt_mod.set_input("data", np_data)
rt_mod.run()
my_o = rt_mod.get_output(0).asnumpy()
print(my_o)