Skip to content
Neuronavt
Go back

Построение графа знаний через Claude Code

Туториал8/10

Коротко

В статье показано, как подключить Claude Code к Chaos Cypher через MCP и поручить самому Claude извлечение сущностей и связей из Markdown-файлов. Граф сохраняется локально, а сервер проверяет ссылки на исходные предложения и помогает отвечать на вопросы, требующие нескольких переходов по связям.

Контекст

Автор описывает рабочий сценарий Chaos Cypher MCP: вместо встроенной в сервер языковой модели документы анализирует модель, уже используемая в редакторе, например Claude Code. Это решает проблему пользователей, которые хотят строить GraphRAG-граф своей базы знаний, но не имеют GPU или не хотят настраивать отдельную модель для сервера.

Главное

Как сделано

Установите CLI командой pipx install chaoscypher-cli (требуется Python 3.14 или новее) и зарегистрируйте MCP-сервер в режиме записи: claude mcp add chaoscypher -- chaoscypher mcp --mode write. Отдельный мастер настройки моделей не нужен: извлечение выполняет сам клиентский ассистент, а Chaos Cypher локально строит эмбеддинги фрагментов с помощью sentence-transformers на CPU.

Затем Claude Code получает задачу добавить Markdown-файлы, например из docs/, и извлечь сущности и связи. add_document делит файл на фрагменты и индексирует их; confirm_extraction подтверждает домен извлечения; get_extraction_tasks возвращает план и инструкции; get_extraction_chunks выдаёт текст с пронумерованными предложениями. Claude отправляет результаты через submit_chunk_extraction в компактном построчном формате: сущности (E), свойства (P) и отношения (R) со ссылками на предложения вроде S1 или S1-S2.

Сервер проверяет подтверждения по исходному тексту и отбрасывает сущности, не подтверждённые указанными предложениями. finalize_extraction устраняет дубликаты, сопоставляет сущности с шаблонами, сохраняет цитаты и фиксирует граф с оценкой качества от 0 до 100. Граф хранится в SQLite; его можно просмотреть и исправить в интерфейсе, а также экспортировать как .ccx.

Для поиска graphrag_search сочетает поиск близких сущностей, Personalized PageRank и извлечение подтверждающих фрагментов; результаты графового поиска объединяются с обычным векторным поиском методом Reciprocal Rank Fusion. При недоступности модели эмбеддингов инструмент переходит на поиск по ключевым словам и сообщает об этом.

Результаты

По описанию автора, обработка тридцати Markdown-файлов занимает у Claude несколько минут. Получается сохраняемый на диске граф с типизированными сущностями, связями и ссылками на исходные фрагменты и предложения. После перезапуска сессии Claude может отвечать на многозвенные вопросы, например находить компоненты, зависящие от queue client, и ADR, регулирующий его изменение. Численные оценки качества конкретного графа в статье не приведены.

Ограничения

Качество извлечения зависит от модели-ассистента: проверка источников отсекает неподтверждённые утверждения, но не исправляет поверхностное чтение. Сервер ограничивает отправку 100 запросами в минуту на источник по умолчанию и устанавливает предел размера каждой отправки; большие корпуса рекомендуется обрабатывать партиями. add_document принимает по одному файлу, поэтому для папки ассистент должен повторить операцию для файлов или добавить архив. В статье не приводятся независимая оценка точности, сравнение моделей, стоимость обработки или подробные результаты тестирования.

Что взять себе

Читать оригинал, если…

Откройте оригинал, если нужны полный перечень MCP-инструментов, детали формата извлечения и настройки ограничений либо инструкции по экспорту и подключению .ccx.