本發(fā)明涉及一種基于大模型和rag技術(shù)構(gòu)建ai知識(shí)庫方法,屬于軟件開發(fā)領(lǐng)域,融合了qwen2通用大模型+rag(retrieval-augmented?generation)技術(shù)+minio+小樣本微調(diào)策略,旨在構(gòu)建一個(gè)高度專業(yè)化的ai智能知識(shí)庫系統(tǒng)。
背景技術(shù):
1、在大數(shù)據(jù)項(xiàng)目的實(shí)施過程中,匯聚了多種類型的數(shù)據(jù),包括結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)。結(jié)構(gòu)化數(shù)據(jù)主要是數(shù)據(jù)庫,excel等規(guī)范的二維表數(shù)據(jù),而非結(jié)構(gòu)化數(shù)據(jù)則主要是word、pdf、圖片等形式的數(shù)據(jù)。對(duì)于非結(jié)構(gòu)化數(shù)據(jù)項(xiàng)目中通常采用oss對(duì)象存儲(chǔ)方式如minio。這種存儲(chǔ)方式主要用于提供數(shù)據(jù)網(wǎng)盤及查詢結(jié)果的附件功能。且隨著非結(jié)構(gòu)數(shù)據(jù)的增加,oss對(duì)象存儲(chǔ)中數(shù)據(jù)分類邏輯就會(huì)不清晰。在實(shí)際應(yīng)用場(chǎng)景中,用戶對(duì)非結(jié)構(gòu)化數(shù)據(jù)的價(jià)值需求越來越高。他們希望這些數(shù)據(jù)不僅能作為附件使用,還能構(gòu)建成一個(gè)內(nèi)部知識(shí)庫。知識(shí)庫支持ai交互式查詢,幫助用戶快速找到所需的內(nèi)部知識(shí)集。同時(shí)根據(jù)一些輸入內(nèi)容,ai能夠根據(jù)知識(shí)庫中內(nèi)容生成解決方案文檔,從而更好地發(fā)揮非結(jié)構(gòu)化數(shù)據(jù)的價(jià)值。
2、然而,目前市場(chǎng)上還沒有能夠解決這一問題的策略和方法,可見,開發(fā)出一款能解決這一問題的方法成為行業(yè)亟待解決的一個(gè)技術(shù)難題。
技術(shù)實(shí)現(xiàn)思路
1、為了解決上述存在的問題,本發(fā)明公開了一種基于大模型和rag技術(shù)構(gòu)建ai知識(shí)庫方法,其具體技術(shù)方案如下:
2、一種基于大模型和rag技術(shù)構(gòu)建ai知識(shí)庫方法,包括以下幾個(gè)步驟:
3、步驟s1,將開發(fā)完成的前端用戶界面和后端服務(wù)部署到linux服務(wù)器上,使后端服務(wù)能夠在內(nèi)網(wǎng)上運(yùn)行并提供訪問接口,從而使用戶能夠通過前端界面與后端服務(wù)進(jìn)行交互,實(shí)現(xiàn)應(yīng)用程序的全部功能;
4、所述前端用戶界面包括html、css、javascript的靜態(tài)資源;
5、所述后端服務(wù)包括api接口、數(shù)據(jù)庫交互邏輯和業(yè)務(wù)邏輯處理,
6、步驟s2,搭建安裝ollama本地運(yùn)行大型語言模型工具;
7、步驟s3,下載qwen2大模型,使用ollama?run?qwen2將qwen2大模型導(dǎo)入到ollama平臺(tái),ollama提供?api接口,能夠創(chuàng)建、運(yùn)行和管理大型語言模型實(shí)例;
8、步驟s4,安裝部署開源rag?anythingllm服務(wù),構(gòu)建檢索系統(tǒng),用于從內(nèi)部文檔庫中檢索相關(guān)信息;
9、步驟s5,通過開發(fā)的前端界面調(diào)用rag?anythingllm服務(wù)的api接口,通過api接口設(shè)置連接ollama平臺(tái),進(jìn)而訪問qwen2大模型;
10、步驟s6,安裝部署分布式minio服務(wù),minio服務(wù)作為對(duì)象存儲(chǔ)解決方案,用于存儲(chǔ)和檢索內(nèi)部文檔和數(shù)據(jù);
11、步驟s7,通過rag?anythingllm?通過http協(xié)議請(qǐng)求連接minio?web的請(qǐng)求地址;
12、步驟s8,通過rag?anythingllm解析minio中所有的文件;
13、步驟s9,用戶在前端界面中輸入內(nèi)容后,后端首先進(jìn)行鑒權(quán)操作以確保安全性,鑒權(quán)通過后,后端會(huì)調(diào)用ollama的api接口,將用戶的輸入內(nèi)容作為請(qǐng)求體傳輸?shù)絨wen2大模型中,qwen2大模型接收到這些輸入后,對(duì)其進(jìn)行自然語言處理和分析,并返回相應(yīng)的結(jié)果或響應(yīng)給前端界面;
14、步驟s10,前端界面提供小樣本問答式的界面,用戶填寫提交后,后端封裝成json格式的數(shù)據(jù),并調(diào)用ollama接口,把json數(shù)據(jù)融合到qwen2模型中,增強(qiáng)后期的大模型推理能力的準(zhǔn)確性;
15、步驟s11,可視化界面支持用戶對(duì)每次推理生成的結(jié)果的點(diǎn)評(píng),從而優(yōu)化大模型推薦模型策略的準(zhǔn)確性和合理性。
16、進(jìn)一步的,所述步驟s8的實(shí)現(xiàn)的步驟如下:
17、8.1,啟動(dòng)服務(wù):?jiǎn)?dòng)anythingllm服務(wù);
18、8.2,發(fā)送查詢請(qǐng)求:通過前端界面調(diào)用后端api接口發(fā)送http查詢請(qǐng)求,解析minio上文件路徑;
19、8.3,獲取解析結(jié)果:anythingllm會(huì)返回解析后的內(nèi)容,包括文件中的關(guān)鍵信息和摘要。
20、進(jìn)一步的,所述步驟s11的實(shí)現(xiàn)的步驟如下:
21、11.1,把用戶的點(diǎn)評(píng)作為額外的訓(xùn)練數(shù)據(jù),用于模型的進(jìn)一步訓(xùn)練和優(yōu)化;
22、11.2,通過將用戶的點(diǎn)評(píng)與模型的輸出進(jìn)行關(guān)聯(lián),形成一個(gè)反饋循環(huán),在這個(gè)循環(huán)中,模型據(jù)用戶的點(diǎn)評(píng)調(diào)整其參數(shù)或策略,以提高未來推理的準(zhǔn)確性和模型的泛化能力;
23、11.3,根據(jù)用戶的點(diǎn)評(píng)歷史,模型學(xué)習(xí)到用戶的個(gè)人喜好和需求,從而在未來的推理中提供更加個(gè)性化的結(jié)果。
24、進(jìn)一步的,所述后端服務(wù)打通前端用戶界面、后端服務(wù)與qwen2大模型之間的橋梁,同時(shí)實(shí)現(xiàn)用戶認(rèn)證和授權(quán)機(jī)制,確保只有授權(quán)用戶才能訪問知識(shí)庫。
25、進(jìn)一步的,所述步驟s6還包括知識(shí)庫構(gòu)建,上傳內(nèi)部多樣化知識(shí)文檔到minio,raganythingllm通過http訪問minio中的非結(jié)構(gòu)化數(shù)據(jù)。
26、進(jìn)一步的,所述步驟s2根據(jù)ollama的安裝手冊(cè),搭建安裝ollama本地運(yùn)行大型語言模型工具;
27、步驟s4根據(jù)anythingllm的安裝手冊(cè),安裝部署開源rag?anythingllm服務(wù);
28、步驟s6根據(jù)minio的安裝手冊(cè),安裝部署分布式minio服務(wù)。
29、本發(fā)明的有益效果是:
30、本發(fā)明基于ollama+qwen2+rag?anythingllm+minio,依托qwen2通過大模型為基礎(chǔ),提供了廣泛的知識(shí)理解和生成能力,通過rag檢索增強(qiáng)生成的特性加載內(nèi)部文檔數(shù)據(jù)以補(bǔ)充和豐富回答內(nèi)容,打造領(lǐng)域內(nèi)ai智能知識(shí)庫系統(tǒng)。
31、本發(fā)明具有以下系統(tǒng)優(yōu)勢(shì):
32、前端用戶界面:方便用戶與知識(shí)庫系統(tǒng)交互;
33、后端服務(wù):打通前后與大模型之間的橋梁,同時(shí)實(shí)現(xiàn)用戶認(rèn)證和授權(quán)機(jī)制,確保只有授權(quán)用戶才能訪問知識(shí)庫;
34、部署ollama平臺(tái)和qwen2大模型:通過ollama部署和管理qwen2大模型;
35、部署rag?anythingllm:構(gòu)建檢索系統(tǒng),用于從內(nèi)部文檔庫中檢索相關(guān)信息。
36、qwen2模型和rag技術(shù)集成:qwen2大模型集成rag?anythingllm技術(shù),實(shí)現(xiàn)qwen2通用大模型與外部知識(shí)庫的交互。
37、minio對(duì)象存儲(chǔ):作為對(duì)象存儲(chǔ)解決方案,用于存儲(chǔ)和檢索內(nèi)部文檔和數(shù)據(jù)。
38、知識(shí)庫構(gòu)建:上傳內(nèi)部多樣化知識(shí)文檔到minio,rag?anythingllm通過http訪問minio中的非結(jié)構(gòu)化數(shù)據(jù)。
39、小樣本微調(diào):提供交互式界面讓用戶對(duì)qwen2模型進(jìn)行微調(diào),使其更加適應(yīng)于場(chǎng)景的需求。
40、系統(tǒng)的優(yōu)化:根據(jù)每次用戶的打分,持續(xù)優(yōu)化qwen2大模型,提升推理的準(zhǔn)確性和實(shí)用性。
1.一種基于大模型和rag技術(shù)構(gòu)建ai知識(shí)庫方法,其特征在于,包括以下幾個(gè)步驟:
2.根據(jù)權(quán)利要求1所述的基于大模型和rag技術(shù)構(gòu)建ai知識(shí)庫方法,其特征在于,所述步驟s8的實(shí)現(xiàn)的步驟如下:
3.根據(jù)權(quán)利要求1所述的基于大模型和rag技術(shù)構(gòu)建ai知識(shí)庫方法,其特征在于,所述步驟s11的實(shí)現(xiàn)的步驟如下:
4.根據(jù)權(quán)利要求1所述的基于大模型和rag技術(shù)構(gòu)建ai知識(shí)庫方法,其特征在于,所述后端服務(wù)打通前端用戶界面、后端服務(wù)與qwen2大模型之間的橋梁,同時(shí)實(shí)現(xiàn)用戶認(rèn)證和授權(quán)機(jī)制,確保只有授權(quán)用戶才能訪問知識(shí)庫。
5.根據(jù)權(quán)利要求1所述的基于大模型和rag技術(shù)構(gòu)建ai知識(shí)庫方法,其特征在于,所述步驟s6還包括知識(shí)庫構(gòu)建,上傳內(nèi)部多樣化知識(shí)文檔到minio,rag?anythingllm通過http訪問minio中的非結(jié)構(gòu)化數(shù)據(jù)。
6.根據(jù)權(quán)利要求1所述的基于大模型和rag技術(shù)構(gòu)建ai知識(shí)庫方法,其特征在于,所述步驟s2根據(jù)ollama的安裝手冊(cè),搭建安裝ollama本地運(yùn)行大型語言模型工具;