Loading [MathJax]/jax/output/CommonHTML/config.js
部署DeepSeek模型,进群交流最in玩法!
立即加群
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >谁说.Net Framework不支持DeepSeek动态流式返回?

谁说.Net Framework不支持DeepSeek动态流式返回?

作者头像
办公魔盒
发布于 2025-03-13 13:56:28
发布于 2025-03-13 13:56:28
11500
代码可运行
举报
文章被收录于专栏:办公魔盒办公魔盒
运行总次数:0
代码可运行

DeepSeek.SDK 适用于VB.NET,C#.NET,.NET CORE等应用程序使用,支持普通对话,流式对话,查询余额,列出模型等接口。并支持.Net FarmeWork流式输出,WinForm,Office Vsto插件,CAD插件,Solid Work插件,CDR插件等应用接入场景。

.NET .NET Framework版本支持

.NET 实现

版本支持

.NET 和.NET Core

2.0, 2.1, 2.2, 3.0, 3.1, 5.0, 6.0, 7.0, 8.0, 9.0

.NET Framework

4.6.1、4.6.2、4.7、4.7.1、4.7.2、4.8、4.8.1

Mono

5.4、6.4

Xamarin.iOS

10.14、12.16

Xamarin.Mac

3.8、5.16

Xamarin.Android

8.0、10.0

通用 Windows 平台

10.0.16299,待定

Unity

2018 年 1 月

Nuget链接
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://www.nuget.org/packages/DeepSeek.Sdk
示例代码

VB.NET示例

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Module Module1
    '' 多轮对话记录,上一轮的结果
    Private resultMsg As New Text.StringBuilder
    '' 主函数
    Sub Main(arg As String())
        ' api密钥
        Dim apikey As String = "sk-666666666666666666666"
        ' 创建ds对象
        Dim ds As New DeepSeek(apikey)
        Task.Run(Async Function()
                     ' 模型查询
                     'Dim modelList As Model = Await ds.GetModelList()
                     ' 余额查询
                     'Dim ResBalance As Balance = Await ds.GetBalance
                     ''-----------------
                     'Dim chatReq As New ChatRequest With {
                     '    .Messages = New List(Of ChatRequest.MessagesType) From {
                     '       New ChatRequest.MessagesType With {
                     '           .Role = ChatRequest.RoleEnum.System,
                     '           .Content = "你是一个Excel办公助手,仅回答办公相关的内容,其他无关内容忽略。"
                     '       },
                     '       New ChatRequest.MessagesType With {
                     '           .Role = ChatRequest.RoleEnum.User,
                     '           .Content = "你是谁?"
                     '       }
                     '    },
                     '    .Model = ChatRequest.ModelEnum.DeepseekChat
                     '}
                     'Dim chatRes As ChatResponse = Await ds.Chat(chatReq)
                     ''-----------------
                     Dim chatReq As New ChatRequest With {
                         .Messages = New List(Of ChatRequest.MessagesType) From {
                            New ChatRequest.MessagesType With {
                                .Role = ChatRequest.RoleEnum.System,
                                .Content = "你是一个Excel办公助手,仅回答办公相关的内容,其他无关内容忽略。"
                            },
                            New ChatRequest.MessagesType With {
                                .Role = ChatRequest.RoleEnum.Assistant,
                                .Content = resultMsg.ToString
                            },
                            New ChatRequest.MessagesType With {
                                .Role = ChatRequest.RoleEnum.User,
                                .Content = "你是谁?"
                            }
                         },
                         .Model = ChatRequest.ModelEnum.DeepseekChat,
                         .Stream = True
                     }
                     resultMsg.Clear() ''拼接完成则清空,进行下一轮拼接
                     Await ds.ChatStream(chatReq, openedCallBack:=Sub(state As String) ''打开状态
                                                                      Console.WriteLine(state)
                                                                  End Sub,
                                                  closedCallBack:=Sub(state) ''关闭状态
                                                                      Console.WriteLine(state)
                                                                  End Sub,
                                                  msgCallback:=Sub(res As ChatResponse) ''接收信息
                                                                   Dim msg As String = res.Choices.First?.Delta?.Content
                                                                   resultMsg.Append(msg)
                                                                   Console.WriteLine(msg)
                                                               End Sub,
                                                  errorCallback:=Sub(ex As String) ''异常处理
                                                                     Console.WriteLine(ex)
                                                                 End Sub)
                     Await Task.CompletedTask
                 End Function).GetAwaiter().GetResult()
    End Sub
