MoonBit bindings for ONNX Runtime Web
moon add OJII3/onnxruntime_web
pnpm add onnxruntime-web @ojii3/onnxruntime-web-mbt@link:./.mooncakes/OJII3/onnxruntime_web/jsimport {
"OJII3/onnxruntime_web",
}async fn main {
let session = @onnxruntime_web.InferenceSession::create(
"./model.onnx",
execution_providers=["webgpu"],
)
let input = @onnxruntime_web.Tensor::float32([1.0, 2.0, 3.0, 4.0], [1, 4])
let outputs = session.run([("input", input)])
let scores = outputs[0].float32_data()
session.release()
}nix develop
moon info
moon fmt
moon build --target js#external
pub type InferenceSessionasync fn InferenceSession::create(model_path : String, execution_providers? : FixedArray[String]) -> InferenceSessionasync fn InferenceSession::run(self : InferenceSession, feeds : FixedArray[(String, Tensor)]) -> FixedArray[Tensor]