使用C# 調(diào)用deepseek api接口實(shí)現(xiàn)正常訪(fǎng)問(wèn)的過(guò)程
先上圖,結(jié)果如圖
先去官方網(wǎng)站充值api費(fèi)用,默認(rèn)
對(duì)應(yīng)的C#代碼封裝
public class DeepSeekHelper { private static readonly HttpClient client = new HttpClient(); private const string ApiEndpoint = "https://api.deepseek.com/v1/chat/completions"; private static readonly string apiKey = "你的apikey"; public static async Task<string> CallDeepSeekAPI(string userQuestion) { ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; try { // 設(shè)置請(qǐng)求頭 client.DefaultRequestHeaders.Clear(); client.DefaultRequestHeaders.Add("Authorization", $"Bearer {apiKey}"); client.DefaultRequestHeaders.Add("Accept", "application/json"); // 構(gòu)建請(qǐng)求體 var requestBody = new { model = "deepseek-reasoner", // 根據(jù)實(shí)際模型調(diào)整 messages = new[] { new { role = "user", content = userQuestion } }, temperature = 0.7 }; // 序列化請(qǐng)求體 //var jsonContent = JsonSerializer.Serialize(requestBody); var jsonContent = JsonConvert.SerializeObject(requestBody); var content = new StringContent(jsonContent, Encoding.UTF8, "application/json"); // 發(fā)送請(qǐng)求 var response = await client.PostAsync(ApiEndpoint, content); // 處理響應(yīng) if (!response.IsSuccessStatusCode) { throw new Exception($"API請(qǐng)求失敗: {response.StatusCode}"); } var responseContent = await response.Content.ReadAsStringAsync(); var resultModel = JsonConvert.DeserializeObject<DeepSeekResponse>(responseContent); if (resultModel != null && resultModel.Choices.Count > 0) return resultModel.Choices[0].Message.Content; return responseContent; } catch (Exception ex) { // 處理異常 return $"調(diào)用API時(shí)發(fā)生錯(cuò)誤: {ex.Message}"; } } } public class DeepSeekResponse { public string Id { get; set; } public string Object { get; set; } public long Created { get; set; } public string Model { get; set; } public List<Choice> Choices { get; set; } public Usage Usage { get; set; } public string SystemFingerprint { get; set; } // 重寫(xiě)ToString方法以便更好地顯示對(duì)象信息 public override string ToString() { return $"DeepSeekResponse(Id={Id}, Object={Object}, Created={Created}, Model={Model}, Choices={string.Join(", ", Choices)}, Usage={Usage}, SystemFingerprint={SystemFingerprint})"; } } public class Choice { public int Index { get; set; } public Message Message { get; set; } // 其他Choice相關(guān)的屬性... // 重寫(xiě)ToString方法以便更好地顯示Choice信息(這里僅展示Index和Message作為示例) public override string ToString() { return $"Choice(Index={Index}, Message={Message})"; } } public class Message { public string Role { get; set; } public string Content { get; set; } // 其他Message相關(guān)的屬性... } public class Usage { public int PromptTokens { get; set; } public int CompletionTokens { get; set; } public int TotalTokens { get; set; } // 其他Usage相關(guān)的屬性,包括嵌套的字典等,可以根據(jù)需要添加 }
調(diào)用示例
private async void SendButton_Click(object sender, RoutedEventArgs e) { string requestText = RequestTextBox.Text; if (!string.IsNullOrWhiteSpace(requestText)) { try { string responseData = await DeepSeekHelper.CallDeepSeekAPI(requestText); // await new DeepSeekApi().CallDeepSeekAPI(chatRequest); ResponseTextBox.Text = responseData; } catch (Exception ex) { ResponseTextBox.Text = $"Error: {ex.Message}"; } } else { MessageBox.Show("Please enter a request."); } }
常見(jiàn)問(wèn)題:
1發(fā)送請(qǐng)求時(shí)出錯(cuò) InnerException = {"請(qǐng)求被中止: 未能創(chuàng)建 SSL/TLS 安全通道。"}
指定使用TLS1.2加密協(xié)議,添加如下代碼
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
2 收到內(nèi)容為空白
服務(wù)器繁忙,請(qǐng)把deepseek-chat模型切換到deepseek-reasoner 試試,或者換個(gè)時(shí)間再次嘗試.
模型區(qū)別如下.代碼中默認(rèn)使用了reasoner模型,俗稱(chēng)滿(mǎn)血版.
默認(rèn)賬戶(hù)贈(zèng)送10元余額.
到此這篇關(guān)于使用C# 調(diào)用deepseek api接口,來(lái)實(shí)現(xiàn)正常訪(fǎng)問(wèn)的文章就介紹到這了,更多相關(guān)C# 調(diào)用deepseek api內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C# 添加、修改和刪除PDF書(shū)簽的實(shí)例代碼
本篇文章主要介紹了C# 添加、修改和刪除PDF書(shū)簽的實(shí)例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-07-07Unity3D啟動(dòng)外部程序并傳遞參數(shù)的實(shí)現(xiàn)
這篇文章主要介紹了Unity3D啟動(dòng)外部程序并傳遞參數(shù)的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04