大模型面經(jīng)——Langchain總結 原創(chuàng)
?本篇介紹Langchain相關面試題。
本次將會分為上下兩個部分,本篇章將會介紹前三個問題,下一次在將后三個問題補充完畢。
以下是一個快捷目錄:
- 什么是 LangChain??
- LangChain 包含哪些部分??
- LangChain 中 Chat Message History 是什么??
- 介紹一下LangChain Agent??
- LangChain 如何Embedding & vector store??
- LangChain 存在哪些問題及方法方案
什么是 LangChain?
LangChain 是一個基于語言模型的框架,用于構建聊天機器人、生成式問答(GQA)、摘要等功能。它的核心思想是將不同的組件“鏈”在一起,以創(chuàng)建更高級的語言模型應用。LangChain 的起源可以追溯到 2022 年 10 月,由創(chuàng)造者 Harrison Chase 在那時提交了第一個版本。
LangChain 包含哪些部分?
為了能夠幫助大家理解,附上LangChain的流程圖,如上所示。從上圖可知,主要包括以下部分:
- 模型(Models):這指的是各種不同的語言模型以及它們的集成版本,例如GPT-4等大型語言模型。LangChain對這些來自不同公司的高級模型進行了概括,并封裝了通用的API接口。利用這些API,用戶能夠方便地調(diào)用和控制各個公司的大模型。
- 提示(Prompts):涉及到提示的管理、優(yōu)化和序列化過程。在大語言模型的應用中,提示詞發(fā)揮著至關重要的作用,無論是構建聊天機器人還是進行AI繪畫,有效的提示詞都是不可或缺的元素。
? - 記憶(Memory):它負責存儲與模型交互時的上下文狀態(tài)信息。由于模型本身不具備保存上下文的能力,因此在與模型交流時,傳遞相關的對話內(nèi)容上下文變得十分必要。
? - 索引(Indexes):用于將文檔結構化,以便更加高效地與模型進行互動。
? - 鏈(Chains):代表了對各種組件進行的一系列調(diào)用操作。
? - 代理(Agents):確定模型應當執(zhí)行哪些操作,它們會管理執(zhí)行流程并監(jiān)控整個過程直至任務完成。
LangChain 中 Chat Message History 是什么?
Chat Message History 是 Langchain 框架中的一個組件,用于存儲和管理聊天消息的歷史記錄。它可以跟蹤和保存用戶與AI之間的對話,以便在需要時進行檢索和分析。Langchain 提供了不同的Chat Message History 實現(xiàn)方式,包括以下:
- StreamlitChatMessageHistory:用于在 Streamlit 應用程序中存儲和使用聊天消息歷史記錄。它使用 Streamlit 會話狀態(tài)來存儲消息,并可以與 ConversationBufferMemory 以及鏈或代理一起使用。
- CassandraChatMessageHistory:使用 Apache Cassandra 數(shù)據(jù)庫來存儲聊天消息歷史記錄。Cassandra 是一種高度可擴展和高可用的 NoSQL 數(shù)據(jù)庫,適用于存儲大量數(shù)據(jù)。?
- MongoDBChatMessageHistory:使用 MongoDB 數(shù)據(jù)庫來存儲聊天消息歷史記錄。MongoDB 是一種面向文檔的 NoSQL 數(shù)據(jù)庫,使用類似 JSON 的文檔進行存儲。
?
文轉載自公眾號瓦力算法學研所,作者:喜歡瓦力的卷卷
原文鏈接:??https://mp.weixin.qq.com/s/PNRvuT2OvR3i0M24IO9Bdw??
?著作權歸作者所有,如需轉載,請注明出處,否則將追究法律責任
贊
收藏
回復
分享
微博
QQ
微信
舉報

回復
相關推薦