基于Langchain+向量數(shù)據(jù)庫+ChatGPT構(gòu)建企業(yè)級(jí)知識(shí)庫
▼最近直播超級(jí)多,預(yù)約保你有收獲
近期直播:《基于 LLM 大模型的向量數(shù)據(jù)庫企業(yè)級(jí)應(yīng)用實(shí)踐》
1—
LangChain 是什么?
-
支持多種模型接口調(diào)用:OpenAI、Hugging Face、AzureOpenAI ... -
支持多種方式實(shí)現(xiàn)緩存記錄:In-Mem(內(nèi)存)、SQLite、Redis、SQL ... -
支持流模式(類型打字機(jī)的效果)
-
支持多種自定義模板
-
支持文檔切割 -
支持 token 向量化 -
支持向量數(shù)據(jù)庫
-
鏈允許我們將多個(gè)組件組合在一起,以創(chuàng)建一個(gè)單一的、連貫的應(yīng)用程序。比如:我們可以創(chuàng)建一個(gè)鏈,該鏈接受用戶輸入,使用提示模板對(duì)其進(jìn)行格式化,然后將格式化的響應(yīng)傳遞給 LLM。
顧名思義,這個(gè)就是從指定源進(jìn)行加載數(shù)據(jù)的, 比如:
文件夾 DirectoryLoader
Azure 存儲(chǔ) AzureBlobStorageContainerLoader
CSV文件 CSVLoader
印象筆記 EverNoteLoader
Google網(wǎng)盤 GoogleDriveLoader
任意的網(wǎng)頁 UnstructuredHTMLLoader
PDF PyPDFLoader
S3 S3DirectoryLoader/S3FileLoader
Youtube YoutubeLoader 等官方文檔地址:https://python.langchain.com/en/latest/modules/indexes/document_loaders.html
代碼實(shí)踐如下:

— 2 —
文本切割(Text Splitters)
當(dāng)您想要處理長(zhǎng)文本時(shí),有必要將該文本拆分為塊。聽起來很簡(jiǎn)單,但這里有很多潛在的復(fù)雜性。在理想情況下,我們希望將語義相關(guān)的文本片段放在一起?!罢Z義相關(guān)”的含義可能取決于文本的類型。文本切割器的工作方式:
-
將文本拆分為語義有意義的小塊(通常是句子) -
開始將這些小塊組合成一個(gè)較大的塊,直到達(dá)到一定的大?。ㄓ赡硞€(gè)函數(shù)測(cè)量) -
達(dá)到一定大小后,將該塊設(shè)置為自己的文本段,然后開始創(chuàng)建一個(gè)具有一些重疊的新文本塊(以保持塊之間的上下文)

—3 —
向量化(向量數(shù)據(jù)庫)
-
Chroma(開源本地文件向量數(shù)據(jù)庫) -
Milvus(開源分布式高性能數(shù)據(jù)庫) -
Pinecone(商業(yè)化分布式高性能數(shù)據(jù)庫)

— 4 —
鏈(Chain)
-
LLMChain(適用于各種 LLM 鏈) -
load_qa_chain( QA 問答) -
ConversationalRetrievalChain(使用聊天記錄在文檔上進(jìn)行聊天)
— 5—
免費(fèi)超干貨 LLM 大模型直播
為了幫助同學(xué)們掌握好 LLM 大模型的向量數(shù)據(jù)庫企業(yè)級(jí)應(yīng)用實(shí)戰(zhàn),明晚8點(diǎn),我和陳東老師會(huì)開一場(chǎng)直播和同學(xué)們深度聊聊大模型的向量化、向量數(shù)據(jù)庫的應(yīng)用實(shí)戰(zhàn),請(qǐng)同學(xué)點(diǎn)擊下方按鈕預(yù)約直播,咱們明晚8點(diǎn)不見不散哦~~
END
