C# SDK 概述
命名空间是 Darra.AI.Runtime。
调用返回 AiResult 结果壳,失败不抛异常。
AiResult 可以隐式转成 bool,也可以就地判 IsSuccess,失败读结果里的错误码。
安装
公共 NuGet 没有这个包。
把正式交付的 Darra.AI.Runtime.1.0.0.nupkg 放进应用目录下的 packages 文件夹。
再从本地源安装。
程序集名是 Darra.AI.Runtime。
Install-Package Darra.AI.Runtime -Version 1.0.0 -Source .\packages
dotnet add package Darra.AI.Runtime --version 1.0.0 --source ./packages
包内必须带 runtimes/win-x64/native/Core.dll,缺了它只能编译,跑不了推理。
也可以直接引用 DLL:取 Darra.AI.Runtime.dll 与同目录的 Darra.AI.Runtime.xml(有 XML 才有代码提示),Core.dll 随应用交付。
或者设环境变量 DARRA_AI_CORE_PATH,指向库文件或它所在的目录。
Windows 也接受 DarraAI.Core.dll 这个名字。
<Reference Include="Darra.AI.Runtime">
<HintPath>lib\Darra.AI.Runtime.dll</HintPath>
</Reference>
环境要求
- 运行时: .NET 8,进程 x64
- 系统: Windows x64。edge-rknn 仅 linux-arm64
快速开始
using Darra.AI.Runtime;
var ai = new Model("model.darmodel");
var r = ai.Open();
if (!r.IsSuccess) { Console.WriteLine(r.Message); return; }
var inf = ai.InferFile("a.jpg");
if (inf.IsSuccess)
{
foreach (var item in inf.Content.Items)
Console.WriteLine(item.Label + " " + item.Score);
}
ai.Close();
.onnx 与 .darmodel 走同一个 Open(string password = null),密码可给可不给。
高级接口
- Session:推理会话,一份已加载模型 + 一个已选定 Provider,
IDisposable。 - Pool:同模型推理池,一个模型开 1..32 路 worker 并发跑推理。
- Runtime:查版本、查本地环境、做诊断。