InternScience/GraphGen

GraphGen: Enhancing Supervised Fine-Tuning for LLMs with Knowledge-Driven Synthetic Data Generation

解決的問題

GraphGen 是一個旨在透過生成高品質、知識驅動的合成資料,來改善大型語言模型(LLM)監督式微調(SFT)的框架。它特別針對 LLM 中的「知識缺口」問題——即模型缺乏資訊或校準不佳的領域——透過優先生成高價值、長尾知識的問答(QA)配對來解決此問題。

運作方式

GraphGen 遵循結構化的流程來建立合成訓練資料:

  1. 知識圖譜建構:它從來源文本(PDF、JSON、TXT 等)或外部資料庫(UniProt、NCBI、Wikipedia)建構細粒度的知識圖譜。
  2. 缺口識別:它使用預期校準誤差指標來識別 LLM 缺乏知識的環節。
  3. 定向生成:它根據知識圖譜生成 QA 配對,使用多跳鄰域取樣來捕捉複雜關係,並透過風格控制生成來確保多樣性。
  4. 資料擴增:它包含一個改寫管線,使用 LLM 驅動的重組來為同一語料庫建立多樣化的變體,以避免預訓練期間的冗餘。

適用對象

此工具專為需要為 LLM 合成高品質訓練資料的 AI 研究人員與開發者設計,特別是在醫學、法律或生物學(例如:植物科學)等知識密集型領域。

亮點

  • 多樣的資料類型:支援生成原子型、聚合型、思維鏈(CoT)、多跳、VQA(視覺問答)以及基準測試型資料(選擇題、填空題、是非題)。
  • 廣泛的整合性:相容於各種推論後端(vLLM、SGLang、HuggingFace)與 API 伺服器(OpenAI、Azure、Ollama)。
  • 彈性的資料來源:能夠從檔案、搜尋引擎(Google、Bing)以及專門的生物資訊資料庫中擷取資料。
  • 可擴展的架構:利用 Ray 進行分散式執行,並支援 KuzuDB 和 RocksDB 以實現高效儲存。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案