iT邦幫忙

2024 iThome 鐵人賽

DAY 1
0

前言

langchain
在實習時,偶然接觸到LangChain,以一名大學生的角度觀看LangChain這整個框架和應用
主要參照如下並進行修改
官方文件 
https://python.langchain.com/v0.2/docs/introduction/


正文

首先進行一下LangChain的簡單介紹

LangChain是個開源的框架,可以整合多個LLM和不同的資料源
並進行Prompt的優化操作,比起直接進行API串接,有多個範本和應用,讓開發者更為方便的開發出應用程式。
簡單來說就是針對Agent的開發。
主要特色為

  • 連接多達50種的LLM
    
  • 連線至不同的資料來源
    
  • 格式化使用者輸入
    
  • 納入記憶體,調用最近對話給予LLM作為提示,或在執行過程中保持狀態或上下文。
    
  • 連接多個擷取工具,可分析和使用者最相關的回應內容以傳回最相關的結果
    
  • Prompt Template,多次且一致的給予LLM提供系統指示
    
  • Agent使用LLM作為推理引擎,決定要採取哪個工作流,執行後,回饋到LLM以確定是否需要繼續執行,或者可以完成。 
    

資料來源:
https://aws.amazon.com/tw/what-is/langchain/

基本上LangChain的架構分為

LLM、Prompt、Document、Agent、Chain

  • Chains 是 LangChain 的核心元件,用於定義一系列按順序執行的工作流程。每個Chain可以包含多個步驟,這些步驟可以是不同的Model或資料處理套件。
    
  • Agents 是用於處理更複雜任務的元件,可以根據不同的上下文選擇不同的 Chains 進行處理,能夠根據實際需求動態選擇和執行 Chains。
    
  • LLM除了回應使用者,還會作為Agent來推論要採用哪個Chain來進行操作。
    
  • Prompts 是 LangChain 中用來設置和管理語言模型輸入的組件。它們幫助你設計和生成輸入模板,以便於語言模型生成更準確的輸出。
    
  • Tools 是 LangChain 提供的工具,用於擴展語言模型的功能,通常會是Chain當中的一個任務。
    
  • Document通常會做為LLM的資料庫擴充,會以提示工程RAG方式來進行LLM的提示和能力擴充。
    

https://ithelp.ithome.com.tw/upload/images/20240830/20168697H5yU40ZovH.png

資料來源
https://blog.stackademic.com/what-is-langchain-and-how-to-use-it-c9a656b80cea

下一天我們會進行LangCagin的安裝並且實際連接多個LLM來示範。


下一篇
day2 LangChain的安裝與連接多種LLM
系列文
智能雲端架構圖生成:結合LangChain&LangGrpah與Rag的創新應用27
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言