資料介紹
軟件簡(jiǎn)介
AnyQ(ANswer Your Questions)
AnyQ(ANswer Your Questions)?開(kāi)源項(xiàng)目主要包含面向FAQ集合的問(wèn)答系統(tǒng)框架、文本語(yǔ)義匹配工具SimNet。
問(wèn)答系統(tǒng)框架采用了配置化、插件化的設(shè)計(jì),各功能均通過(guò)插件形式加入,當(dāng)前共開(kāi)放了20+種插件。開(kāi)發(fā)者可以使用AnyQ系統(tǒng)快速構(gòu)建和定制適用于特定業(yè)務(wù)場(chǎng)景的FAQ問(wèn)答系統(tǒng),并加速迭代和升級(jí)。
SimNet是百度自然語(yǔ)言處理部于2013年自主研發(fā)的語(yǔ)義匹配框架,該框架在百度各產(chǎn)品上廣泛應(yīng)用,主要包括BOW、CNN、RNN、MM-DNN等核心網(wǎng)絡(luò)結(jié)構(gòu)形式,同時(shí)基于該框架也集成了學(xué)術(shù)界主流的語(yǔ)義匹配模型,如MatchPyramid、MV-LSTM、K-NRM等模型。SimNet使用PaddleFluid和Tensorflow實(shí)現(xiàn),可方便實(shí)現(xiàn)模型擴(kuò)展。使用SimNet構(gòu)建出的模型可以便捷的加入AnyQ系統(tǒng)中,增強(qiáng)AnyQ系統(tǒng)的語(yǔ)義匹配能力
(English)
詳細(xì)介紹
FAQ問(wèn)答系統(tǒng)框架
AnyQ系統(tǒng)框架主要由Question Analysis、Retrieval、Matching、Re-Rank等部分組成,框架中包含的功能均通過(guò)插件形式加入,如Analysis中的中文切詞,Retrieval中的倒排索引、語(yǔ)義索引,Matching中的Jaccard特征、SimNet語(yǔ)義匹配特征,當(dāng)前共開(kāi)放了20+種插件。AnyQ系統(tǒng)的配置化、插件化設(shè)計(jì)有助于開(kāi)發(fā)者快速構(gòu)建、快速定制適用于特定業(yè)務(wù)場(chǎng)景的FAQ問(wèn)答系統(tǒng),加速迭代和升級(jí)。 AnyQ的框架結(jié)構(gòu)如下圖:
配置化
AnyQ系統(tǒng)集成了檢索和匹配的眾多插件,通過(guò)配置的方式生效;以檢索方式和文本匹配相似度計(jì)算中的插件為例:
-
檢索方式(Retrieval)
-
倒排索引:基于開(kāi)源倒排索引Solr,加入百度開(kāi)源分詞;
-
語(yǔ)義檢索:基于SimNet語(yǔ)義表示,使用ANNOY進(jìn)行ANN 檢索;
-
人工干預(yù):通過(guò)提供精準(zhǔn)答案,控制輸出;
-
-
匹配計(jì)算(Matching)
-
SimNet語(yǔ)義匹配:使用語(yǔ)義匹配SimNet架構(gòu)訓(xùn)練的模型,構(gòu)建問(wèn)題在語(yǔ)義層面的相似度;
-
Cosine相似度
-
Jaccard相似度
-
BM25
-
字面匹配相似度:在對(duì)中文問(wèn)題進(jìn)行切詞等處理之后,計(jì)算字面匹配特征
-
語(yǔ)義匹配相似度
-
插件化
除框架外,AnyQ的所有功能都是通過(guò)插件形式加入,用戶自定義的插件很容易加到AnyQ系統(tǒng)中,只需實(shí)現(xiàn)對(duì)應(yīng)的接口即可,如自定義詞典加載、Question分析方法、檢索方式、匹配相似度、排序方式等,真正實(shí)現(xiàn)可定制和插件化。
文本語(yǔ)義匹配框架SimNet
SimNet是百度自然語(yǔ)言處理部于2013年自主研發(fā)的語(yǔ)義匹配框架,該框架在百度各產(chǎn)品上廣泛應(yīng)用,主要包括BOW、CNN、RNN、MM-DNN等核心網(wǎng)絡(luò)結(jié)構(gòu)形式,同時(shí)基于該框架也集成了學(xué)術(shù)界主流的語(yǔ)義匹配模型,如MatchPyramid、MV-LSTM、K-NRM等模型。SimNet使用PaddleFluid和Tensorflow實(shí)現(xiàn),可方便實(shí)現(xiàn)模型擴(kuò)展。使用SimNet構(gòu)建出的模型可以便捷的加入AnyQ系統(tǒng)中,增強(qiáng)AnyQ系統(tǒng)的語(yǔ)義匹配能力。
按照文本語(yǔ)義匹配網(wǎng)絡(luò)結(jié)構(gòu), 可將SimNet中實(shí)現(xiàn)的網(wǎng)絡(luò)模型主要分為如下兩類:
-
Representation-based Models 如:BOW, CNN, RNN(LSTM, GRNN) 特點(diǎn):文本匹配任務(wù)的兩端輸入,分別進(jìn)行表示,之后將表示進(jìn)行融合計(jì)算相似度;
-
Interaction-based Models 如:MatchPyramid, MV-LSTM, K-NRM, MM-DNN 特點(diǎn):在得到文本word級(jí)別的序列表示之后,根據(jù)兩個(gè)序列表示計(jì)算相似度匹配矩陣,融合每個(gè)位置上的匹配信息給出最終相似度打分;
SimNet使用PaddleFluid和Tensorflow實(shí)現(xiàn),更多文檔請(qǐng)參考:
代碼編譯
Linux
cmake 3.0以上(推薦3.2.2版本),g++ >=4.8.2,
mkdir?build?&&?cd?build?&&?cmake?..?&&?make
Others
針對(duì)MacOS、Windows等環(huán)境,推薦使用docker方式
#?使用paddle官方鏡像 docker?pull?paddlepaddle/paddle:lastest-dev
Demo
構(gòu)建索引、配置
#?獲取anyq定制solr,anyq示例配置 cp?../tools/anyq_deps.sh?. sh?anyq_deps.sh #?啟動(dòng)solr,?依賴python-json,?jdk>=1.8 cp?../tools/solr?-rp?solr_script sh?solr_script/anyq_solr.sh?solr_script/sample_docs
-
HTTP-Server
./run_server #?請(qǐng)求示例: http:${host}:${port}/anyq?question=XXX
-
lib
./demo_anyq?sample_input_json
更多文檔
如何貢獻(xiàn)
-
可以在AnyQ框架下定制特定功能的插件,教程參考AnyQ如何添加插件
-
如果覺(jué)得自己定制的插件功能足夠通用&漂亮,歡迎給我們提交PR
Copyright and License
AnyQ is provided under the?Apache-2.0 license.
- 《建筑電工入門問(wèn)答》pdf 0次下載
- 新能源知識(shí)問(wèn)答
- Citespace軟件操作問(wèn)答
- EMI/EMC設(shè)計(jì)經(jīng)典70問(wèn)答 25次下載
- 視覺(jué)問(wèn)答與對(duì)話任務(wù)研究綜述 10次下載
- 基于計(jì)算機(jī)視覺(jué)和NLP的跨媒體問(wèn)答與推理 8次下載
- 電源設(shè)計(jì)經(jīng)典問(wèn)答 7次下載
- 基于MASK模型的視頻問(wèn)答機(jī)制設(shè)計(jì)方案 2次下載
- FAQ: Gyroscope In-Run Bias Stability (EngineerZone?)
- 單片機(jī)應(yīng)用編程技巧FAQ 6次下載
- PADS2005SP2_FAQ 0次下載
- 模擬開(kāi)關(guān)FAQ應(yīng)用筆記 72次下載
- The SPECCTRAQuest FAQ
- 基于知網(wǎng)的中文常問(wèn)問(wèn)答系統(tǒng)
- 實(shí)用密封技術(shù)問(wèn)答.pdf
- 總有一個(gè)是你會(huì)遇到的S參數(shù)問(wèn)題的問(wèn)答 272次閱讀
- Nuttx RTOS入門知識(shí)簡(jiǎn)介及開(kāi)源代碼運(yùn)行 4594次閱讀
- 基于OpenVINO和LangChain構(gòu)建RAG問(wèn)答系統(tǒng) 751次閱讀
- 全平臺(tái)系統(tǒng)開(kāi)源免費(fèi)抓包軟件ProxyPin概述 1724次閱讀
- 前沿開(kāi)源技術(shù)領(lǐng)域的開(kāi)源大數(shù)據(jù)一一解讀 1005次閱讀
- 電子問(wèn)答按鈕表的電路圖解析 1402次閱讀
- fireflyAIO-3288C主板FAQ燒寫工具簡(jiǎn)介 1058次閱讀
- Firefly-PX3-SE主板FAQ方案 1059次閱讀
- 關(guān)于騰訊的開(kāi)源分布式存儲(chǔ)系統(tǒng)DCache 1970次閱讀
- 物聯(lián)網(wǎng)十大經(jīng)典開(kāi)源操作系統(tǒng) 1w次閱讀
- NASA的開(kāi)源軟件是什么?NASA的開(kāi)源軟件的詳細(xì)分析 7186次閱讀
- 如何開(kāi)發(fā)一款自己的智能問(wèn)答機(jī)器人 7504次閱讀
- 工程師必讀:ADC/DAC設(shè)計(jì)經(jīng)典問(wèn)答 4616次閱讀
- IC測(cè)試常見(jiàn)問(wèn)答 3653次閱讀
- 地震報(bào)警器的制作方法(問(wèn)答式) 5601次閱讀
評(píng)論
查看更多