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

Список функций
- Преобразование текста в график знаний: Извлечение сущностей и связей из произвольного текстового материала для создания структурированного графа знаний.
- Поддержка многоязычных моделей: Интеграция основных языковых моделей для улучшения понимания и структурирования текста.
- Оптимизация алгоритмов кластеризации: Повышение связности и логичности графа знаний с помощью методов кластеризации.
- Возможность настройки с открытым исходным кодом: Предоставляется полный код, и пользователи могут изменять и расширять функциональность в соответствии со своими потребностями.
- Экспорт данных: Созданный граф знаний поддерживает экспорт в различные форматы для последующего анализа и применения.
Использование помощи
Процесс установки
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
) Составление карты:
- Установите зависимость:
pip install networkx matplotlib
- Напишите следующий сценарий на языке 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()
- Запустите скрипт:
python visualize.py
Можно увидеть графическое представление сгенерированного графа знаний.
Отладка и ведение журнала
Если полученные результаты не соответствуют ожиданиям, можно включить режим отладки:
python -m kg_gen --input input.txt --output graph.json --verbose
Это позволит вывести подробный журнал, который поможет найти проблему.
предостережение
- Качество текстаЧем понятнее текст, тем точнее получаются карты.
- вычислительный ресурс: Для обработки длинных текстов может потребоваться больше памяти, рекомендуется не менее 8 ГБ RAM.
- Обновление Обслуживание: Регулярно проверяйте свои репозитории GitHub, чтобы убедиться, что вы используете последнюю версию.
Выполнив эти шаги, вы сможете легко начать работу с KGGen, извлекать структурированные знания из текста и применять их в реальных проектах.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...