AIパーソナル・ラーニング
と実践的なガイダンス
豆包Marscode1

KG Gen:プレーンテキストからナレッジグラフを自動生成するオープンソースツール

はじめに

KGGenはStanford Trusted Artificial Intelligence Research Laboratory (STAIR Lab)によって開発されたオープンソースツールで、GitHubでホストされている。高度な言語モデルとクラスタリングアルゴリズムを使用して、構造化されていないテキストデータを、研究者、開発者、データアナリストのために、実体と関係の構造化されたネットワークに変換する。このプロジェクトはリリース以来注目を浴びており、知識抽出の精度とグラフの連結性の向上が評価されている。KGGenの核となる強みである操作のシンプルさと結果の信頼性は、学術研究やAIアプリケーション開発で利用されており、最終更新日は2025年2月20日である1。

KG Gen:从纯文本中自动生成知识图谱的开源工具-1


 

機能一覧

  • テキストから知識グラフへの変換任意のテキスト入力から実体と関係を抽出し、構造化された知識グラフを生成する。
  • 多言語モデルのサポート主流の言語モデルを統合し、テキスト理解と構造化を強化。
  • クラスタリングアルゴリズムの最適化クラスタリング技術による知識グラフの連結性と論理性の強化。
  • カスタマイズ可能なオープンソース完全なコードが提供され、ユーザーは必要に応じて機能を変更、拡張することができます。
  • データエクスポート生成されたナレッジグラフは、その後の分析や応用のために複数のフォーマットでエクスポートすることができます。

 

ヘルプの使用

設置プロセス

KGGenはPythonベースのツールで、導入にはプログラミング環境の設定が必要です。以下に詳しいインストール手順を示します:

1.環境準備

  • オペレーティングシステムWindows、MacOS、Linuxに対応しています。
  • パイソン版Python 3.8以上を推奨。
  • ギットコードベースをクローンするためにGitがインストールされていることを確認してください。
  • 依存関係管理ツール推奨用途 pip もしかしたら conda.

2.コードベースのクローン化

ターミナルまたはコマンドラインで以下のコマンドを入力して、KGGenプロジェクトをローカルにクローンする:

git clone https://github.com/stair-lab/kg-gen.git
cd kg-gen

3.依存関係のインストール

このプロジェクトは requirements.txt ファイルには、必要な依存ライブラリが含まれています。以下のコマンドを実行してインストールしてください:

pip install -r requirements.txt

を使用する場合 condaまず仮想環境を作ることができる:

conda create -n kggen python=3.8
conda activate kggen
pip install -r requirements.txt

4.インストールの検証

インストールが完了したら、Pythonインタープリターに移動し、以下のコードを入力して成功を確認する:

import kg_gen
print(kg_gen.__version__)

もし出力バージョン番号(例えば 1.0.0)、正常にインストールされたことを示す。

使用方法

KGGenの主な機能はテキストから知識グラフを生成することであり、具体的な操作手順は以下の通りである:

1.入力テキストの準備

テキストファイル(例えば input.txt)、処理するテキストを書く。例

人工智能正在改变世界。机器学习是人工智能的核心技术。斯坦福大学的研究团队开发了许多创新工具。

ファイルを kg-gen カタログ

2.KGGenを走らせる

ターミナルでプロジェクト・ディレクトリに移動し、以下のコマンドを実行する:

python -m kg_gen --input input.txt --output graph.json
  • --input入力テキストファイルのパスを指定する。
  • --output生成されたナレッジグラフ出力ファイル(JSON形式をサポート)へのパスを指定します。

3.結果を見る

実行が完了したら graph.jsonをクリックすると、次のように表示される:

{
"entities": ["人工智能", "机器学习", "斯坦福大学"],
"relations": [
{"source": "人工智能", "target": "机器学习", "relation": "包含"},
{"source": "斯坦福大学", "target": "创新工具", "relation": "开发"}
]
}

これは、KGGen がテキストからエンティティを抽出し、関係を確立したことを意味する。

4.カスタム設定(オプション)

KGGenは、結果を最適化するためのパラメータ調整をサポートします。編集 config.py ドキュメンテーションがある場合は、変更することができる:

  • 言語モデル別の事前学習済みモデル(BERT など)に置き換える。
  • クラスタリングパラメータクラスタリングのしきい値を調整し、プロットの密度を変更します。
    変更を保存し、上記のコマンドを再実行する。

注目の機能操作

複数ファイルのバッチ処理

複数のテキストファイルを処理する必要がある場合は、スクリプトのループ呼び出しを使用できます:

for file in *.txt; do python -m kg_gen --input "$file" --output "${file%.txt}.json"; done

これはそれぞれの選手にとって大きなチャンスとなる。 .txt ファイルは対応する .json アトラスファイル

ビジュアル・ナレッジグラフ

KGGenにはビルトインの可視化ツールはありませんが、サードパーティーのライブラリ(例えば networkx 歌で応える matplotlib) マッピング

  1. 依存関係をインストールします:
pip install networkx matplotlib
  1. 以下のPythonスクリプトを書くvisualize.py):
import json
import networkx as nx
import matplotlib.pyplot as plt
with open('graph.json', 'r') as f:
data = json.load(f)
G = nx.DiGraph()
for rel in data['relations']:
G.add_edge(rel['source'], rel['target'], label=rel['relation'])
pos = nx.spring_layout(G)
nx.draw(G, pos, with_labels=True, node_color='lightblue', font_size=10)
edge_labels = nx.get_edge_attributes(G, 'label')
nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels)
plt.show()
  1. スクリプトを実行する:
python visualize.py

生成されたナレッジグラフをグラフで見ることができる。

デバッグとロギング

生成された結果が期待通りでない場合は、デバッグモードを有効にすることができる:

python -m kg_gen --input input.txt --output graph.json --verbose

これにより、問題の特定に役立つ詳細なログが出力される。

ほら

  • テキストの質入力テキストが明確であればあるほど、生成される地図の精度は高くなる。
  • コンピューティングリソース長い文章を処理するには、より高いメモリが必要になる場合があります。
  • アップデート・メンテナンスGitHubのリポジトリを定期的にチェックし、最新バージョンを使用していることを確認してください。

これらのステップを踏めば、KGGenを簡単に使い始め、テキストから構造化された知識を抽出し、実際のプロジェクトに適用することができる。

無断転載を禁じます:チーフAIシェアリングサークル " KG Gen:プレーンテキストからナレッジグラフを自動生成するオープンソースツール
ja日本語