news 2026/4/17 21:30:43

【C#程序员入门AI】环境一键搭建:.NET 8+AI开发环境(Semantic Kernel/ML.NET/ONNX Runtime)配置

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【C#程序员入门AI】环境一键搭建:.NET 8+AI开发环境(Semantic Kernel/ML.NET/ONNX Runtime)配置

文章目录

      • 🚀 开篇唠两句
      • 一、先搞懂:我们要搭啥?(2026最新版)
      • 二、第一步:安装.NET 8 SDK(地基先打好)
        • 1. 下载安装(2026最新版)
        • 2. 可选:安装Visual Studio 2022(推荐)
      • 三、第二步:搭建Semantic Kernel环境(LLM开发核心)
        • 1. 创建SK项目(控制台版,最简单)
        • 2. 安装OpenAI .NET SDK(调用云端大模型)
        • 3. 安装向量库SDK(RAG必备)
        • 4. 快速测试:10行代码调用GPT-4o
      • 四、第三步:搭建ML.NET环境(传统ML开发)
        • 1. 安装ML.NET NuGet包
        • 2. 可选:安装ML.NET Model Builder(Visual Studio专用)
        • 3. 快速测试:ML.NET Hello World(鸢尾花分类)
      • 五、第四步:搭建ONNX Runtime环境(本地模型部署)
        • 1. 安装ONNX Runtime NuGet包
        • 2. 快速测试:运行ResNet50图像分类
      • 六、第五步:可选安装Ollama(本地大模型神器)
        • 1. 下载安装Ollama
        • 2. 运行本地大模型(Llama 3.2)
        • 3. C#调用Ollama(用SK)
      • 七、2026年C# AI环境避坑指南(少走弯路)
      • 🎯 结尾总结
      • 💬 互动一下

目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步。想要系统学习AI知识的朋友可以看看我的教程http://blog.csdn.net/jiangjunshow,教程通俗易懂,风趣幽默,从深度学习基础原理到各领域实战应用都有讲解。

🚀 开篇唠两句

各位C#老铁,上一篇我们画好了2026年C# AI的路线图,今天直接开干——环境一键搭建

C# AI环境搭建主打一个简单、干净、一步到位。这篇用大白话+复制粘贴级命令,带你把.NET 8 + Semantic Kernel + ML.NET + ONNX Runtime 全套AI开发环境搭好,10分钟搞定,直接开写AI代码!


一、先搞懂:我们要搭啥?(2026最新版)

一句话:一套能跑LLM、传统ML、本地模型的C# AI全能环境
核心三件套(必装):

  • .NET 8 SDK:地基,所有C# AI开发的基础
  • Semantic Kernel (SK):大模型调度神器,管LLM、RAG、Agent
  • ML.NET:C#原生机器学习库,做分类、回归、异常检测
  • ONNX Runtime:本地模型运行时,跑Llama、ResNet等预训练模型
  • Ollama(可选):本地大模型管理器,一键跑Llama 3.2、Phi-4

二、第一步:安装.NET 8 SDK(地基先打好)

1. 下载安装(2026最新版)
  • 官网下载:https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0
  • 选择对应系统(Windows/macOS/Linux),一路下一步即可
  • 验证安装:打开终端/CMD,输入
dotnet--version

出现8.0.x版本号,说明安装成功!

2. 可选:安装Visual Studio 2022(推荐)
  • 下载:https://visualstudio.microsoft.com/zh-hans/vs/
  • 安装时勾选.NET桌面开发ASP.NET和Web开发数据存储和处理
  • 好处:自带ML.NET Model Builder可视化工具,调试AI代码更方便

三、第二步:搭建Semantic Kernel环境(LLM开发核心)

1. 创建SK项目(控制台版,最简单)

打开终端,依次输入:

