新型コロナウイルス感染症に関する論文向けの質問応答システム
はじめに • はじめに • 内部的な機能 • サーバーおよびクライアント API
情報。新型コロナウイルス感染症 (COVID-19) に関連する文書の量は急激に増加しています。これほど大量の情報があるため、研究コミュニティが関連情報を見つけるのはますます困難になっています。
ステロイド上の検索エンジン。 Korono は、新型コロナウイルス感染症に関する情報の調査を容易にするために考案された質問応答プラットフォームです。 Korono は、ステロイドを使用した検索エンジンと考えることができます。
動作原理。 Korono エンジンは、検索エンジン フェーズと質問応答フェーズの 2 つのフェーズで構成されます。まず、クエリq
が与えられると、検索エンジンはそのクエリから関連するすべての論文を返します。その後、各論文から解答を抽出して表示します。
オンライン バージョン (近日公開予定) を使用することも、独自のサーバーを実行することもできます。
サーバーをローカルで実行します。
./run_server.sh
クライアントを実行して質問します。
> from korono import client
> client . get_answers ( "What is coronavirus?" )
検索エンジン。検索エンジンは、Okapi BM25 として知られるランキング アルゴリズムを使用します。BM は、ベスト マッチングを表します。 BM25 は、各文書に出現するクエリ用語に基づいて文書を並べ替えるバッグオブワード検索機能です。
質疑応答。質問は、大規模なニューラル ネットワーク言語モデルである Transformers を使用してコーパスから抽出されます。現時点では、 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)
すべての回答のリストを返します。