.NET 使用 DeepSeek R1 开发智能 AI 客户端

前言

最近 DeepSeek 可太火了,在人工智能领域引起了广泛的关注,其强大的自然语言处理能力和智能搜索功能让大家跃跃欲试。

对于 .NET 技术栈的开发来说,一个常见的问题是:能否在 .NET 程序中使用 DeepSeek? 答案是肯定的。

为了帮助 .NET 开发快速上手并充分利用 DeepSeek 的强大功能,社区提供了一个名为 deepseek-dotnet 的开源项目。

项目介绍

deepseek-dotnet 项目不仅包含了如何在 .NET 中集成和使用 DeepSeek 模型的详细示例,还展示了如何通过 Microsoft.Extensions.AI (MEAI) 库来简化与 DeepSeek R1 模型的交互。

具体而言 deepseek-dotnet 项目在 GitHub 上托管,并且已经集成了最新的 DeepSeek R1 模型。通过该项目,可以学习如何在 .NET 应用程序中调用 DeepSeek API,处理请求和响应,以及如何利用 Microsoft.Extensions.AI 库进行模型管理和推理。

不管是开发智能助手、自动问答系统,还是其他复杂的业务应用。DeepSeek 都能为大家提供强有力的支持。

DeepSeek 说明

DeepSeek-V3:是DeepSeek于2023年12月推出的模型,以较低的训练成本实现了与GPT-4和Claude Sonnet 3.5等顶尖模型相媲美的性能。

DeepSeek-R1(deepseek-reasoner):是DeepSeek最新推出的推理模型,在输出最终回答之前,模型会先输出一段思维链内容,以提升答案的准确性。

Microsoft.Extensions.AI

Microsoft.Extensions.AI 库为各类 AI 服务提供统一的抽象接口。

无论使用 DeepSeek、OpenAI 还是 Mistral,也不论服务托管在 GH Models、Ollama 还是 Azure AI Foundry,都可以使用相同的 API 接口与模型交互。

这种统一性显著降低了入门门槛------无需掌握不同库的特殊用法,只需掌握 MEAI 即可。

大部分功能通过 IChatClient 接口实现。由于这是接口,具体实现会根据底层 AI 服务而变化:

使用 Ollama 时,需引用 Microsoft.Extensions.AI.Ollama 包

使用 GitHub Models 时,则需 Microsoft.Extensions.AI.AzureAIInference 包

一旦实例化 IChatClient 后,所有操作接口都将统一。

项目源码

下载项目源码,打开 DeepSeek.Console.GHModels 项目中的 Program.cs 文件。

首先需要注意的是初始化 modelEndpoint 和 modelName 变量的位置。这些变量对 GitHub Models 服务来说是标准的,它们总是相同的。

现在进入有趣的部分!我们将初始化我们的聊天客户端。这里我们将连接到 DeepSeek R1 模型。

项目结构

项目使用

1、GitHub Models

生成 GitHub PAT 或直接在 Codespace 中运行仓库。

设置用户密钥:在 DeepSeek.Console.GHModels 项目中设置 GITHUB_TOKEN 用户密钥。

Program.cs:了解如何使用 MEAI 访问 GitHub Models 上的 DeepSeek。

2、在 Azure AI Foundry 上运行

部署模型到 Azure AI Foundry:参考提供的部署指南。

记录密钥:将密钥放入 DeepSeek.Console.AzureAI 项目的用户密钥中,键名为 AZURE_AI_KEY。

获取端点 URL 和模型名称:从 AI Foundry 门户的部署中获取。

3、在 Ollama 上运行

启动 Codespace:Codespace 将下载 Ollama 镜像并在 devcontainer 内启动它。

拉取精简版 R1 模型。

Program.cs:在 DeepSeek.Console.Ollama 项目中查看 Program.cs 文件,了解如何初始化 IChatClient 接口。

复制代码
IChatClient chatClient = new OllamaChatClient(modelEndpoint, modelName);

项目地址

GitHub:https://github.com/codemillmatt/deepseek-dotnet

总结

DeepSeek R1 是一个新推理模型,吸引了大量关注,可以使用 Microsoft.Extensions.AI 库在 .NET 程序中利用它。

GitHub Models 降低了入门和实验的门槛。感兴趣的小伙伴们快去试试。

最后

如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。

也可以加入微信公众号**[DotNet技术匠]** 社区,与其他热爱技术的同行一起交流心得,共同成长!优秀是一种习惯,欢迎大家留言学习!

相关推荐
小王爱学人工智能10 分钟前
OpenCV的阈值处理
人工智能·opencv·计算机视觉
新智元34 分钟前
刚刚,光刻机巨头 ASML 杀入 AI!豪掷 15 亿押注「欧版 OpenAI」,成最大股东
人工智能·openai
机器之心42 分钟前
全球图生视频榜单第一,爱诗科技PixVerse V5如何改变一亿用户的视频创作
人工智能·openai
新智元43 分钟前
2025年了,AI还看不懂时钟!90%人都能答对,顶尖AI全军覆没
人工智能·openai
湫兮之风1 小时前
OpenCV: Mat存储方式全解析-单通道、多通道内存布局详解
人工智能·opencv·计算机视觉
即兴小索奇1 小时前
Codeium:免费开源代码自动补全工具,高效管理代码片段告别开发卡壳
ai·商业·ai商业洞察·即兴小索奇
机器之心1 小时前
Claude不让我们用!国产平替能顶上吗?
人工智能·openai
程序员柳1 小时前
基于YOLOv8的车辆轨迹识别与目标检测研究分析软件源代码+详细文档
人工智能·yolo·目标检测
算家计算1 小时前
一站式高质量数字人动画框架——EchoMimic-V3本地部署教程: 13 亿参数实现统一多模态、多任务人体动画生成
人工智能·开源
我没想到原来他们都是一堆坏人1 小时前
通过Gen AI SDK调用gemini 2.5 pro,单独上传pdf文件 | ai agent 开发笔记 2025.9.2 Day 2
ai·google·pdf·sdk·gemini