OpenVINO™ C# API 3.3 全新发布!正式接入 OpenVINO GenAI,C# 本地大模型开发全面启航!

发布时间:2026/6/30 6:54:35
OpenVINO™ C# API 3.3 全新发布!正式接入 OpenVINO GenAI,C# 本地大模型开发全面启航! penVINO C# API 3.2 主要解决的是C# 如何稳定、完整地调用 OpenVINO 做传统推理。到了 3.3项目继续保留这条主线同时把能力边界向 GenAI 扩展。3.3 的升级重点可以概括为正式接入 OpenVINO GenAI新增OpenVinoSharp.GenAI命名空间开始覆盖 LLM、Whisper、VLM 等生成式 AI pipeline。C# 直接调用本地大模型不再必须绕 Python 服务也不需要把模型推理拆到外部脚本中。GenAI runtime NuGet 化通过JYPPX.OpenVINO.GenAI.runtime.*管理 native runtime减少手动拷 DLL 的部署成本。传统推理保持稳定只使用Core、Model、CompiledModel、InferRequest的老项目不会强制加载 GenAI runtime。示例和文章同步补齐新增samples/GenAI并提供文本生成、Whisper、VLM 三类可复现实战文章。全目标框架继续覆盖从net46到net10.0兼顾老项目和新项目。适用读者读者类型阅读重点预期收益3.2 老用户是否兼容、是否必须安装 GenAI runtime判断升级风险和迁移路径C# AI 开发者LLM、Whisper、VLM 如何进入 .NET 项目快速了解 3.3 的新能力桌面/工业软件开发者离线部署、runtime 管理、本地推理评估是否能接入现有业务技术负责人包支持平台、示例完整度、后续教程判断技术选型和落地成本新用户项目定位、NuGet 安装、示例入口建立对 OpenVINO C# API 的整体认知阅读建议想快速了解版本价值先看【一句话总结】和【核心亮点抢先看】。想知道新增了哪些功能重点看【3.3 核心亮点详解】。已经在使用 3.2重点看【老项目是否需要担心】和后续迁移文章。想立即运行示例可以从本文的 TinyLlama 快速体验开始再阅读第 2 篇文本生成教程。 核心亮点抢先看┌─────────────────────────────────────────────────────────────────────────────┐ │ OpenVINO™ C# API 3.3 核心亮点 │ ├─────────────────────────────────────────────────────────────────────────────┤ │ GenAI 正式接入 新增 OpenVinoSharp.GenAIC# 直接调用本地生成式 AI │ │ LLM 文本生成 支持 Greedy、Beam Search、Sampling、Streaming、Chat │ │ Whisper 语音识别 支持本地 WAV 转写、语言设置和时间戳分段 │ │ VLM 图文问答 支持图片 Tensor Prompt 的视觉语言模型调用 │ │ Runtime NuGet GenAI runtime 平台包发布减少手动部署 native DLL │ │ 老项目友好 传统推理不强制加载 GenAI runtime可按需升级 │ │ 全框架覆盖 net46 到 net10.0兼顾 .NET Framework 与现代 .NET │ └─────────────────────────────────────────────────────────────────────────────┘ 写在前面C# 本地大模型开发终于可以更自然了在很多真实项目里C# 仍然是主力工程语言桌面软件、工业上位机、视觉检测系统、企业内网工具、ASP.NET Core 服务、边缘设备应用都大量运行在 .NET 生态里。过去当这些项目想接入大模型能力时常见做法是C# 程序调用 Python 服务通过命令行脚本间接运行模型把推理逻辑拆到另一个进程或者手动封装 native DLL自己处理依赖加载。这些方案能用但工程成本不低。服务部署、进程通信、模型路径、运行时依赖、日志排错、版本锁定都会变成额外工作。OpenVINO C# API 3.3 的目标就是让 C# 开发者可以用更贴近 .NET 工程习惯的方式使用 OpenVINO GenAI。C# 应用代码 ↓ OpenVinoSharp.GenAI ↓ OpenVINO GenAI runtime ↓ 本地 LLM / Whisper / VLM 模型你仍然写 C#仍然通过 NuGet 管理包仍然用using管理资源只是在 3.3 中文本生成、语音识别、图文问答这些 GenAI 能力开始进入同一个 API 体系。 一句话总结OpenVINO C# API 3.3 3.2 的稳定传统推理能力 OpenVINO GenAI 托管封装 GenAI runtime NuGet 平台包 LLM / Whisper / VLM 示例工程 面向 C# 开发者的完整教程系列如果说 3.2 是一次“传统推理能力的全栈强化”那么 3.3 就是一次“从传统推理走向本地 GenAI 应用”的关键升级。 3.2 与 3.3 对比一览能力维度OpenVINO C# API 3.2OpenVINO C# API 3.3升级价值项目定位传统 OpenVINO 推理封装核心推理 GenAI 能力入口⭐⭐⭐⭐⭐GenAI 支持未系统覆盖新增OpenVinoSharp.GenAI⭐⭐⭐⭐⭐LLM 文本生成无完整 C# 示例Greedy、Beam、Sampling、Streaming、Chat⭐⭐⭐⭐⭐Whisper 语音识别未覆盖新增 Whisper pipeline 示例⭐⭐⭐⭐VLM 图文问答未覆盖新增图片 文本 prompt 示例⭐⭐⭐⭐runtime 管理基础OpenVINO.runtime.*新增JYPPX.OpenVINO.GenAI.runtime.*⭐⭐⭐⭐⭐老项目兼容支持传统推理传统推理继续稳定GenAI 按需启用⭐⭐⭐⭐⭐示例体系YOLO 等传统示例新增samples/GenAI示例树⭐⭐⭐⭐⭐文档教程安装、API、传统案例增加 GenAI 系列实战文章⭐⭐⭐⭐⭐目标框架覆盖 .NET Framework 与现代 .NET继续覆盖net46到net10.0⭐⭐⭐⭐⭐✨ 3.3 核心亮点详解1️⃣ 正式接入 OpenVINO GenAIC# 不再只是传统推理入口3.3 新增了OpenVinoSharp.GenAI命名空间把 OpenVINO GenAI C API 的核心能力封装成 C# 类型。主要新增类型包括类作用GenAIGenAI runtime 初始化与可用性检查GenerationConfig文本生成配置LLMPipelineLLM 文本生成 pipelineDecodedResults文本生成结果PerformanceMetrics性能指标WhisperPipelineWhisper 语音识别 pipelineWhisperGenerationConfigWhisper 生成配置WhisperDecodedResultsWhisper 识别结果VLMPipeline视觉语言模型 pipelineVLMDecodedResultsVLM 输出结果最小文本生成代码大致如下using OpenVinoSharp.GenAI; using GenerationConfig config new(); config.SetMaxNewTokens(64); using LLMPipeline pipeline new(modelDir, CPU); using DecodedResults results pipeline.Generate(What is OpenVINO?, config); Console.WriteLine(results.GetText());这段代码展示了 3.3 最核心的体验C# 对象 NuGet runtime 本地模型目录 using资源管理。后续第 2 篇文章会专门展开 LLM 文本生成包括 Greedy、Beam Search、Multinomial Sampling、Streaming 和 Chat。2️⃣ LLM 文本生成从 smoke test 到聊天应用的基础能力3.3 新增的文本生成示例覆盖多个典型场景示例场景Greedy稳定、确定性的文本生成适合 smoke testBeamSearch多候选路径搜索适合更稳定的生成任务Multinomialtemperature、top-p、top-k 采样适合开放式输出Streaming逐 token 输出适合聊天窗口和长文本生成Chat支持交互式输入和--turn脚本化对话Benchmark输出 TTFT、TPOT、吞吐等性能指标其中Chat示例已经加入中文 prompt 验证路径适合自动化测试dotnet run --project samples/GenAI/TextGeneration/Chat/Chat.csproj --framework net8.0 -- --model E:\LlmModel\TinyLlama-1.1B-Chat-v1.0-int4-ov --device CPU --turn 请用中文列出三个 OpenVINO 关键词。需要注意的是C# 编码链路能正确传递中文并不代表所有模型都有稳定中文能力。TinyLlama 适合作为轻量验证模型正式中文应用建议选择中文或多语能力更强的 OpenVINO 模型。3️⃣ Whisper 语音识别本地音频转写进入 .NET 应用3.3 新增WhisperPipeline示例演示如何在 C# 中加载 OpenVINO 格式 Whisper 模型把 16 kHz mono WAV 转成文本并输出时间戳分段。典型调用流程float[] samples WavFile.ReadMonoFloat(audio, 16000); using WhisperPipeline pipeline new(model, device); using WhisperGenerationConfig config pipeline.GetGenerationConfig(); config.SetLanguage(|en|); config.SetTask(transcribe); config.SetReturnTimestamps(true); using WhisperDecodedResults results pipeline.Generate(samples, config); Console.WriteLine(results.GetString());这个能力适合离线语音识别会议音频预处理桌面软件语音输入工业现场本地转写内网环境下不出网的语音文本化。第 3 篇文章会详细讲模型准备、音频转换、WAV 读取、timestamp chunks 和常见错误。4️⃣ VLM 视觉语言问答图片 Prompt 的多模态入口3.3 也新增了 VLM 示例用 C# 把图片加载成 OpenVINOTensor再和文本 prompt 一起送入VLMPipeline。核心代码大致如下using Tensor imageTensor ImageTensorLoader.LoadRgbTensor(image); using GenerationConfig config GenAISample.CreateTextConfig(maxNewTokens); using VLMPipeline pipeline new(model, device); using VLMDecodedResults results pipeline.Generate( prompt, new[] { imageTensor }, config); Console.WriteLine(results.GetText());这个方向可以扩展到图片内容描述工业检测结果解释文档截图理解设备状态问答本地多模态助手。第 4 篇文章会进一步讲图片 Tensor、RGB BMP/PPM 输入、中文 VLM prompt 和交互式问答。5️⃣ GenAI Runtime NuGet部署不再靠手动拷 DLLOpenVINO GenAI 不是只有一个openvino_genai_c.dll。一个正常运行的 GenAI 应用还需要 OpenVINO core runtime、tokenizers、plugins、frontends、TBB 等 native 依赖。3.3 对使用者最直接的改进是GenAI runtime 可以通过平台 NuGet 包引入。Windows GenAI 项目示例ItemGroup PackageReference IncludeJYPPX.OpenVINO.CSharp.API Version3.3.0 / PackageReference IncludeJYPPX.OpenVINO.GenAI.runtime.win Version2026.2.0 / /ItemGroup当前2026.2.0GenAI runtime 包覆盖平台GenAI runtime 包Windows x64JYPPX.OpenVINO.GenAI.runtime.winUbuntu 24 x64JYPPX.OpenVINO.GenAI.runtime.ubuntu.24-x86_64Ubuntu 22 x64JYPPX.OpenVINO.GenAI.runtime.ubuntu.22-x86_64Ubuntu 22 ARM64JYPPX.OpenVINO.GenAI.runtime.ubuntu.22-arm64RHEL 8 x64JYPPX.OpenVINO.GenAI.runtime.rhel8-x86_64macOS ARM64JYPPX.OpenVINO.GenAI.runtime.macos-arm64如果项目需要 GenAI通常使用对应平台的JYPPX.OpenVINO.GenAI.runtime.*即可。GenAI runtime 包已经包含 GenAI 所需的 OpenVINO native 依赖不建议在同一个项目里再同时引用基础OpenVINO.runtime.*包。第 5 篇文章会专门讲平台包怎么选、必要 DLL 有哪些、常见加载错误怎么排查。6️⃣ 老项目友好传统推理不被 GenAI 绑架3.3 不是一次“强制所有项目接入 GenAI”的升级。如果你的项目只使用传统 OpenVINO 推理例如CoreModelTensorCompiledModelInferRequest那么仍然可以只安装基础 runtimeItemGroup PackageReference IncludeJYPPX.OpenVINO.CSharp.API Version3.3.0 / PackageReference IncludeOpenVINO.runtime.win Version2026.2.0 / /ItemGroup只有当项目调用OpenVinoSharp.GenAI下的 API 时才需要切换到对应平台的 GenAI runtime 包。这对 3.2 老用户很关键你可以先升级 API 包验证原有推理路径稳定再决定是否引入 GenAI。7️⃣ 全框架覆盖从 .NET Framework 4.6 到 .NET 10.0JYPPX.OpenVINO.CSharp.API3.3.0 同时打包以下目标框架net46 net461 net462 net47 net471 net472 net48 net481 netcoreapp3.1 net5.0 net6.0 net7.0 net8.0 net9.0 net10.0这意味着老的 .NET Framework 桌面项目可以继续升级新项目可以直接使用 .NET 8、.NET 9、.NET 10同一套 API 包可以覆盖更多企业项目和边缘部署场景。 示例体系新增samples/GenAI3.3 新增完整的 GenAI 示例目录samples/GenAI ├── Common ├── TextGeneration │ ├── Greedy │ ├── BeamSearch │ ├── Multinomial │ ├── Streaming │ ├── Chat │ └── Benchmark ├── WhisperSpeechRecognition ├── VisualLanguageChat ├── README.md ├── RUNBOOK.md └── RunAllSamples.ps1这些示例不是空壳 demo而是配套了公共参数解析runtime 可用性检查WAV 读取BMP/PPM 图片 Tensor 加载性能指标打印批量验证脚本中文 prompt 自动化验证。本地完整验证脚本会依次运行 LLM、Chat、Whisper、VLM 等多个场景并保存日志便于文章复现和 CI 验证。⚡ 快速体验TinyLlama 文本生成准备模型路径cd E:\GitSpace\OpenVINO-CSharp-API-csharp3.3\OpenVINO-CSharp-API $modelRoot E:\LlmModel $llm Join-Path $modelRoot TinyLlama-1.1B-Chat-v1.0-int4-ov运行 Greedy 示例dotnet run --project samples/GenAI/TextGeneration/Greedy/Greedy.csproj --framework net8.0 -- --model $llm --device CPU --prompt What is OpenVINO? --max-new-tokens 24本机实测输出示例会输出生成文本和性能指标包括 load time、TTFT、TPOT、throughput 等方便后续做设备对比、版本验证和参数调优。 适合哪些项目关注OpenVINO C# API 3.3 尤其适合这些方向C# 桌面 AI 助手工业视觉系统中的本地文本解释离线语音识别工具内网知识库前端本地多模态问答应用需要固定 runtime 版本的企业级部署已经使用 OpenVINO C# API 3.2 的老项目。如果你的项目本来就在 .NET 生态中又希望把本地 AI 能力接进来3.3 会比“C# 调 Python 服务”更接近工程化方案。⚠️ 已知说明当前阶段仍有一些需要说明的地方GenAI runtime 多平台包依赖上游 OpenVINO GenAI 官方发布物情况。VLM 输出对模型、图片和 runtime 组合更敏感正式演示建议使用语义明确的真实图片。RAG、图像生成、视频生成等 pipeline 尚未作为 C# 示例加入。传统核心推理仍保持主线能力GenAI 不会强制影响传统项目。这些内容会在后续 runtime 使用指南和迁移文章中展开。 总结从传统推理封装迈向 .NET 本地 AI 工具箱OpenVINO C# API 3.3 的价值可以概括为三点它把 OpenVINO GenAI 正式带进 C#/.NET 生态。它让 LLM、Whisper、VLM 有了可运行、可教学、可迁移的示例工程。它通过可选 runtime 设计让 3.2 老项目可以平滑升级。从 3.2 到 3.3OpenVINO C# API 不再只是传统推理封装而是在向完整的.NET 本地 AI 工具箱演进。下一篇我们从最容易跑通、最适合展示的场景开始用 C# 调用 TinyLlama完成第一个 OpenVINO GenAI 文本生成示例。 更多资源资源链接 完整文档https://guojin-yan.github.io/OpenVINO-CSharp-API 示例代码https://github.com/guojin-yan/OpenVINO-CSharp-API/tree/csharp3.3/samples NuGet 包https://www.nuget.org/packages/JYPPX.OpenVINO.CSharp.API 问题反馈https://github.com/guojin-yan/OpenVINO-CSharp-API/issues 技术交流QQ群945057948软件声明1. 开源协议声明作者所有开源项目代码均遵循Apache License 2.0开源协议。特别说明本项目集成了若干第三方库。若任何第三方库的许可协议与 Apache 2.0 协议存在冲突或不一致均以该第三方库的原始许可协议为准。本项目不包含也不代表这些第三方库的授权声明使用前请务必阅读并遵守第三方库的相关许可。2. 代码开发与质量说明AI 辅助开发本代码在开发过程中使用了人工智能AI辅助生成与优化并非完全由人工逐行编写。安全性承诺作者郑重声明本代码中绝无任何有意设置的后门、病毒、木马或旨在破坏用户设备、窃取数据的恶意代码。技术局限性受限于作者个人的技术水平与能力代码中可能存在因逻辑不严谨、优化不足或经验欠缺导致的低级问题例如但不限于内存泄漏、偶发崩溃、资源未释放等。这些问题纯属能力不足所致并非主观故意。测试范围由于作者精力有限未对本软件进行全方位、覆盖所有边缘场景的完整测试。