跳到主要内容

属性

元数据只读,从会话头解析一次缓存。调用方零配置、禁止填写。缺席:字符串空、数值 0、列表空,不编默认值。

属性

类别属性类型访问说明
任务Taskstring只读任务短名(detect / classify / segment / pose / ocr / anomaly)。缺席为空串
LabelsIReadOnlyList<string>只读类别标签。缺席为空列表,永不 null
输入尺寸InputWidthuint只读模型输入宽。0 = 容器头未写 / 未知
InputHeightuint只读模型输入高。0 = 容器头未写 / 未知
InputChannelsuint只读模型输入通道。0 = 容器头未写 / 未知
Layoutstring只读张量布局(NCHW / NHWC)。缺席为空串
载荷与 ProviderPayloadKindstring只读载荷类型(onnx / paddle / trt-engine / openvino / rknn)。缺席为空串。Windows 上 rknn 打不开会话
ProviderIdstring只读实际选中的 Provider(不是 prefer 入参)。缺席为空串
Encryptedbool只读是否加密容器会话。明文模型为 false

Task

public string Task { get; }

任务短名(detect / classify / segment / pose / ocr / anomaly)。缺席为空串。

示例:

Console.WriteLine(session.Task);

Labels

public IReadOnlyList<string> Labels { get; }

类别标签。缺席为空列表,永不 null

示例:

foreach (string label in session.Labels)
Console.WriteLine(label);

InputWidth

public uint InputWidth { get; }

模型输入宽。0 = 容器头未写 / 未知。

InputHeight

public uint InputHeight { get; }

模型输入高。0 = 容器头未写 / 未知。

InputChannels

public uint InputChannels { get; }

模型输入通道。0 = 容器头未写 / 未知。

Layout

public string Layout { get; }

张量布局(NCHW / NHWC)。缺席为空串。

PayloadKind

public string PayloadKind { get; }

载荷类型(onnx / paddle / trt-engine / openvino / rknn)。缺席为空串。Windows 上 rknn 打不开会话。

ProviderId

public string ProviderId { get; }

实际选中的 Provider(不是 preferProvider 入参)。缺席为空串。

Encrypted

public bool Encrypted { get; }

是否加密容器会话。明文模型为 false

示例:

using var session = AiSession.Open("model.darmodel", keyPath: "model.darmkey");
Console.WriteLine($"task={session.Task} provider={session.ProviderId}");
Console.WriteLine($"input={session.InputWidth}x{session.InputHeight}x{session.InputChannels} {session.Layout}");

元信息

MetaJson()

public string MetaJson()

会话元信息 JSON。首次向 native 取一次并缓存;之后只读托管副本。无需调用方释放。

返回值:

  • string — camelCase 派生视图 JSON
备注

日常读任务 / 尺寸 / Provider 用上面的属性。需要整段 JSON 再调本方法。

示例:

string json = session.MetaJson();