我有以下java代码:
try (OrtEnvironment env = OrtEnvironment.getEnvironment();
OrtSession.SessionOptions opts = new OrtSession.SessionOptions()) {
opts.setOptimizationLevel(OrtSession.SessionOptions.OptLevel.BASIC_OPT);
try (OrtSession session = env.createSession("model.onnx", opts)) {
OnnxTensor.createTensor(env, 10.0f);
}
}
我想创建一个浮点值的OnnxTensor。我得到了下面的Exception:
Exception in thread "main" ai.onnxruntime.OrtException: Cannot convert class java.lang.Float to an OnnxTensor.
at ai.onnxruntime.TensorInfo.constructFromJavaArray(TensorInfo.java:208)
at ai.onnxruntime.OnnxTensor.createTensor(OnnxTensor.java:330)
at ai.onnxruntime.OnnxTensor.createTensor(OnnxTensor.java:314)
1条答案
按热度按时间7hiiyaii1#
我认为这是一个老问题。示例代码可以使用当前版本的onnxruntime API(1.14.0)。
……
var myTensor = OnnxTensor.createTensor(env,10.0f);
System.out.println();
输出:OnnxTensor(info=TensorInfo(javaType=FLOAT,onnxType=ONNX_TENSOR_ELEMENT_DATA_TYPE_FLOAT,shape=[]))