qa問答機械人pysparnn問題的召回

2021-10-03 09:07:32 字數 1184 閱讀 4550

"""

構造召回的模型

"""from sklearn.feature_extraction.text import tfidfvectorizer

import pysparnn.cluster_index as ci

from cut_sentence import cut

import json

def prepar_recall_datas():

qa_dict = json.load(open("./corpus/qa_dict.json",encoding="utf-8"))

q_list =

q_cut =

for i in qa_dict:

tfidf_vec = tfidfvectorizer()

q_vector = tfidf_vec.fit_transform(q_cut) #得到問題的向量

#準備搜尋的索引

cp = ci.multiclusterindex(q_vector,q_list)

return tfidf_vec,cp,qa_dict

def get_search_result(input):

tfidf_vec, cp, qa_dict = prepar_recall_datas()

entity =

input_cut =

for word,seg in cut(input,by_word=false,use_seg=true):

if seg == "kc":

# 1. 得到使用者問題的向量

input_vector = tfidf_vec.transform([" ".join(input_cut)])

# 2. 計算相似度

result = cp.search(input_vector,k=2,k_clusters=10,return_distance=true)

print(result)

if __name__ == '__main__':

get_search_result("python是什麼")

# "產品經理的課程是只針對it行業的還是有其他行業相關?": ,

智慧型問答機械人概述

處理邏輯 query 中控邏輯 response 指特定條件下提供資訊或服務的機械人。任務型機械人核心模組主要包括三部分 自然語言理解模組 language understanding 對話管理模組 dialog management 自然語言生成模組 natural language genera...

問答機械人介紹1

知道問答機械人是什麼 知道問答機械人實現的邏輯 在前面的課程中,我們已經對問答機械人介紹過,這裡的問答機械人是我們在分類之後,對特定問題進行回答的一種機械人。至於回答的問題的型別,取決於我們的語料。當前我們需要實現的問答機械人是乙個回答程式語言 比如python是什麼,python難麼等 相關問題的...

botpress搭建智慧型問答機械人

如果是公司內部網路,需配置node的http 如果出現python語法錯誤,如下 d develop environment botpress12.6 node modules sqlite3 if not defined npm config node gyp node d program fil...