iT邦幫忙

2024 iThome 鐵人賽

DAY 18
0

前言

前篇文章透過下提示詞的方式讓 Chat GPT 可以化身為智能管家,不僅能幫忙控制家電還能回答一些額外的提問,這篇文章要來介紹之後會實作在 Spring 後端的 Semantic Kernel 的運作方式

Semantic Kernel

在 Microsoft 提供的 Semanitc Kernel 中有以下三個重點:

  1. 依賴注入容器 ( Dependency Injection Container )簡稱 DI
    Semantic Kernel的核心是一個稱為"kernel"的依賴注入容器。這個容器管理運行AI應用所需的所有服務和插件。

  2. 連接器集 ( Connectors )
    Semantic Kernel SDK包含一組連接器,使開發人員能夠將大型語言模型(LLMs)和其他服務整合到現有的應用程式中。這些連接器充當程式碼和AI模型或服務之間的橋樑

  3. 結合提示和API
    Semantic Kernel將提示(prompts)與現有的API結合,以執行各種操作。通過向AI模型描述情境,後續會根據情境選擇最適合的API

依賴注入容器

依賴注入容器,在Semantic Kernel中稱為"kernel",是整個框架的核心。它的主要功能包括:

  • 管理服務:容器負責創建、維護和提供應用程序所需的各種服務實例。
  • 解耦:通過依賴注入,它幫助降低程式碼間的耦合度,使得整體更容易替換和測試。
  • 生命週期管理:控制服務實例的生命週期,如單例(Singleton)或每次請求新建(Transient)等。
  • 配置管理:集中管理各種服務的配置,便於統一調整和維護。

在Semantic Kernel中,這個容器特別重要,因為它管理了與AI服務交互所需的所有組件,包括但不限於AI模型連接器、內存管理、插件等。

連接器集

連接器是Semantic Kernel的重要組成部分,基本上就是在這邊註冊、添加自定義的功能,它們的主要作用包括:

  • 橋接作用:連接器充當應用程序代碼和外部AI服務(如OpenAI、Azure OpenAI等)之間的橋樑。
  • 抽象化:它們提供了一個統一的接口,隱藏了與不同AI服務交互的複雜性。
  • 易於集成:開發者可以輕鬆地將各種AI服務集成到他們的應用中,而無需深入了解每個服務的具體API。
  • 可擴展性:隨著新的AI服務出現,可以添加新的連接器,而不影響現有代碼。

這些連接器使得開發者可以更容易地在他們的應用中利用各種AI能力,而不需要為每個AI服務編寫專門的集成代碼。

結合提示和API

這個概念體現了Semantic Kernel的核心理念,即將AI能力與傳統編程無縫結合:

  • 提示工程:開發者可以編寫自然語言提示,描述他們希望AI執行的任務。
  • API集成:Semantic Kernel允許將這些提示與現有的API或函數關聯起來。
  • 語義理解:AI模型可以理解這些提示,並根據提示調用相應的API或執行相應的操作。
  • 靈活性:這種方法使得開發者可以用更自然的方式描述任務,而不是編寫複雜的條件邏輯。

通過這種方式,開發者可以利用AI的語言理解能力來增強現有的應用程序功能,創建更智能、更靈活的系統。


上一篇
[DAY17] 簡單測試 Semantic Kernel 的效果
下一篇
[DAY19] Microsoft Semantic Kernel
系列文
智慧語義互動平台:基於Spring和Semantic Kernel的Android應用創新30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言