# 创建控制台项目dotnet new console-nCSharpAI_DemocdCSharpAI_Demo# 安装Semantic Kernel最新版(2026稳定版)dotnetaddpackage Microsoft.SemanticKernel--version1.15.0
2. 安装OpenAI .NET SDK(调用云端大模型)
dotnetaddpackage Azure.AI.OpenAI--version1.0.0-beta.14
3. 安装向量库SDK(RAG必备)
# Chroma(轻量本地向量库)dotnetaddpackage Microsoft.SemanticKernel.Connectors.Chroma--version1.15.0# Pinecone(云端向量库,可选)dotnetaddpackage Microsoft.SemanticKernel.Connectors.Pinecone--version1.15.0
4. 快速测试:10行代码调用GPT-4o

打开Program.cs,替换为以下代码(记得替换API Key):

usingMicrosoft.SemanticKernel;usingMicrosoft.SemanticKernel.ChatCompletion;// 1. 构建Kernelvarbuilder=Kernel.CreateBuilder();builder.AddAzureOpenAIChatCompletion("gpt-4o",// 部署名"https://xxx.openai.azure.com/",// 终结点"你的API Key"// 替换为你的Azure OpenAI Key);varkernel=builder.Build();// 2. 获取聊天服务varchat=kernel.GetRequiredService<IChatCompletionService>();varhistory=newChatHistory();history.AddUserMessage("用C#写一个Hello AI程序,2026最新版");// 3. 调用AI并输出结果varresponse=awaitchat.GetChatMessageContentAsync(history);Console.WriteLine("AI回复:"+response.Content);

运行:

dotnet run

看到AI回复,说明SK环境搭建成功!


四、第三步:搭建ML.NET环境(传统ML开发)

1. 安装ML.NET NuGet包
# 回到项目目录cdCSharpAI_Demo# 安装ML.NET核心包dotnetaddpackage Microsoft.ML--version3.0.1# 安装ML.NET自动训练工具(可选,可视化)dotnetaddpackage Microsoft.ML.AutoML--version0.21.0
2. 可选:安装ML.NET Model Builder(Visual Studio专用)
  • 打开Visual Studio → 扩展 → 管理扩展 → 搜索ML.NET Model Builder→ 安装
  • 重启VS后,右键项目 → 添加 → 机器学习,即可可视化训练模型
3. 快速测试:ML.NET Hello World(鸢尾花分类)

创建IrisData.cs

publicclassIrisData{[LoadColumn(0)]publicfloatSepalLength;[LoadColumn(1)]publicfloatSepalWidth;[LoadColumn(2)]publicfloatPetalLength;[LoadColumn(3)]publicfloatPetalWidth;[LoadColumn(4)]publicstringLabel;}publicclassIrisPrediction{[ColumnName("PredictedLabel")]publicstringPredictedSpecies;}

修改Program.cs

usingMicrosoft.ML;// 1. 创建ML上下文varmlContext=newMLContext();// 2. 加载数据(下载鸢尾花数据集:https://archive.ics.uci.edu/ml/datasets/iris)vardata=mlContext.Data.LoadFromTextFile<IrisData>("iris.data",separator:',');// 3. 划分训练集和测试集vartrainTest=mlContext.Data.TrainTestSplit(data,testFraction:0.2);// 4. 构建训练管道varpipeline=mlContext.Transforms.Conversion.MapValueToKey("Label").Append(mlContext.Transforms.Concatenate("Features","SepalLength","SepalWidth","PetalLength","PetalWidth")).Append(mlContext.MulticlassClassification.Trainers.SdcaMaximumEntropy("Label","Features")).Append(mlContext.Transforms.Conversion.MapKeyToValue("PredictedLabel"));// 5. 训练模型varmodel=pipeline.Fit(trainTest.TrainSet);// 6. 评估模型varpredictions=model.Transform(trainTest.TestSet);varmetrics=mlContext.MulticlassClassification.Evaluate(predictions);Console.WriteLine($"准确率:{metrics.MacroAccuracy:P2}");// 7. 预测新数据varpredictor=mlContext.Model.CreatePredictionEngine<IrisData,IrisPrediction>(model);varnewFlower=newIrisData{SepalLength=5.1f,SepalWidth=3.5f,PetalLength=1.4f,PetalWidth=0.2f};varprediction=predictor.Predict(newFlower);Console.WriteLine($"预测品种:{prediction.PredictedSpecies}");

