前言
在做一個(gè)中醫(yī)問(wèn)診的項(xiàng)目上,決定使用rasa框架來(lái)搭建一個(gè)多輪對(duì)話的智能問(wèn)診的模型。 本文介紹在windows系統(tǒng)上 rasa、MITIE、rasa-nlu-chi、rasa x 的安裝。電腦上已經(jīng)有了anaconda和pycharm,所以沒有這部分的相關(guān)過(guò)程。 從創(chuàng)建好一個(gè)虛擬環(huán)境開始----->
安裝過(guò)程
1.使用conda 命令創(chuàng)建一個(gè)新的虛擬環(huán)境
create -n medicalrasa python==3.8
2.進(jìn)入虛擬環(huán)境
conda activate medicalrasa
3.安裝rasa (自動(dòng)安裝最新版本,有版本要求的帶上版本號(hào),另外當(dāng)前rasa3.0以上版本暫不支持rasa x,有rasa x使用需求的請(qǐng)直接安裝rasa x) 說(shuō)明: 換源(-i http://mirrors.aliyun.com/pypi/simple/)、 信任鏡像鏈接(–trusted-host mirrors.aliyun.com) 避免版本沖突導(dǎo)致安裝失敗(–use-deprecated=legacy-resolver) 因?yàn)橛邪姹緵_突,如果沒加這個(gè)參數(shù)會(huì)進(jìn)入死循環(huán)找版本,一直出現(xiàn): pip is looking at multiple versions of urllib3 to determine which version is compatible with other requirements. This could take a while.
pip install rasa -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com --use-deprecated=legacy-resolver
或安裝rasa x
pip3 install rasa-x --extra-index-url https://pypi.rasa.com/simple
4.安裝完后有可能出現(xiàn)紅色報(bào)錯(cuò)代碼,提示依賴包版本不適配,更換報(bào)錯(cuò)的包的版本
pip uninstall xxx
pip install xxx==xxx
5.輸入python ,進(jìn)入python環(huán)境,輸入import tensorflow ,嘗試導(dǎo)入tensorflow以確定tensorflow是否安裝好 可能報(bào)錯(cuò):(也是依賴包版本問(wèn)題)
TypeError: Descriptors cannot not be created directly.
If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.
If you cannot immediately regenerate your protos, some other possible workarounds are:
1. Downgrade the protobuf package to 3.20.x or lower.
2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower).
更換tensorflow依賴包版本
pip uninstall protobuf
pip install protobuf==3.20.1
6.建一個(gè)文件夾用于rasa工程并在該目錄下(確保該文件夾為空)運(yùn)行rasa init --no-prompt ,將在當(dāng)前文件夾下建立rasa初始化結(jié)構(gòu)文件目錄
7.其他 如無(wú)必要不需要安裝ujson等包,pip install rasa 會(huì)自動(dòng)找到最新的rasa穩(wěn)定版本(目前自動(dòng)安裝3.1.0版本)同時(shí)會(huì)自動(dòng)安裝tensorflow等依賴,不需要自己?jiǎn)为?dú)裝一遍 可使用pip show rasa 查看當(dāng)前rasa包信息及安裝位置, 或使用rasa --version 查看更詳細(xì)的版本信息。
構(gòu)建中文對(duì)話系統(tǒng)需要安裝以下模塊
-
Rasa_NLU_Chi:Rasa NLU本身是只支持英文和德文。中文因?yàn)槠涮厥庑孕枰尤胩囟ǖ膖okenizer作為整個(gè)流水線的一部分。Rasa_NLU_Chi加入了jieba作為中文的tokenizer,適用于中文的rasa NLU。 -
MITIE:Rasa NLU的實(shí)體識(shí)別和意圖識(shí)別的任務(wù),需要一個(gè)訓(xùn)練好的MITIE的模型。這個(gè)MITIE模型是非監(jiān)督訓(xùn)練得到的,類似于word2vec中的word embedding。另外有的也用到了Kashgari 這個(gè)NLP框架,為命名實(shí)體識(shí)別(NER)、詞性標(biāo)注(PoS)和文本分類任務(wù)構(gòu)建模型。不過(guò)MITIE以能夠解決當(dāng)前任務(wù),不累述。 參考:用Rasa NLU構(gòu)建自己的中文NLU系統(tǒng)
8.安裝Rasa_NLU_Chi 下載鏈接地址:https://github.com/crownpku/rasa_nlu_chi 首先下載代碼并解壓到rasa工程文件夾內(nèi),然后打開cmd進(jìn)入到Rasa_NLU_Chi-master文件目錄,
執(zhí)行python setup.py install 安裝。 完成安裝: 9. 安裝MITIE
MITIE在windows系統(tǒng)上的安裝比較麻煩,需要有Visual Studio 環(huán)境、cmake、boost, 三者缺一不可。具體安裝過(guò)程如下: A. 安裝 Visual Studio,以 vs2017 社區(qū)版為例。在官網(wǎng)下載安裝包,安裝時(shí)組件勾選 如圖 2-2,安裝。安裝完成后,把 vs 安裝路徑(你的實(shí)際安裝路徑) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64 加入環(huán)境變量,并 在該路徑下 cmd,輸入'cl’不報(bào)錯(cuò)則安裝成功。如圖: B. 安裝 cmake。官網(wǎng)下載:https:///download/,解壓后把 bin 目錄路徑, 配置到 path 環(huán)境變量中,例如:D:\SoftInstall\cmake-3.19.1-win64-x64\bin。運(yùn)行 cmake --version 測(cè)試,確保安裝成功: C. 安 裝 boost 。 官 網(wǎng) 下 載 : https://www./ , 解 壓 后 在 目 錄 D:\boost_1_69_0\tools\build 下 cmd,輸入.\bootstrap.bat,開始安裝。安裝成功后輸 入.\b2 --prefix=D:\boost\bin install,其中“D:\”為任意安裝路徑。然后把這個(gè)目錄 增加到系統(tǒng)的環(huán)境變量中 D:\boost\bin\bin。最后,確保安裝成功: D.安裝MITIE。下載 MITIE 安裝包: https://github.com/mit-nlp/MITIE 解壓后的文件放在工程目錄下,和安裝Rasa_NLU_Chi的步驟一樣,在相應(yīng)目錄下運(yùn)行 python setup.py install 命令安裝。
|