針對 COVID-19 論文的問答系統
簡介 • 入門 • 底層介紹 • 伺服器與客戶端 API
資訊.與 COVID-19 相關的文件數量呈指數級增長。面對如此大量的訊息,研究界越來越難以找到相關的資訊。
類固醇搜尋引擎。 Korono 是一個問答平台,旨在促進有關 COVID-19 的資訊研究。您可以將 Korono 視為增強型搜尋引擎。
工作原理。 Korono引擎由兩個階段組成:搜尋引擎階段和問答階段。首先,給定一個查詢q
,搜尋引擎會傳回該查詢的所有相關論文。隨後,從每篇論文中提取答案並顯示。
您可以使用線上版本(即將推出)或運行您自己的伺服器。
本地運行伺服器:
./run_server.sh
運行客戶端並提出問題:
> from korono import client
> client . get_answers ( "What is coronavirus?" )
搜尋引擎.該搜尋引擎使用名為 Okapi BM25 的排名演算法,其中 BM 代表最佳匹配。 BM25 是一種詞袋檢索功能,可根據每個文件中出現的查詢詞對文件進行排序。
問答。這些問題是使用大型神經網路語言模型 Transformer 從語料庫中提取的。截至目前,僅支援distilbert-base-uncased-distilled-squad
模型。很快,我們計劃提供支援。
load_data.get_df()
傳回下劃線資料集。
load_data.get_metadata_df()
傳回 CORD-19 元資料 pandas DataFrame。
korono_model.answer_question(question, context)
給定問題和上下文,回傳答案。
korono.model.get_summary(text)
給定文本,模型傳回抽象摘要。
korono_model.find_start_end_index_substring(context, answer)
傳回context
字串中answer
字串的開始和結束索引(如果存在)。
client.get_answers_json(question)
傳回以下形式的 JSON 物件: {
"results" : [
{
"context" : " coronavirus is an infectious disease " ,
"question" : " what is coronavirus? " ,
"answer" : " an infectious disease " ,
},
]
}
client.get_answers(question)
傳回所有答案的清單。