InternScience/GraphGen

GraphGen: Улучшение Supervised Fine-Tuning для LLM с помощью генерации синтетических данных на основе знаний

Данные⭐ 1 222Pythonпоследний релиз: v0.1.0.post20250930
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

GraphGen — это фреймворк для генерации синтетических данных (QA-пары) на основе графов знаний, предназначенный для улучшения процесса SFT больших языковых моделей.

Зачем нужен

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

Что можно реализовать

  • Генерация синтетических данных для SFT (Supervised Fine-Tuning) LLM в узких предметных областях
  • Создание датасетов для бенчмарков с вопросами с выбором ответа, заполнением пропусков и истинностью
  • Генерация данных для визуального ответа на вопросы (VQA) на основе изображений
  • Извлечение и структурирование данных из биомедицинских баз данных (NCBI, RNAcentral) для создания QA-пар
  • Автоматическое создание данных Chain-of-Thought (CoT) с использованием алгоритма обнаружения сообществ Leiden

Ключевые возможности

  • Генерация данных на основе графов знаний: извлечение графа из текста и использование его структуры для создания релевантных QA-пар
  • Приоритизация сложных тем: использование метрики ожидаемой ошибки калибровки для фокусировки на 'длинном хвосте' знаний
  • Поддержка множества бэкендов: интеграция с vLLM, SGLang, HuggingFace Transformers, Ollama, а также баз данных RocksDB и Kuzudb
  • Распределенная обработка: использование Ray для эффективного управления ресурсами и ускорения генерации данных
  • Гибкость форматов ввода: поддержка PDF (через MinerU), HuggingFace Datasets и прямых текстовых источников

👤 Кому подойдёт: Исследователи в области NLP, разработчики, занимающиеся дообучением (fine-tuning) LLM, и инженеры данных, создающие специализированные датасеты для AI-моделей.

Релизы

v0.1.0.post20250930minor
🕐 11 мес назад · релиз на GitHub ↗

Релиз GraphGen v0.1.0.post20250930: добавлен веб-поиск, конвейер генерации CoT-данных, поддержка форматов вывода и улучшена архитектура.

  • Added: Добавлен веб-поиск и классы для чтения и разделения данных (Reader/Splitter).
  • Added: Реализован конвейер генерации данных Chain-of-Thought с фильтрацией тегов для моделей с рассуждением.
  • Added: Поддержка форматов вывода alpaca, sharegpt и chatml, а также разных провайдеров для моделей синтеза и обучения.
  • Fixed: Исправлена ошибка передачи параметров, улучшена логирование и оптимизирован Gradio-интерфейс.
  • Added: Добавлен Dockerfile, CI-пайплайны, e2e-тесты и рефакторинг сборщика графа знаний.