KG Gen: инструмент с открытым исходным кодом для автоматического создания графов знаний из обычного текста

Общее введение

KGGen - это инструмент с открытым исходным кодом, разработанный Стэнфордской лабораторией исследований доверенного искусственного интеллекта (STAIR Lab) и размещенный на GitHub, предназначенный для автоматической генерации графов знаний из произвольного текста. Он использует усовершенствованные языковые модели и алгоритмы кластеризации для преобразования неструктурированных текстовых данных в структурированные сети сущностей и отношений для исследователей, разработчиков и аналитиков данных. Проект привлек к себе внимание с момента выхода и получил высокую оценку за повышение точности извлечения знаний и связности графов.Основные достоинства KGGen - простота работы и надежность результатов - используются в академических исследованиях и разработке приложений ИИ.Последнее обновление проекта было произведено 20 февраля 2025 года1 .

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

 

Список функций

  • Преобразование текста в график знаний: Извлечение сущностей и связей из произвольного текстового материала для создания структурированного графа знаний.
  • Поддержка многоязычных моделей: Интеграция основных языковых моделей для улучшения понимания и структурирования текста.
  • Оптимизация алгоритмов кластеризации: Повышение связности и логичности графа знаний с помощью методов кластеризации.
  • Возможность настройки с открытым исходным кодом: Предоставляется полный код, и пользователи могут изменять и расширять функциональность в соответствии со своими потребностями.
  • Экспорт данных: Созданный граф знаний поддерживает экспорт в различные форматы для последующего анализа и применения.

 

Использование помощи

Процесс установки

KGGen - это инструмент на базе Python, который требует определенной настройки среды программирования для развертывания. Ниже описаны подробные шаги по установке:

1. Подготовка окружающей среды

  • операционная системаПоддерживаются Windows, MacOS и Linux.
  • Версия Python: Рекомендуется Python 3.8 или выше.
  • Git: Убедитесь, что у вас установлен 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: Укажите путь к выходному файлу сгенерированного Knowledge Graph (поддерживается формат 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

Это позволит вывести подробный журнал, который поможет найти проблему.

предостережение

  • Качество текстаЧем понятнее текст, тем точнее получаются карты.
  • вычислительный ресурс: Для обработки длинных текстов может потребоваться больше памяти, рекомендуется не менее 8 ГБ RAM.
  • Обновление Обслуживание: Регулярно проверяйте свои репозитории GitHub, чтобы убедиться, что вы используете последнюю версию.

Выполнив эти шаги, вы сможете легко начать работу с KGGen, извлекать структурированные знания из текста и применять их в реальных проектах.

© заявление об авторских правах

Похожие статьи

AI Hedge Fund:开源自动化交易系统,利用多智能体进行复杂对冲基金交易决策
GitPodcast:将GitHub仓库转化为播客,随时随地收听代码更新

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...