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

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

給文心一言加上知識庫和搜索引擎(一)

2023-09-01 18:52 作者:FDX01  | 我要投稿
文心一言開放了,手機端的幾個模板還不錯
但是還是要拉出來溜溜

文心一言發(fā)布了,官方示例太無聊,寫個知識庫項目看看文心一言的水平究竟有多少。

待在家里躺床太無聊,所以小小地練練手和腦子

前期準(zhǔn)備

申請文心一言apikey

前往并登錄 百度智能云-登錄 (baidu.com)

創(chuàng)建應(yīng)用并打開文心一言turbo的付費

然后充值10元錢


創(chuàng)建Milvus數(shù)據(jù)庫(可選)

教程 Install Milvus Standalone with Docker Compose (CPU) Milvus documentation


測試文心一言

首先給langchain安裝升級一下

去langchain庫里翻代碼找找文心一言的例子

注意client_id應(yīng)該是你的apikey,不得不說百度的文檔就是答辯依托

成功得到答案

??Hello, ErnieBot. I'm a language model. What can I do for you?


正式開始

讓我們開始我們的敏捷開發(fā)

AI應(yīng)用最快的應(yīng)用開發(fā)方式當(dāng)然是gradio

我們首先嘗試使用gradio調(diào)用文心一言

這里要用到gradio的chatbot模塊

我們可以直接觀賞一下官方用例

chatbot

可以看到以下特性

  • 聊天框

  • 流式傳輸

  • 文件上傳

基本滿足了一個chatbot的基本需求,我們直接在此基礎(chǔ)上進行開發(fā)


安裝gradio

觀察函數(shù),我們需要修改的地方其實只有response部分


response部分使用文心一言的回答進行替換即可


這里使用了langchain的ConversationChain,并刪除了chatbot文件上傳功能

效果不錯涅~就是界面有點簡陋


接下來我們使用gradio的block功能為我們的界面進行大升級

首先把我們的apikey放到y(tǒng)aml文件中

添加的代碼如下

yaml文件,new_cof.yaml

添加個初始化模型和chain的函數(shù)

通過gradio的block函數(shù)優(yōu)化我們的設(shè)計

啟動后項目界面如下

來感覺了,有沒有

來試試

可以看到我們目前實現(xiàn)的功能設(shè)計:

  • 流式回答

  • 上下文記憶

  • 刷新與發(fā)送

  • 更改模型配置

至此一個完整簡單的chatbot設(shè)計就完成了


Embedding

我們在使用embedding功能時主要用到了milvus向量數(shù)據(jù)庫,也有平替的向量數(shù)據(jù)庫,請自行尋找...

設(shè)計gradio切換embedding和llm的按鈕,來決定是否使用知識庫

并設(shè)計按鈕使用知識庫

? ??


為知識庫添加支持函數(shù),并使用embedding相關(guān)的chain

重寫block部分和部分函數(shù),添加知識庫支持,這是目前的完整函數(shù)

使用,從文本中測試

新建文本文件test.txt

選擇載入知識庫,并上傳test.txt

詢問問題,可以看到我們的知識庫完美實現(xiàn)了功能


目前為止,我們實現(xiàn)的功能有

  • 上傳文件作為知識庫

  • 從鏈接中載入知識庫

  • 是否使用知識庫的切換


search

這里我們使用了duckduckgo_search作為我們的搜索引擎,如果你愿意,使用百度微軟谷歌也是同理

搜索實現(xiàn)

讓我們把搜索加入我們的應(yīng)用

可以從我們的終端中看出我們的搜索引擎在完美運作

.................

后續(xù)如果繼續(xù)就是設(shè)計向量數(shù)據(jù)庫對embedding數(shù)據(jù)的生命周期進行設(shè)計了

給文心一言加上知識庫和搜索引擎(一)的評論 (共 條)

分享到微博請遵守國家法律
随州市| 靖边县| 当涂县| 莎车县| 汉川市| 镇沅| 浦东新区| 北海市| 喀什市| 根河市| 安达市| 茶陵县| 威远县| 紫阳县| 北川| 神池县| 商南县| 黔东| 临西县| 上犹县| 新蔡县| 天等县| 南部县| 东莞市| 梧州市| 周至县| 萨迦县| 新津县| 临澧县| 封丘县| 东明县| 宣城市| 永嘉县| 镇赉县| 水富县| 兴宁市| 赣州市| 扎鲁特旗| 方山县| 安仁县| 绥中县|