Суть проекта: от комментариев к интеллектуальным дебатам
Пользователь GitHub под ником LYiHub выложил в открытый доступ проект platform-war-public. Это не просто чат-бот, а сложная система на базе GraphRAG (Graph Retrieval-Augmented Generation), которая умеет извлекать знания из неструктурированных данных и использовать их для генерации аргументированных ответов.
Ключевая фишка проекта — симуляция «платформенных войн». Система берет комментарии с таких площадок, как Zhihu, Weibo и Bilibili, строит по ним графы знаний и запускает агентов, которые ведут дискуссию, имитируя характерные для каждой платформы стили мышления и выражения мыслей.
Технический стек и архитектура
Проект требует серьезной настройки окружения, так как опирается на работу с графами и векторными базами данных. Основные компоненты системы:
- Ядро: Python 3.11.7, поддержка GPU (CUDA) через
faiss-gpuдля ускорения работы с векторами. - LLM: По умолчанию используется модель moonshot-v1 (Kimi) через API. Требуется ключ API в файле
config.py. - Графы знаний: Модули
knowledgeGraph.py,graph_entity.py,graph_search.pyи другие отвечают за извлечение сущностей, связей и хранение данных. - RAG: Векторная база данных FAISS используется для семантического поиска по извлеченным знаниям.
Как это работает: от JSON к дебатам
Процесс создания «аргументов» для агентов состоит из двух этапов. Сначала система обрабатывает исходные данные (комментарии), а затем запускает симуляцию.
| Этап | Действие | Ключевые файлы/инструменты |
|---|---|---|
| 1. Подготовка данных | Загрузка комментариев в формате JSON с полями title, clusters, comments. |
data/result.json |
| 2. Извлечение знаний | Автоматическое построение графа знаний из комментариев с помощью LLM. | knowledgeGraphExtractor.py |
| 3. Хранение | Сохранение векторных представлений и связей графа для быстрого поиска. | knowledge_retriever.py, graph_storage.py |
| 4. Дебаты | Запуск агентов, которые используют граф знаний для генерации ответов в стиле конкретной платформы. | platform_war.py, chat.py |
Готовые базы знаний и ограничения
Для упрощения старта разработчик предоставил предварительно извлеченные базы знаний для трех популярных китайских платформ: bilibili_knowledge_base, weibo_knowledge_base и zhihu_knowledge_base. Их можно скачать через Baidu Netdisk или Google Drive и поместить в корень проекта.
Однако проект имеет ряд технических ограничений:
- Платформа: Из-за использования
faiss-gpuпроект работает только на Windows и Linux. macOS не поддерживается без переключения на CPU-режим (что сильно замедлит работу). - UI: Веб-интерфейс (
platform_war_UI.py) имеет проблемы с адаптивностью. При изменении размера окна элементы могут наезжать друг на друга, а история диалога может перекрываться новыми сообщениями.
Почему это важно
Проект демонстрирует практическое применение GraphRAG за пределами стандартных задач «вопрос-ответ». Он показывает, как можно структурировать социальный интеллект, превращая разрозненные мнения в связную базу знаний, которую затем используют автономные агенты. Это полезный кейс для исследователей в области NLP, изучающих влияние контекста и платформы на генерацию текста, а также для разработчиков, желающих внедрить графовые базы знаний в свои LLM-приложения.
Источник: Github ↗
