在C#中部署ONNX模型有幾種方法,其中一種常見的方法是使用Microsoft.ML.OnnxRuntime庫。以下是一個簡單的示例代碼來加載并運行ONNX模型:
using System;
using Microsoft.ML.OnnxRuntime;
class Program
{
static void Main()
{
// 加載ONNX模型
var onnxModelPath = "model.onnx";
var session = new InferenceSession(onnxModelPath);
// 準備輸入數據
var input = new float[] { 1.0f, 2.0f, 3.0f, 4.0f };
var inputTensor = new DenseTensor<float>(input, new[] { 1, 4 });
// 運行模型進行推理
var inputName = session.InputMetadata.Keys.First();
var inputContainer = new List<NamedOnnxValue> { NamedOnnxValue.CreateFromTensor(inputName, inputTensor) };
using (var results = session.Run(inputContainer))
{
var outputName = results.First().Key;
var outputTensor = results.First().Value as DenseTensor<float>;
// 獲取輸出結果
var output = outputTensor.ToArray();
Console.WriteLine($"Output: {string.Join(", ", output)}");
}
}
}
在這個示例中,我們首先加載了一個ONNX模型,然后準備輸入數據并運行模型進行推理。最后,我們獲取了模型的輸出結果并打印出來。這只是一個簡單的示例,實際中可能還需要根據模型的具體需求進行更多的配置和處理。