.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技术匠]** 社区,与其他热爱技术的同行一起交流心得,共同成长!优秀是一种习惯,欢迎大家留言学习!

相关推荐
AI_小站1 小时前
6个GitHub爆火的免费大模型教程,助你快速进阶AI编程
人工智能·langchain·github·知识图谱·agent·llama·rag
xindoo1 小时前
GitHub Trending霸榜!深度解析AI Coding辅助神器 Superpowers
人工智能·github
时间之里1 小时前
【深度学习】:RF-DETR与yolo对比
人工智能·深度学习·yolo
北京阿法龙科技有限公司1 小时前
数智化升级:AR 智能眼镜驱动工业运维效能革新
人工智能
风落无尘1 小时前
《智能重生:从垃圾堆到AI工程师》——第二章 概率与生存
大数据·人工智能
j_xxx404_1 小时前
Linux:静态链接与动态链接深度解析
linux·运维·服务器·c++·人工智能
收获不止数据库2 小时前
达梦9发布会归来:AI 时代,我们需要一款什么样的数据库?
数据库·人工智能·ai·语言模型·数据分析
hhb_6182 小时前
AI全栈编程生存指南
人工智能
AI-Frontiers2 小时前
transformer进阶之路:#2 工作原理详解
人工智能·深度学习·transformer
xskukuku2 小时前
VSCode中的Codex插件如何调用第三方API
vscode·ai·codex