導(dǎo)語:用戶可以利用LangChain的模塊來改善大語言模型的使用,通過輸入自己的知識庫來“定制化”自己的大語言模型。
LLM(大語言模型) 是一項變革性的技術(shù),它將人類的各類知識和邏輯能力打包進(jìn)入了一個體積龐大的模型當(dāng)中。
但是通常來說,包括當(dāng)前公認(rèn)效果最好的LLM GPT-4都會有一個問題——事實問題錯誤,也常被稱之為幻覺。幻覺(Hallucination),或者說人工智能幻覺是人工智能的自信反應(yīng)。
當(dāng)模型輸出欺騙性數(shù)據(jù)的傾向時,其使用的的訓(xùn)練數(shù)據(jù)并不能證明輸出的合理性。人工智能幻覺的危險之處之一是模型的輸出看起來是正確的,其實它本質(zhì)上是錯誤的。
基于這種前提條件下,若是直接將LLM利用于生產(chǎn)環(huán)境中(例如客服答疑,新形式文檔等)時,那么事實幻覺就可能會造成極其嚴(yán)重的影響。
但是通過LangChain,我們可以通過將其它計算資源和自有的知識庫結(jié)合。依托于當(dāng)前的各類產(chǎn)品,在整合了當(dāng)前的語料資源庫后,各類LLM都會進(jìn)入到一個新的實用化發(fā)展階段。
LangChain介紹
LangChain是一個用于開發(fā)基于語言模型的應(yīng)用程序開發(fā)框架。總的來說,LangChain是一個鏈接面向用戶程序和LLM之間的一個中間層。
它在 2023 年 3 月獲得了 Benchmark Capital 的 1000 萬美元種子輪融資,在近期又拿到了紅杉2000-2500萬美金的融資,估值已經(jīng)提升到了2億美金左右。
LangChain 可以輕松管理與語言模型的交互,將多個組件鏈接在一起,并集成額外的資源,例如 API 和數(shù)據(jù)庫。其組件包括了模型(各類LLM),提示模板(Prompts),索引,代理(Agent),記憶等等。
當(dāng)前GitHub上的熱門項目Auto-GPT和Babyagi所使用的鏈?zhǔn)剿伎寄芰Χ际怯蒐angChain啟發(fā)而來。
LangChain項目主頁圖
LangChain工作流程
本次重點介紹LangChain搭配自有的知識庫讓LLM發(fā)揮更大功能的流程。
在缺少了上下文的情況下,即使是目前公認(rèn)最頂級的LLM GPT-4也無法回答部分需要特定領(lǐng)域的知識。
而要是想僅用自有知識庫來訓(xùn)練出LLMs又是不可能的,這個時候最好的方法就是利用LangChain的模塊來改善LLM的使用,通過輸入自己的知識庫來“定制化”自己的LLM。
Question Answering over specific documents是一個寫在LangChain主頁的主推功能。翻譯過來就是 基于特定文檔的問答 。
1.準(zhǔn)備自定義數(shù)據(jù)
準(zhǔn)備好需要LLM學(xué)習(xí)的內(nèi)容,它可以是一個純文本文件或者其他類型的文本(不同類型的文本需要不同的文檔加載器)。
2.拆分文檔
一般來講,每個文檔都是由復(fù)雜長短句、多種語法結(jié)合寫作而成的。在進(jìn)行輸入之前,就必須對這些文字進(jìn)行解構(gòu)處理。
對于英文LangChain一般會使用RecursiveCharacterTextSplitter處理。由于中文的復(fù)雜性,會使用到j(luò)ieba等處理工具預(yù)處理中文語句。
3.文本嵌入(Embeddings)
處理完文本之后,就可以對文本進(jìn)行嵌入(Embeddings)了。通過調(diào)用OpenAI的Embeddings API將文本向量化。在這步處理之后,文本就已經(jīng)不再是文字,而是以向量化存儲的信息。
再使用一個開源的Embeddings數(shù)據(jù)庫ChromaDB保存Embeddings數(shù)據(jù),就可以達(dá)到使用數(shù)據(jù)長期存儲和快速調(diào)用。
圖:將原文本嵌入
4.使用鏈(Chain)對矢量數(shù)據(jù)庫進(jìn)行問答
在擁有了嵌入數(shù)據(jù)之后,我們就可以利用LangChain的強(qiáng)大鏈功能來執(zhí)行我們的問答。這時就可以通過自然語言對于文檔內(nèi)容進(jìn)行提問了。
通過LangChain回答問題/完成任務(wù)
LangChain可能的應(yīng)用場景
當(dāng)前的AI熱潮吸引了很多人,而除了ChatGPT這類問答還有New Bing這種搜索服務(wù)外,并沒有什么可以將LLM商業(yè)化的案例。甚至可以說只有New Bing才是目前唯一一個成功的商業(yè)化案例。
LangChain為所有人提供了一個新的商業(yè)化方案。此前有將LLM導(dǎo)入客服軟件中應(yīng)用的方案,但是由于LLM容易出現(xiàn)事實幻覺而無法實施。
同時,將所需內(nèi)容通過Prompt導(dǎo)入LLM的想法也由于LLM的對話(Context)輸入限制而不可能實施。LangChain則通過將數(shù)據(jù)向量化避免了使用輸入限制,從而將所需內(nèi)容導(dǎo)入LLM進(jìn)行問答。
當(dāng)下的人工成本逐漸提升,例如淘寶客服等人工密集型產(chǎn)業(yè)的成本逐步提升。當(dāng)前的智能問答距離可用仍有較遠(yuǎn)的距離。
通過已經(jīng)預(yù)訓(xùn)練好的LLM是一個快速降本增效的方案。基于每個產(chǎn)品的數(shù)據(jù),可以將數(shù)據(jù)引入LLM中,讓LLM接替客服工作,準(zhǔn)確、快速的回答客戶的定制化問題,同時語氣貼合自然口吻,避免了情緒化工作。
基于文檔的工作還可以在各類公司培訓(xùn)和智能化文檔方面提供作用。很多產(chǎn)品文檔隨著時間的積累變得越來越復(fù)雜,多層跳轉(zhuǎn)也會讓人學(xué)習(xí)起來效率低下且不適。
此時基于LangChain就可以將文檔重新梳理,輸出為大綱類,在使用的時候可以隨時通過問答的形式將內(nèi)容輸出。類似于新員工培訓(xùn)和產(chǎn)品說明書等等場景都可以有所應(yīng)用。這就極大的拓寬了文字類LLM的使用場景。
基于LangChain的問答
除了直接與人交互的方面外,還可以導(dǎo)入特定領(lǐng)域的知識庫,實時更新LLM的內(nèi)容,讓LLM的知識時刻處于最新的狀態(tài)。依賴于此,LangChain除了可以完成自然語言文檔搜索外,還可以基于及時的資源進(jìn)行快速開發(fā)。
導(dǎo)入資源后LangChain開發(fā)出的網(wǎng)頁
當(dāng)前LangChain的局限性
目前,由于整個AI生態(tài)還處于一種快速發(fā)展期,各類工具和平臺還沒有完全成熟,因此LangChain的各類鏈和模塊的定制性和功能都還不夠強(qiáng)大。對于有高性能場景需求和定制化任務(wù)的可能需要自己重新修改。
事實合法性也是未來需要解決的一個痛點。LLM的各類越獄層出不窮。雖然在引入了嵌入之后LLM只會對文檔內(nèi)容進(jìn)行問答,但是仍然需要有一套額外的監(jiān)督系統(tǒng)防止出現(xiàn)任何非法的回答。
同時當(dāng)前LangChain還有使用難度較高等問題。目前的各類AI工具都面臨著普通用戶無法輕松駕馭等等的問題,而LangChain的問題更盛。
普通產(chǎn)品或者開發(fā)者的上手學(xué)習(xí)成本較高,使用起來難度很大。這一切都需要社區(qū)和商業(yè)資本的共同投入才有可能解決。
結(jié)語
LangChain是當(dāng)前眾多的AGI實驗性工具的基石項目。基于鏈(Chain)的LLM調(diào)用思維勢必會貫穿未來LLM的發(fā)展生態(tài)。
提前關(guān)注AI發(fā)展動向,關(guān)注LangChain的開發(fā)進(jìn)度,會對未來的AI應(yīng)用落地有極大的幫助。
審核編輯 :李倩
-
AI
+關(guān)注
關(guān)注
87文章
31536瀏覽量
270353 -
數(shù)據(jù)庫
+關(guān)注
關(guān)注
7文章
3848瀏覽量
64689 -
GPT
+關(guān)注
關(guān)注
0文章
360瀏覽量
15508
原文標(biāo)題:LangChain:為你定制一個專屬的GPT
文章出處:【微信號:alpworks,微信公眾號:阿爾法工場研究院】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
ARM主板定制:打造專屬智能硬件
![ARM主板<b class='flag-5'>定制</b>:打造<b class='flag-5'>專屬</b>智能硬件](https://file1.elecfans.com/web2/M00/EB/A1/wKgZomZe5fWAXs4EAABHp9zbA6E074.png)
探秘鋰電池固定盒可定制加工廠,解鎖專屬定制新體驗
![探秘鋰電池固定盒可<b class='flag-5'>定制</b>加工廠,解鎖<b class='flag-5'>專屬</b><b class='flag-5'>定制</b>新體驗](https://file1.elecfans.com/web3/M00/03/5A/wKgZO2dmatKAQ4H-AAEjJSJ5Qnc477.png)
GPT誕生兩周年,AIPC為連接器帶來什么新變化?
LangChain框架關(guān)鍵組件的使用方法
![<b class='flag-5'>LangChain</b>框架關(guān)鍵組件的使用方法](https://file1.elecfans.com/web2/M00/05/A6/wKgaombRiSSAEtPYAAGsXrwS45c283.jpg)
OpenAI解鎖GPT-4o定制功能,助力企業(yè)精準(zhǔn)優(yōu)化AI應(yīng)用
OpenAI api key獲取并可調(diào)用GPT-4.0、GPT-4o、GPT-4omini
![OpenAI api key獲取并可調(diào)用<b class='flag-5'>GPT</b>-4.0、<b class='flag-5'>GPT</b>-4o、<b class='flag-5'>GPT</b>-4omini](https://file1.elecfans.com/web2/M00/DF/17/wKgaomYuCbSAVjVdAAFqVfXnuJY859.png)
OpenAI 推出 GPT-4o mini 取代GPT 3.5 性能超越GPT 4 而且更快 API KEY更便宜
![OpenAI 推出 <b class='flag-5'>GPT</b>-4o mini 取代<b class='flag-5'>GPT</b> 3.5 性能超越<b class='flag-5'>GPT</b> 4 而且更快 API KEY更便宜](https://file1.elecfans.com//web2/M00/FE/73/wKgaomabZkmARwBVAAKrDCcV2oQ11.webp)
GPT的定義和演進(jìn)歷程
如何為MOTIX TLE9879X MCU配置500KHz的GPT中斷?
寶塔面板Docker一鍵安裝:部署GPTAcademic,開發(fā)私有GPT學(xué)術(shù)優(yōu)化工具
![寶塔面板Docker<b class='flag-5'>一</b>鍵安裝:部署GPTAcademic,開發(fā)私有<b class='flag-5'>GPT</b>學(xué)術(shù)優(yōu)化工具](https://file1.elecfans.com//web2/M00/F7/00/wKgZomaDetqAKW_2AAMDjihaz70243.png)
評論