最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

如何快速用LangChain打造一個(gè)智能問(wèn)答小客服??jī)H需40行代碼!(含代碼)

2023-08-10 14:46 作者:復(fù)利火箭  | 我要投稿

我們?cè)撊绾螒?yīng)用LangChain進(jìn)行多種的開發(fā)呢?在寫一些項(xiàng)目的時(shí)候我們經(jīng)常離不開要閱讀一些開源產(chǎn)品的代碼,而這個(gè)智能問(wèn)答小客服就是在LangChain源代碼上進(jìn)行微小改動(dòng)寫出來(lái)的,能夠更加清晰LangChain的結(jié)構(gòu)。一起來(lái)看看吧!希望通過(guò)這個(gè)例子能幫助大家更加理解LangChain。

框架設(shè)計(jì)

組件一覽:

組件類型子類型TextLoader索引組件文本加載器RecursiveCharacterTextSplitter索引組件文本分割器RetrievalQA鏈組件對(duì)話鏈ChatOpenAI模型組件LLMOpenAIEmbeddings模型組件文本嵌入模型Chroma索引組件VectorStores

準(zhǔn)備工作

安裝依賴

設(shè)置密鑰

導(dǎo)入庫(kù)和TXT加載器

開始編碼

加載文本數(shù)據(jù)

使用TextLoader加載名為qa.txt的文本文件,并將其存儲(chǔ)在data變量中。

分割文本

使用RecursiveCharacterTextSplitter將文本數(shù)據(jù)分割成多個(gè)片段,存儲(chǔ)在all_splits變量中。

chunk_size是將這個(gè)長(zhǎng)字符串按照設(shè)置的字符數(shù)拆分。

chunk_overlap 參數(shù)用于指定文本切分時(shí)的重疊量(overlap),表示每個(gè)分塊的前后兩個(gè)分塊之間會(huì)有多少個(gè)字符是重復(fù)的。這樣做的目的是避免關(guān)鍵信息被切分。

創(chuàng)建向量?jī)?chǔ)存器

創(chuàng)建一個(gè)Chroma向量存儲(chǔ)器,并使用OpenAIEmbeddings作為嵌入器,將分割后的文本片段作為輸入,存儲(chǔ)在vectorstore變量中。

用戶輸入循環(huán)

進(jìn)入一個(gè)無(wú)限循環(huán),提示用戶輸入問(wèn)題。

創(chuàng)建問(wèn)答鏈

創(chuàng)建一個(gè)ChatOpenAI實(shí)例,使用"GPT-3.5-turbo"模型和溫度值為0。然后,使用RetrievalQA.from_chain_type方法,將ChatOpenAI實(shí)例和vectorstore作為檢索器,創(chuàng)建一個(gè)問(wèn)答鏈。

獲取并打印回答

將用戶輸入的問(wèn)題作為查詢傳遞給問(wèn)答鏈,并將結(jié)果存儲(chǔ)在ret變量中。然后,打印出回答結(jié)果。

運(yùn)行主函數(shù)

如果當(dāng)前文件被直接執(zhí)行(而不是被導(dǎo)入為模塊),則調(diào)用run()函數(shù)。

qa.txt 內(nèi)容

問(wèn)題:扎染圍巾的活動(dòng)時(shí)長(zhǎng)是多少?

答案:扎染圍巾的活動(dòng)時(shí)長(zhǎng)是1.5—2小時(shí)。

問(wèn)題:扎染圍巾的價(jià)格是多少元一位?

答案:扎染圍巾的價(jià)格是120元/人。

問(wèn)題:制作土耳其水拓畫的活動(dòng)時(shí)長(zhǎng)是多少?

答案:制作土耳其水拓畫的活動(dòng)時(shí)長(zhǎng)是1.5—2小時(shí)。

問(wèn)題:制作土耳其水拓畫的價(jià)格是多少元一位?

答案:制作土耳其水拓畫的價(jià)格是100元/人。

問(wèn)題:北京絹人(標(biāo)準(zhǔn)版)的制作價(jià)格是多少元一位?

答案:北京絹人(標(biāo)準(zhǔn)版)的制作價(jià)格是150元/人。

