# DeepSeek.SDK **Repository Path**: bgmh/deep-seek-sdk ## Basic Information - **Project Name**: DeepSeek.SDK - **Description**: DeepSeek.SDK 适用于VB.NET,C#.NET,.NET CORE等应用程序使用,支持普通对话,流式对话,查询余额,列出模型等接口。并支持.Net FarmeWork流式输出,WinForm,Office Vsto插件,CAD插件,Solid Work插件,CDR插件等应用接入场景。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 0 - **Created**: 2025-03-12 - **Last Updated**: 2025-06-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## DeepSeek.SDK > 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 月 #### 示例代码 **VB.NET** ```vb 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** ```cs 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 // { // 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 { 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(); } ```