运行:

dotnet run

看到准确率和预测结果,说明ML.NET环境搭建成功!


五、第四步:搭建ONNX Runtime环境(本地模型部署)

1. 安装ONNX Runtime NuGet包
cdCSharpAI_Demo dotnetaddpackage Microsoft.ML.OnnxRuntime--version1.17.0 dotnetaddpackage Microsoft.ML.OnnxRuntime.Managed--version1.17.0
2. 快速测试:运行ResNet50图像分类
  • 下载ResNet50 ONNX模型:https://github.com/onnx/models/raw/main/vision/classification/resnet/model/resnet50-v2-7.onnx
  • 下载测试图片:https://upload.wikimedia.org/wikipedia/commons/thumb/7/7d/Microsoft_.NET_logo.svg/200px-Microsoft_.NET_logo.svg.png
  • 将模型和图片放入项目根目录

创建OnnxImageClassifier.cs

usingMicrosoft.ML.OnnxRuntime;usingMicrosoft.ML.OnnxRuntime.Tensors;usingSixLabors.ImageSharp;usingSixLabors.ImageSharp.PixelFormats;usingSixLabors.ImageSharp.Processing;publicclassOnnxImageClassifier{privatereadonlyInferenceSession_session;privatereadonlystring[]_labels=File.ReadAllLines("imagenet_classes.txt");publicOnnxImageClassifier(stringmodelPath){_session=newInferenceSession(modelPath);}publicstringClassifyImage(stringimagePath){// 1. 加载并预处理图片usingvarimage=Image.Load<Rgb24>(imagePath);image.Mutate(x=>x.Resize(224,224));vartensor=newDenseTensor<float>(new[]{1,3,224,224});for(inty=0;y<224;y++){for(intx=0;x<224;x++){varpixel=image[x,y];tensor[0,0,y,x]=(pixel.R/255f-0.485f)/0.229f;tensor[0,1,y,x]=(pixel.G/255f-0.456f)/0.224f;tensor[0,2,y,x]=(pixel.B/255f-0.406f)/0.225f;}}// 2. 运行推理varinputs=newList<NamedOnnxValue>{NamedOnnxValue.CreateFromTensor("input",tensor)};usingvarresults=_session.Run(inputs);varoutput=results.First().AsTensor<float>();// 3. 获取预测结果varmaxIndex=output.ToArray().AsSpan().IndexOf(output.ToArray().Max());return_labels[maxIndex];}}

修改Program.cs

varclassifier=newOnnxImageClassifier("resnet50-v2-7.onnx");varresult=classifier.ClassifyImage("dotnet_logo.png");Console.WriteLine($"图片分类结果:{result}");

安装ImageSharp:

dotnetaddpackage SixLabors.ImageSharp--version2.1.3

运行:

dotnet run

看到分类结果,说明ONNX Runtime环境搭建成功!


六、第五步:可选安装Ollama(本地大模型神器)

1. 下载安装Ollama
  • 官网:https://ollama.com/
  • 一键安装,支持Windows/macOS/Linux
2. 运行本地大模型(Llama 3.2)
ollama run llama3.2
3. C#调用Ollama(用SK)
dotnetaddpackage Microsoft.SemanticKernel.Connectors.Ollama--version1.15.0

修改SK测试代码:

builder.AddOllamaChatCompletion("llama3.2",newUri("http://localhost:11434"));

运行,即可调用本地Llama 3.2,无需云端API!


七、2026年C# AI环境避坑指南(少走弯路)

  1. 版本统一:所有NuGet包尽量用最新稳定版,避免版本冲突
  2. 路径问题:模型、数据文件放在项目根目录,或用绝对路径
  3. 权限问题:Windows下用管理员身份运行终端,避免安装失败
  4. 网络问题:国内安装NuGet包慢,可配置镜像(https://nuget.cdn.azure.cn/v3/index.json)
  5. 本地模型:Ollama默认存C盘,可修改环境变量OLLAMA_MODELS到其他盘

🎯 结尾总结

2026年C# AI环境搭建,真的很简单

  • .NET 8:地基,10分钟装好
  • Semantic Kernel:LLM调度,1行命令安装
  • ML.NET:传统ML,原生支持,无需Python
  • ONNX Runtime:本地模型,一键运行
  • Ollama:本地大模型,隐私友好,免费好用

跟着这篇文章,复制粘贴命令,10分钟搞定全套环境,直接进入AI开发实战!


💬 互动一下

你用的是Windows/macOS/Linux?
环境搭建过程中遇到啥问题了?
评论区留言,我帮你解决!


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 7:59:42

Qwen_Image_Cute_Animal_For_Kids入门必看:5个关键部署步骤

Qwen_Image_Cute_Animal_For_Kids入门必看&#xff1a;5个关键部署步骤 你是否正在寻找一个简单又有趣的方式&#xff0c;为孩子生成专属的可爱动物图片&#xff1f;Cute_Animal_For_Kids_Qwen_Image 正是为此而生。它基于阿里通义千问大模型打造&#xff0c;专为儿童内容设计…

作者头像 李华
网站建设 2026/4/18 7:55:56

极速文生图与低门槛AIGC:Qwen-Image-Lightning的技术民主化革命

极速文生图与低门槛AIGC&#xff1a;Qwen-Image-Lightning的技术民主化革命 【免费下载链接】Qwen-Image-Lightning 项目地址: https://ai.gitcode.com/hf_mirrors/lightx2v/Qwen-Image-Lightning 在AI图像生成领域&#xff0c;效率与质量的平衡始终是技术突破的核心命…

作者头像 李华
网站建设 2026/4/18 7:36:57

Qwen3-4B-Instruct节省显存技巧:FlashAttention开启实战指南

Qwen3-4B-Instruct节省显存技巧&#xff1a;FlashAttention开启实战指南 1. 为什么你需要关心显存——从“跑不动”到“跑得稳”的真实痛点 你是不是也遇到过这样的情况&#xff1a;刚把 Qwen3-4B-Instruct-2507 镜像拉下来&#xff0c;满怀期待点开网页推理界面&#xff0c;…

作者头像 李华
网站建设 2026/4/18 8:06:40

FSMN VAD工业级准确率验证:企业级应用部署实战

FSMN VAD工业级准确率验证&#xff1a;企业级应用部署实战 1. 引言&#xff1a;为什么语音活动检测在企业场景中如此关键&#xff1f; 你有没有遇到过这样的问题&#xff1a;一堆会议录音、客服通话、培训音频&#xff0c;想从中提取有效对话内容&#xff0c;结果发现大部分时…

作者头像 李华
网站建设 2026/4/17 18:02:44

从巴赫到肖邦,NotaGen大模型镜像让AI谱写古典旋律

从巴赫到肖邦&#xff0c;NotaGen大模型镜像让AI谱写古典旋律 你是否曾幻想过&#xff0c;只需轻点几下鼠标&#xff0c;就能让AI为你创作一段如巴赫赋格般严谨、又似肖邦夜曲般深情的古典音乐&#xff1f;这不再是遥不可及的梦想。借助 NotaGen —— 这款基于LLM范式构建的高…

作者头像 李华
网站建设 2026/4/18 9:11:37

SGLang-v0.5.6升级指南:版本迁移注意事项详解

SGLang-v0.5.6升级指南&#xff1a;版本迁移注意事项详解 1. 为什么这次升级值得关注 SGLang-v0.5.6不是一次普通的小版本迭代。如果你正在用SGLang部署大模型服务&#xff0c;特别是处理多轮对话、结构化输出或高并发推理场景&#xff0c;这次升级会直接影响你的吞吐量、延迟…

作者头像 李华