GraphRAG feature - Part 1 - add spacy to extract entity and relation (#14670)

### What problem does this PR solve?

GraphRAG feature - Part 1 - add spacy to extract entity and relation

<img width="1621" height="1288" alt="image"
src="https://github.com/user-attachments/assets/aadeddad-94da-46c6-adad-9c3784181f61"
/>


### Type of change

- [x] New Feature (non-breaking change which adds functionality)
This commit is contained in:
Wang Qi
2026-05-11 12:59:59 +08:00
committed by GitHub
parent cc207b5b05
commit 3838770e7a
23 changed files with 1118 additions and 30 deletions

View File

@@ -35,6 +35,7 @@ export const showTagItems = (parserId: DocumentParserType) => {
const enum MethodValue {
General = 'general',
Light = 'light',
NER = 'ner',
}
export const excludedParseMethods = [
@@ -122,10 +123,12 @@ const GraphRagItems = ({
});
const methodOptions = useMemo(() => {
return [MethodValue.Light, MethodValue.General].map((x) => ({
value: x,
label: upperFirst(x),
}));
return [MethodValue.Light, MethodValue.General /*, MethodValue.NER*/].map(
(x) => ({
value: x,
label: x === MethodValue.NER ? 'NER' : upperFirst(x),
}),
);
}, []);
const renderWideTooltip = useCallback(

View File

@@ -606,7 +606,7 @@ export default {
'قم بإنشاء رسم بياني معرفي على أجزاء ملف من قاعدة المعرفة الحالية لتحسين الإجابة على الأسئلة متعددة القفزات التي تتضمن منطقًا متداخلاً. راجع https://ragflow.io/docs/dev/construct_knowledge_graph للحصول على التفاصيل.',
graphRagMethod: 'طريقة',
graphRagMethodTip:
'Light: (افتراضي) استخدم المطالبات المقدمة من github.com/HKUDS/LightRAG لاستخراج الكيانات والعلاقات. يستهلك هذا الخيار عددًا أقل من الرموز المميزة، وذاكرة أقل، وموارد حسابية أقل.</br>\n عام: استخدم المطالبات المقدمة من github.com/microsoft/graphrag لاستخراج الكيانات والعلاقات',
'Light: (افتراضي) استخدم المطالبات المقدمة من github.com/HKUDS/LightRAG لاستخراج الكيانات والعلاقات. يستهلك هذا الخيار عددًا أقل من الرموز المميزة، وذاكرة أقل، وموارد حسابية أقل.</br>\n عام: استخدم المطالبات المقدمة من github.com/microsoft/graphrag لاستخراج الكيانات والعلاقات.</br>\n NER: استخدم spaCy NER واستخراج الكلمات المفتاحية القائم على القواعد لاستخراج الكيانات والعلاقات. لا حاجة إلى LLM للاستخراج نفسه، مما يجعله سريعًا وفعالاً في الموارد.',
resolution: 'قرار الكيان',
resolutionTip:
'مفتاح إلغاء البيانات المكررة للكيان. عند التمكين، سيجمع LLM بين الكيانات المتشابهة - على سبيل المثال، "2025" و"عام 2025"، أو "تكنولوجيا المعلومات" و"تكنولوجيا المعلومات" - لإنشاء رسم بياني أكثر دقة',

View File

@@ -680,7 +680,8 @@ The above is the content you need to summarize.`,
graphRagMethod: 'Метод',
graphRagMethodTip: `
Light: (По подразбиране) Използва подсказки от github.com/HKUDS/LightRAG за извличане на обекти и връзки. Тази опция консумира по-малко токени, памет и изчислителни ресурси.</br>
General: Използва подсказки от github.com/microsoft/graphrag за извличане на обекти и връзки`,
General: Използва подсказки от github.com/microsoft/graphrag за извличане на обекти и връзки.</br>
NER: Използва spaCy NER и извличане на ключови думи на базата на правила за извличане на обекти и връзки. Не се изисква LLM за самото извличане, което го прави бързо и ефективно.`,
resolution: 'Разрешаване на обекти',
resolutionTip: `Превключвател за дедупликация на обекти. Когато е активиран, LLM ще комбинира подобни обекти — напр. '2025' и 'годината 2025', или 'ИТ' и 'Информационни технологии' — за изграждане на по-точен граф`,
community: 'Отчети на общности',

View File

@@ -687,8 +687,9 @@ Diese Auto-Tag-Funktion verbessert den Abruf, indem sie eine weitere Schicht dom
'Erstellen Sie einen Wissensgraph über Dateiabschnitte der aktuellen Wissensbasis, um die Beantwortung von Fragen mit mehreren Schritten und verschachtelter Logik zu verbessern. Weitere Informationen finden Sie unter https://ragflow.io/docs/dev/construct_knowledge_graph.',
graphRagMethod: 'Methode',
graphRagMethodTip: `
Light: (Standard) Verwendet von github.com/HKUDS/LightRAG bereitgestellte Prompts, um Entitäten und Beziehungen zu extrahieren. Diese Option verbraucht weniger Tokens, weniger Speicher und weniger Rechenressourcen.</br>
General: Verwendet von github.com/microsoft/graphrag bereitgestellte Prompts, um Entitäten und Beziehungen zu extrahieren`,
Light: (Standard) Verwendet von github.com/HKUDS/LightRAG bereitgestellte Prompts, um Entitäten und Beziehierungen zu extrahieren. Diese Option verbraucht weniger Tokens, weniger Speicher und weniger Rechenressourcen.</br>
General: Verwendet von github.com/microsoft/graphrag bereitgestellte Prompts, um Entitäten und Beziehierungen zu extrahieren.</br>
NER: Verwendet spaCy NER und regelbasierte Schlüsselwortextraktion, um Entitäten und Beziehungen zu extrahieren. Für die Extraktion selbst ist kein LLM erforderlich, was es schnell und ressourceneffizient macht.`,
resolution: 'Entitätsauflösung',
resolutionTip: `Ein Entitäts-Deduplizierungsschalter. Wenn aktiviert, wird das LLM ähnliche Entitäten kombinieren - z.B. '2025' und 'das Jahr 2025' oder 'IT' und 'Informationstechnologie' - um einen genaueren Graphen zu konstruieren`,
community: 'Generierung von Gemeinschaftsberichten',

View File

@@ -896,7 +896,8 @@ This auto-tagging feature enhances retrieval by adding another layer of domain-s
graphRagMethod: 'Method',
graphRagMethodTip: `
Light: (Default) Use prompts provided by github.com/HKUDS/LightRAG to extract entities and relationships. This option consumes fewer tokens, less memory, and fewer computational resources.</br>
General: Use prompts provided by github.com/microsoft/graphrag to extract entities and relationships`,
General: Use prompts provided by github.com/microsoft/graphrag to extract entities and relationships.</br>
NER: Use spaCy NER and rule-based keyword extraction to extract entities and relationships. No LLM is required for extraction itself, making it fast and resource-efficient.`,
resolution: 'Entity resolution',
resolutionTip: `An entity deduplication switch. When enabled, the LLM will combine similar entities - e.g., '2025' and 'the year of 2025', or 'IT' and 'Information Technology' - to construct a more accurate graph`,
community: 'Community reports',

View File

@@ -288,7 +288,8 @@ export default {
'Construit un graphe basé sur les segments de cette base pour répondre à des questions complexes. Voir documentation.',
graphRagMethod: 'Méthode',
graphRagMethodTip: `Light : (Par défaut) utilise les prompts de github.com/HKUDS/LightRAG. Moins de consommation.
General : utilise ceux de github.com/microsoft/graphrag.`,
General : utilise ceux de github.com/microsoft/graphrag.
NER : utilise spaCy NER et l'extraction de mots-clés basée sur des règles pour extraire les entités et les relations. Aucun LLM n'est requis pour l'extraction, ce qui la rend rapide et économe en ressources.`,
resolution: 'Résolution dentités',
resolutionTip:
'Fusionne des entités similaires comme "2025" et "lannée 2025".',

View File

@@ -483,7 +483,8 @@ Quanto sopra è il contenuto che devi riassumere.`,
graphRagMethod: 'Metodo',
graphRagMethodTip: `
Light: (Predefinito) Usa prompt forniti da github.com/HKUDS/LightRAG per estrarre entità e relazioni. Questa opzione consuma meno token, meno memoria e meno risorse computazionali.</br>
General: Usa prompt forniti da github.com/microsoft/graphrag per estrarre entità e relazioni`,
General: Usa prompt forniti da github.com/microsoft/graphrag per estrarre entità e relazioni.</br>
NER: Usa spaCy NER e l'estrazione di parole chiave basata su regole per estrarre entità e relazioni. Non è necessario un LLM per l'estrazione, rendendola veloce ed efficiente nelle risorse.`,
resolution: 'Risoluzione entità',
resolutionTip: `Un interruttore di deduplicazione entità. Quando abilitato, il LLM combinerà entità simili per costruire un grafo più accurato`,
community: 'Report comunità',

View File

@@ -719,7 +719,8 @@ export default {
graphRagMethod: 'Метод',
graphRagMethodTip: `
Light: (по умолчанию) Промпты github.com/HKUDS/LightRAG для извлечения сущностей и связей. Меньше токенов, памяти и вычислений.</br>
General: Промпты github.com/microsoft/graphrag`,
General: Промпты github.com/microsoft/graphrag.</br>
NER: Использует spaCy NER и извлечение ключевых слов на основе правил для извлечения сущностей и связей. LLM не требуется для самого извлечения, что делает его быстрым и эффективным.`,
resolution: 'Разрешение сущностей',
resolutionTip: `Переключатель дедубликации сущностей. Когда включен, LLM объединяет похожие сущности (например «2025» и «год 2025») для более точного графа`,
community: 'Отчёты сообществ',

View File

@@ -875,7 +875,8 @@ Bu otomatik etiketleme özelliği, mevcut datasete alanına özgü bilgi katman
graphRagMethod: 'Yöntem',
graphRagMethodTip: `
Hafif: (Varsayılan) Varlıkları ve ilişkileri çıkarmak için github.com/HKUDS/LightRAG tarafından sağlanan istemler kullanılır.</br>
Genel: Varlıkları ve ilişkileri çıkarmak için github.com/microsoft/graphrag tarafından sağlanan istemler kullanılır`,
Genel: Varlıkları ve ilişkileri çıkarmak için github.com/microsoft/graphrag tarafından sağlanan istemler kullanılır.</br>
NER: Varlıkları ve ilişkileri çıkarmak için spaCy NER ve kural tabanlı anahtar kelime çıkarma kullanılır. Çıkarma işlemi için LLM gerekmez, bu da onu hızlı ve kaynak verimli yapar.`,
resolution: 'Varlık çözünürlüğü',
resolutionTip: `Varlık tekilleştirme anahtarı. Etkinleştirildiğinde LLM benzer varlıkları birleştirir - örneğin '2025' ve '2025 yılı' veya 'BT' ve 'Bilgi Teknolojisi' - daha doğru bir grafik oluşturmak için`,
community: 'Topluluk raporları',

View File

@@ -348,7 +348,8 @@ export default {
tagCloud: 'Đám mây',
graphRagMethod: 'Phương pháp',
graphRagMethodTip: `Light: Câu lệnh trích xuất thực thể và quan hệ này được lấy từ GitHub - HKUDS/LightRAG: "LightRAG: Tạo sinh tăng cường truy xuất đơn giản và nhanh chóng".
General: Câu lệnh trích xuất thực thể và quan hệ này được lấy từ GitHub - microsoft/graphrag: Một hệ thống Tạo sinh tăng cường truy xuất (RAG) dựa trên đồ thị theo mô-đun.`,
General: Câu lệnh trích xuất thực thể và quan hệ này được lấy từ GitHub - microsoft/graphrag: Một hệ thống Tạo sinh tăng cường truy xuất (RAG) dựa trên đồ thị theo mô-đun.
NER: Sử dụng spaCy NER và trích xuất từ khóa dựa trên quy tắc để trích xuất thực thể và quan hệ. Không cần LLM cho việc trích xuất, giúp nhanh chóng và tiết kiệm tài nguyên.`,
useGraphRagTip:
'Xây dựng một biểu đồ tri thức trên các đoạn tệp của cơ sở tri thức hiện tại để tăng cường khả năng trả lời câu hỏi đa bước liên quan đến logic lồng nhau. Xem https://ragflow.io/docs/dev/construct_knowledge_graph để biết thêm chi tiết.',
resolution: 'Hợp nhất thực thể',
@@ -414,7 +415,7 @@ export default {
assistantAvatar: 'Avatar trợ lý',
language: 'Ngôn ngữ',
emptyResponse: 'Phản hồi trống',
emptyResponseTip: `Nếu không tìm thấy gì với câu hỏi của người dùng trong cơ sở kiến thức, nó sẽ sử dụng điều này làm câu trả lời. Nếu bạn muốn LLM đưa ra ý kiến riêng của mình khi không tìm thấy gì, hãy để trống.`,
emptyResponseTip: `Nếu không tìm thấy gì với câu hỏi của người dùng trong cơ sở kiến thức, nó sẽ sử dụng điều này làm câu trả lời. Nếu bạn muốn LLM đưa ra ý kiến riêng của mình khi không tìm thấy gì, hãy để trống.`,
setAnOpener: 'Đặt lời mở đầu',
setAnOpenerInitial: `Xin chào! Tôi là trợ lý của bạn, tôi có thể giúp gì cho bạn?`,
setAnOpenerTip: 'Bạn muốn chào đón khách hàng của mình như thế nào?',

View File

@@ -390,7 +390,8 @@ export default {
'基於知識庫內所有切好的文本塊構建知識圖譜,用以提升多跳和複雜問題回答的正確率。請注意:構建知識圖譜將消耗大量 token 和時間。詳見 https://ragflow.io/docs/dev/construct_knowledge_graph。',
graphRagMethod: '方法',
graphRagMethodTip: `Light實體和關係提取提示來自 GitHub - HKUDS/LightRAG“LightRAG簡單快速的檢索增強生成”<br>
一般:實體和關係擷取提示來自 GitHub - microsoft/graphrag基於模組化圖形的檢索增強生成 (RAG) 系統,`,
一般:實體和關係擷取提示來自 GitHub - microsoft/graphrag基於模組化圖形的檢索增強生成 (RAG) 系統,<br>
NER使用 spaCy NER 和基於規則的關鍵詞提取來抽取實體和關係,無需 LLM 參與提取過程,速度快且資源消耗低`,
resolution: '實體歸一化',
resolutionTip: `解析過程會將具有相同意義的實體合併在一起使知識圖譜更簡潔、更準確。應合併以下實體川普總統、唐納德·川普、唐納德·J·川普、唐納德·約翰·川普`,
community: '社群報告生成',

View File

@@ -811,7 +811,8 @@ export default {
'基于知识库内所有切好的文本块构建知识图谱,用以提升多跳和复杂问题回答的正确率。请注意:构建知识图谱将消耗大量 token 和时间。详见 https://ragflow.io/docs/dev/construct_knowledge_graph。',
graphRagMethod: '方法',
graphRagMethodTip: `Light实体和关系提取提示来自 GitHub - HKUDS/LightRAG“LightRAG简单快速的检索增强生成”<br>
General实体和关系提取提示来自 GitHub - microsoft/graphrag基于图的模块化检索增强生成 (RAG) 系统`,
General实体和关系提取提示来自 GitHub - microsoft/graphrag基于图的模块化检索增强生成 (RAG) 系统<br>
NER使用 spaCy NER 和基于规则的关键词提取来抽取实体和关系,无需 LLM 参与提取过程,速度快且资源消耗低`,
resolution: '实体归一化',
resolutionTip: `解析过程会将具有相同含义的实体合并在一起从而使知识图谱更简洁、更准确。应合并以下实体特朗普总统、唐纳德·特朗普、唐纳德·J·特朗普、唐纳德·约翰·特朗普`,
community: '社区报告生成',

View File

@@ -57,6 +57,7 @@ const initialEntityTypes = [
const enum MethodValue {
General = 'general',
Light = 'light',
NER = 'ner',
}
export default function DatasetSettings() {