动态

详情 返回 返回

Semantic Kernel調用DeepSeek實現聊天功能 - 动态 详情

在上一篇中,我們介紹瞭如何通過SK訪問ollama中部署的大模型,今天我們嘗試直接調用deepseek官網api,來實現AI對話功能。

DeepSeek官方API

如果要使用deepseek 官方API,首先我們要註冊API訪問的賬號,然後創建apikey。

  • DeepSeek Platform地址:https://platform.deepseek.com/
  • DeepSeek API文檔地址:https://api-docs.deepseek.com/zh-cn/

在platform頁面完成註冊,然後點擊左側“API Keys”,創建一個key。

注意:請將key複製後保存在安全的位置,在DeepSeek Platform中key只展示一次!

安裝SK和OpenAI Connector

我們使用deepseek提供的兼容openAI的API來進行訪問,安裝必要的組件:

dotnet add package Microsoft.SemanticKernel
dotnet add package Microsoft.SemanticKernel.Connectors.OpenAI

在上一篇內容中我們知道,第一步要初始化sk:

var skBuilder = Kernel.CreateBuilder()
    .AddOpenAIChatCompletion(
        modelId: openAiConfig.DefaultModel,
        endpoint: new Uri(openAiConfig.BaseUrl),
        apiKey: openAiConfig.ApiKey
    )
    ;
var sk = skBuilder.Build();

參數説明:

  1. modelId: 使用的模型Id,deepseek官網目前提供了兩個模型,分別是deepseek-chatdeepseek-reasoner,對應DeepSeek-V3和DeepSeek-R1
  2. endpoint: api的地址,由於我們使用的是兼容OpenAI的API,因此地址使用 https://api.deepseek.com/v1
  3. apiKey: 上一步創建的apikey。注意:一定不要hard-code在代碼裏!!

發起聊天

在完成sk初始化之後,就可以創建chatService,開始對話了:

var chatService = sk.GetRequiredService<IChatCompletionService>();
var reply = await chatService.GetChatMessageContentAsync(chatHistory,
        executionSettings: executionSettings,
        kernel: sk);

最後,把這些代碼放在webapi裏面,討一個UI,效果如下:

以上就是今天要分享的全部內容,感興趣的朋友可以關注我的公眾號 [拓荒者IT] 瞭解更多內容!

往期推薦:

  1. 使用Ollama本地部署大模型系列(已完結)

  2. 進階篇-搭建專屬的知識庫和問答系統—cherryStudio版

  3. 進階篇-Ollama API 使用指南

👉 持續分享AI工具,AI應用場景,AI學習資源 ❤️

Add a new 评论

Some HTML is okay.