End Module

C#.Net示例代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
class Program
{
    static void Main(string[] args)
    {
        // api密钥
        string apikey = "sk-666666666666666666666";
        // 创建ds对象
        var ds = new DeepSeek(apikey);
        Task.Run(async () =>
        {
            // 模型查询
            // var modelList = await ds.GetModelList();
            // 余额查询
            // var resBalance = await ds.GetBalance();
            //-----------------
            // var chatReq = new ChatRequest
            // {
            //     Messages = new List<ChatRequest.MessagesType>
            //     {
            //         new ChatRequest.MessagesType
            //         {
            //             Role = ChatRequest.RoleEnum.System,
            //             Content = "你是一个Excel办公助手,仅回答办公相关的内容,其他无关内容忽略。"
            //         },
            //         new ChatRequest.MessagesType
            //         {
            //             Role = ChatRequest.RoleEnum.User,
            //             Content = "你是谁?"
            //         }
            //     },
            //     Model = ChatRequest.ModelEnum.DeepseekChat
            // };
            // var chatRes = await ds.Chat(chatReq);
            //-----------------
            var chatReq = new ChatRequest
            {
                Messages = new List<ChatRequest.MessagesType>
                {
                    new ChatRequest.MessagesType
                    {
                        Role = ChatRequest.RoleEnum.System,
                        Content = "你是一个Excel办公助手,仅回答办公相关的内容,其他无关内容忽略。"
                    },
                    new ChatRequest.MessagesType
                    {
                        Role = ChatRequest.RoleEnum.Assistant,
                        Content = resultMsg.ToString()
                    },
                    new ChatRequest.MessagesType
                    {
                        Role = ChatRequest.RoleEnum.User,
                        Content = "你是谁?"
                    }
                },
                Model = ChatRequest.ModelEnum.DeepseekChat,
                Stream = true
            };
            resultMsg.Clear(); // 拼接完成则清空, 进行下一轮拼接
            await ds.ChatStream(chatReq,
                openedCallBack: (state) => // 打开状态
                {
                    Console.WriteLine(state);
                },
                closedCallBack: (state) => // 关闭状态
                {
                    Console.WriteLine(state);
                },
                msgCallback: (res) => // 接收信息
                {
                    string msg = res.Choices.FirstOrDefault()?.Delta?.Content;
                    resultMsg.Append(msg);
                    Console.WriteLine(msg);
                },
                errorCallback: (ex) => // 异常处理
                {
                    Console.WriteLine(ex);
                });
            await Task.CompletedTask;
        }).GetAwaiter().GetResult();
    }
    private static StringBuilder resultMsg = new StringBuilder();
}
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-03-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 办公魔盒 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
.NET AI生态关键拼图:深度解读AI Extensions 和 Vector Extensions 如何重塑.NET开发生态
关注.NET AI和.NET Vector原生开发已有半年之久了,其核心组件在历经这半年预发布期的持续迭代后,终于在5月16日和5月20日逐步发布了。在此之前,基于预发布版本撰写的文章和调试工作常常受限于功能的缺失,许多特性无法正常调用,只能通过下载源代码进行调试。
AI.NET 极客圈
2025/06/10
1210
.NET AI生态关键拼图:深度解读AI Extensions 和 Vector Extensions 如何重塑.NET开发生态
DeepSeek API Client:轻松接入 DeepSeek AI 模型的 .NET 开发利器
大家好,我是深山踏红叶,在当今快速发展的技术领域,人工智能(AI)已经成为我们不可或缺的工具之一。无论是自然语言处理、图像识别还是数据分析,AI 都在不断推动着技术的边界。今天,我们来介绍一款名为 DeepSeek.ApiClient 的 .NET 库,它为我们提供了一种简单而强大的方式,用于与 DeepSeek 的 AI 模型进行交互。
郑子铭
2025/04/18
1500
DeepSeek API Client:轻松接入 DeepSeek AI 模型的 .NET 开发利器
深入集成:使用 DeepSeek SDK for .NET 实现自然语言处理功能
Ater.DeepSeek.AspNetCore 是专门为 .NET 开发者提供的 DeepSeek API SDK。它旨在简化与 DeepSeek AI 平台的集成,使开发者能够快速构建和部署基于自然语言处理的应用程序。
郑子铭
2025/04/04
2400
深入集成:使用 DeepSeek SDK for .NET 实现自然语言处理功能
DeepSeek三大版本大揭秘:量化、蒸馏、满血,谁才是你的菜?
摘要:DeepSeek的量化版、蒸馏版和满血版在参数规模、性能表现和适用场景上各有特点。满血版拥有6710亿参数,推理能力强,适合高端科研和复杂任务;蒸馏版参数规模较小,适合资源受限环境,响应速度快;量化版通过量化技术进一步压缩模型大小,推理速度快,适合移动端和边缘设备。用户应根据需求、硬件资源和预算选择适合的版本。
正在走向自律
2025/02/26
6.4K0
DeepSeek三大版本大揭秘:量化、蒸馏、满血,谁才是你的菜?
MCP 和 Function Calling:示例
实现这样一个场景:和大模型聊天,然后让大模型将回答的内容总结后保存到 flomo 笔记中。
郑子铭
2025/05/25
2740
MCP 和 Function Calling:示例
C# 两种方案实现调用 DeepSeek API
DeepSeek(深度求索) 最近可谓火爆的一塌糊涂,具体的介绍这里不再赘述,您可以各种搜索其信息,即使您不搜索,只要您拿起手机,各种关于 DeepSeek 的新闻、资讯也会扑面而来的推送到您面前。本人在闲暇之余也想了解一下其提供 API 的支持能力,也想试验一下 “嵌入式” 的应用体验。
初九之潜龙勿用
2025/02/11
4720
C# 两种方案实现调用 DeepSeek API
用Blazor和DeepSeek API创建聊天应用
本文将指导您如何使用Blazor框架和DeepSeek API构建一个简单的聊天应用。Blazor是一个用于构建交互式Web UI的框架,它允许开发者使用C#编写前端代码。DeepSeek API则提供强大的自然语言处理能力,使得应用程序能够理解和生成人类语言。
郑子铭
2025/03/21
1800
用Blazor和DeepSeek API创建聊天应用
.NET Core/.NET之Stream简介
之前写了一篇C#装饰模式的文章提到了.NET Core的Stream, 所以这里尽量把Stream介绍全点. (都是书上的内容) .NET Core/.NET的Streams 首先需要知道, System.IO命名空间是低级I/O功能的大本营. Stream的结构 .NET Core里面的Stream主要是三个概念: 存储(backing stores 我不知道怎么翻译比较好), 装饰器, 适配器. backing stores是让输入和输出发挥作用的端点, 例如文件或者网络连接. 就是下面任意一点或两点:
solenovex
2018/04/17
2K0
.NET Core/.NET之Stream简介
使用 C#、OpenAI 和 Spectre.Console 创建控制台 ChatGPT 客户端
本文将指导您使用 C# 和 .NET 8 构建基于控制台的 ChatGPT 客户端。
郑子铭
2024/11/23
3700
使用 C#、OpenAI 和 Spectre.Console 创建控制台 ChatGPT 客户端
教你如何入门AI Agent,让AI自动创建项目构建项目检查代码
下面我们将基于Microsoft.SemanticKernel去实现Agent的功能,创建一个CodeAgent,用户提出需求,然后由Agent进行实现。
郑子铭
2025/03/13
2700
教你如何入门AI Agent,让AI自动创建项目构建项目检查代码
Ollama本地部署大模型总结
今天计划对之前ollama系列做个回顾,从如何部署到API使用,整理到一篇内容中,提供给大家参考。
拓荒者IT
2025/03/30
1.3K0
Ollama本地部署大模型总结
在C#中基于Semantic Kernel的检索增强生成(RAG)实践
玩过大语言模型(LLM)的都知道OpenAI,然后微软Azure也提供了OpenAI的服务:Azure OpenAI,只需要申请到API Key,就可以使用这些AI服务。使用方式可以是通过在线Web页面直接与AI聊天,也可以调用AI的API服务,将AI的能力集成到自己的应用程序中。不过这些服务都是在线提供的,都会需要根据token计费,所以不仅需要依赖互联网,而且在使用上会有一定成本。于是,就出现了像Ollama这样的本地大语言模型服务,只要你的电脑足够强悍,应用场景允许的情况下,使用本地大语言模型也是一个不错的选择。
郑子铭
2024/11/23
3110
在C#中基于Semantic Kernel的检索增强生成(RAG)实践
DeepSeek-Vue3基于vite6+vant4仿deepseek/Kimi流式AI聊天小助手
2025年智能AI实战-Vue3+DeepSeek API打造一款mobile版ai聊天界面小助手。
andy2018
2025/03/17
1.5K3
DeepSeek-Vue3基于vite6+vant4仿deepseek/Kimi流式AI聊天小助手
mqttnet 详解_vs2017通过mqttnet创建mqtt服务端 客户端
public partial class MQTTNetService : ServiceBase
全栈程序员站长
2022/09/12
1.5K0
三行代码把DeepSeek接入小程序
随着 DeepSeek 近期的爆火,有越来越多的小程序开发者也想将自己的小程序接入 DeepSeek,实现智能对话、文本生成等功能,这篇文章就教大家如何通过腾讯云开发这个平台来快速接入 DeepSeek
腾讯云开发TCB
2025/02/18
4620
三行代码把DeepSeek接入小程序
用.Net Framework标准使用事件
我们遵循.NET Framework标准事件模式的添加到类和结构中,.NET Framework 类库中的所有事件均基于 EventHandler 委托,定义如下:
小蜜蜂
2019/07/14
6530
3行代码搞定微信小程序接入DeepSeek满血版!
由于最近 DeepSeek 火爆出圈,我相信大多数的微信小程序开发者开工第一个任务就是接入DeepSeek能力到自家的小程序产品中,接下来我分享下微信小程序快速接入DeepSeek的方法!
陈宇明
2025/02/26
9030
3行代码搞定微信小程序接入DeepSeek满血版!
在 Word 里编写 Visual Basic 调用 DeepSeek API
本文通过分步解析 Visual Basic 代码,展示了如何构造 JSON 请求、使用 MSXML2.XMLHTTP 发送 HTTP POST 请求,并根据响应状态码返回结果。CallDeepSeekAPI 函数接收 API 密钥与用户输入文本,拼接为符合 DeepSeek Chat API 规范的请求体,然后以同步方式调用接口,最后依据返回的 HTTP 状态码决定函数输出是原始响应还是错误信息。
编程小妖女
2025/06/14
1170
在 Word 里编写 Visual Basic 调用 DeepSeek API
基于Microsoft.Extensions.AI核心库实现RAG应用
之前我们了解 Microsoft.Extensions.AI 和 Microsoft.Extensions.VectorData 两个重要的AI应用核心库。基于对他们的了解,今天我们就可以来实战一个RAG问答应用,把之前所学的串起来。如果你觉得对你有帮助,可以V我50,毕竟今天是Crazy星期四。
郑子铭
2025/04/14
1000
基于Microsoft.Extensions.AI核心库实现RAG应用
谈谈基于SQL Server 的Exception Handling[中篇]
三、TRY CATCH & Return 在上面一节中,我通过RAISERROR重写了创建User的Stored procedure,实际上上面的Stored procedure是有问题的。我之所以没有立即指出,是因为这是一个很容易犯的错误,尤其是习惯了.NET Exception Handling的人更容易犯这样的错误。我们知道在.NET Application中,如果出现一个未处理的Exception,程序将立即终止,后续的程序将不会执行,但是对于上面的SQL则不一样,虽然我们通过RAISERROR将E
蒋金楠
2018/01/16
9290
谈谈基于SQL Server 的Exception Handling[中篇]
推荐阅读
相关推荐
.NET AI生态关键拼图:深度解读AI Extensions 和 Vector Extensions 如何重塑.NET开发生态
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验