問(wèn)題:北京絹人(唐人坊精裝版)的制作價(jià)格是多少元一位?

答案:北京絹人(唐人坊精裝版)的制作價(jià)格是200元/人。

問(wèn)題:捕夢(mèng)網(wǎng)的制作活動(dòng)時(shí)長(zhǎng)是多少?

答案:捕夢(mèng)網(wǎng)的制作活動(dòng)時(shí)長(zhǎng)是1—1.5小時(shí)。

問(wèn)題:捕夢(mèng)網(wǎng)的制作價(jià)格是多少元一位?

答案:捕夢(mèng)網(wǎng)的制作價(jià)格是130元/人。

問(wèn)題:馬卡龍塑料框的光影紙雕燈制作價(jià)格是多少元一位?

答案:馬卡龍塑料框的光影紙雕燈制作價(jià)格是160元/人。

問(wèn)題:木框的光影紙雕燈制作價(jià)格是多少元一位?

答案:木框的光影紙雕燈制作價(jià)格是180元/人。

問(wèn)題:弦絲畫制作的活動(dòng)時(shí)長(zhǎng)是多少?

答案:弦絲畫制作活動(dòng)時(shí)長(zhǎng)是2—3小時(shí)。

問(wèn)題:用弦絲畫制作福字是多少元一位?

答案:用弦絲畫制作福字、旺字等單字款價(jià)格120元/人。

問(wèn)題:用弦絲畫制作旺字是多少元一位?

答案:用弦絲畫制作福字、旺字等單字款價(jià)格120元/人。

問(wèn)題:用弦絲畫制作喜字是多少元一位?

答案:用弦絲畫制作福字、旺字等單字款價(jià)格120元/人,其他圖案款請(qǐng)咨詢?cè)斦劇?/p>

問(wèn)題:端午節(jié)香囊的制作價(jià)格是多少元一位?

答案:端午節(jié)香囊價(jià)格100元/人。

問(wèn)題:中秋節(jié)月餅的制作價(jià)格是多少元一位?

答案:中秋節(jié)月餅價(jià)格120元/人。

執(zhí)行結(jié)果演示

(可以換種問(wèn)法嘗試,我把“活動(dòng)時(shí)長(zhǎng)”改為“時(shí)間”嘗試了一下)

報(bào)錯(cuò)與解決

在運(yùn)行代碼中遇到過(guò)兩種問(wèn)題:

報(bào)錯(cuò)1:Number of requested results 4 is greater than number of elements in index 1, updating n_results = 1

解決辦法:增加txt文本的長(zhǎng)度或減少切割長(zhǎng)度

報(bào)錯(cuò)2:(無(wú)關(guān)緊要,可以忽略)python3.10/site-packages/sklearn/svm/_classes.py:32: FutureWarning: The default value of dual will change from True to 'auto' in 1.5. Set the value of dual explicitly to suppress the warning.

?warnings.warn(

解決辦法:加入代碼

import warnings

warnings.filterwarnings('ignore', category=FutureWarning)

完整代碼

完整代碼在githhub搜qq31682216/chatgpt_all,第一個(gè)項(xiàng)目便是。

小結(jié)

以上就是我在配置并使用用LangChain打造一個(gè)源代碼智能問(wèn)答小客服分享,希望可以幫到各位!歡迎關(guān)注或發(fā)私信與我共同討論更多大模型領(lǐng)域知識(shí)~

如何快速用LangChain打造一個(gè)智能問(wèn)答小客服??jī)H需40行代碼!(含代碼)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
承德市| 岳普湖县| 丘北县| 上杭县| 珲春市| 陕西省| 平顶山市| 德阳市| 广宁县| 湖南省| 达日县| 馆陶县| 禹州市| 梧州市| 梁河县| 湛江市| 米林县| 康定县| 扬州市| 伊宁市| 铜梁县| 枣庄市| 扶沟县| 饶平县| 昭觉县| 景德镇市| 安西县| 石首市| 太和县| 洛南县| 固始县| 九江县| 敦煌市| 军事| 太康县| 巧家县| 冀州市| 绥宁县| 呼玛县| 南召县| 江都市|