医療知識グラフに基づくインテリジェントなQ&Aシステム
- これは、Python Module Refoによって実装される主要な知識ベースQ&Aシステムです。 Q&Aシステムは、入力自然言語の質問を解析してSPARQLクエリを生成し、バックグラウンドのTDBナレッジベースに基づいてApache Jena Fusekiサービスをさらにリクエストし、それにより問題の結果を得ることができます。
- 病気の症状、病気の薬、薬物調査などの機能を提供します。
- デモデモ


環境が必要です
- Python3.5.2開発環境
- Jieba Chinese Word分詞コンポーネントをインストールします
- PythonおよびApache Jena FusekiサービスのSparqlWrapper、Interactive Componentsのインストール
- Django、インタラクティブディスプレイ用のWebアプリケーションフレームワーク
- Apache Jenaは、JavaのオープンソースセマンティックWebフレームワークであり、セマンティックWebアプリケーションとリンクデータアプリケーションを構築するために使用されます。
- Apache-Jena-Fuseki、Apache Jena Fusekiサービスを有効にします
- Java Environment、Apache JenaはJava環境で走る必要があります
- データ
実行方法
- TDB薬物疾患の知識ベースデータとクローンプロジェクトコードをダウンロードする
- Apache Jena Fusekiサービスをオンにします
- TDBデータとApache Jena Fusekiを同じディレクトリに配置します。
- Apache Jena Fusekiフォルダーに移動し、Fuseki-Server.batを実行し、出口に移動します。このプログラムは、現在のディレクトリに「実行」フォルダーを自動的に作成します
- apache_configurationフォルダーのkgdrug.tllとrules.tllファイルを「実行」フォルダーに移動します。
- kgdrug.tll:ナレッジベースオントロジーファイル
- Rules.tll:RULE BEYSONING Configurationファイル
- fuseki_conf.ttlファイルをapache_configurationフォルダーに移動します。
- fuseki_conf.ttl:fuseki構成ファイルは、主に上記の2つのファイルのパスとTDBナレッジベースパスを構成します。
- 上記の操作が設定されたら、fuseki-server.batを実行して、Apache Jena Fusekiサービスを有効にします
- Python環境に必要なパッケージをインストールします
pip install requirements . txt
- ここでは、ファイルパスが異なる可能性があるため、プロジェクトコードの設定ファイルの辞書インポートパスを変更する必要があります。
- kb_queryフォルダーでquery_main.pyを実行して、コマンドラインモードを有効にします。
- プロジェクトのルートディレクトリでmanage.pyを実行し、プロジェクトのWebモードを有効にします
python manage.py runserver
考えられる問題
- Apache Jena Fusekiサービスを2回目に開始するとき、スタートアップが失敗した場合は、すべてのプレフィックスファイルを削除するためにTDBファイルに移動する必要があります。
- ほとんどのコード操作エラーは、パスエラーに集中する必要があります。エラーメッセージを注意深くお読みください。
プロジェクトが不十分です
- 1回の回答の会話のみをサポートします。
- ナレッジベースのデータのクエリのみをサポートし、ナレッジベースに含まれていないデータをクエリすることはできません。
- ページUIデザインは簡単です
ポストアップデート
- システムの堅牢性を高めるために、薬物や病気の同義語を追加します
- 疾患推論機能を増やします
- マルチホイールダイアログ機能を追加しました
- ページUIを再設計します
参照してください
KBQAの実装とリフォンに基づく例