extract

GitHub

执行完整的语义提取流水线,对文件或文本进行命名实体识别、关系抽取、事件检测、共指解析及三元组提取,并输出带置信度的Markdown表格结果。

plugins/skills/extract/SKILL.md semantica-agi/semantica

Trigger Scenarios

需要提取文本中的实体和关系 运行语义分析流水线

Install

npx skills add semantica-agi/semantica --skill extract -g -y
More Options

Non-standard path

npx skills add https://github.com/semantica-agi/semantica/tree/main/plugins/skills/extract -g -y

Use without installing

npx skills use semantica-agi/semantica@extract

指定 Agent (Claude Code)

npx skills add semantica-agi/semantica --skill extract -a claude-code -g -y

安装 repo 全部 skill

npx skills add semantica-agi/semantica --all -g -y

预览 repo 内 skill

npx skills add semantica-agi/semantica --list

SKILL.md

Frontmatter
{
    "name": "extract",
    "description": "Run the full Semantica semantic extraction pipeline on a file or selected text — NER, relations, events, coreference resolution, triplets, and validation. Clears result cache before each run. Returns Markdown tables with entity\/relation\/event\/triplet results and inline validator warnings."
}

/semantica:extract

Run the full extraction pipeline. Usage: /semantica:extract [file_path | "inline text"]

$ARGUMENTS = file path, inline text in quotes, or blank (uses active editor file).


Steps

1. Resolve the source.

  • If $ARGUMENTS is a readable file path → text = open(path).read()
  • If it's quoted inline text → use directly
  • If blank → use the active editor file

2. Clear the result cache to prevent cross-invocation pollution:

from semantica.semantic_extract.cache import _result_cache
_result_cache.clear()

3. Run the full pipeline:

from semantica.semantic_extract import (
    NamedEntityRecognizer,
    RelationExtractor,
    EventDetector,
    CoreferenceResolver,
    TripletExtractor,
    ExtractionValidator,
)

# Named Entity Recognition
ner = NamedEntityRecognizer()
entities = ner.extract(text)

# Relation Extraction
rel = RelationExtractor()
relations = rel.extract(text)

# Event Detection
evt = EventDetector()
events = evt.extract(text)

# Coreference Resolution — resolve pronouns/aliases before extraction
coref = CoreferenceResolver()
resolved_text = coref.resolve(text)

# Triplet Extraction (subject–predicate–object)
triplet = TripletExtractor()
triplets = triplet.extract(resolved_text)

# Validate quality
validator = ExtractionValidator()
issues = validator.validate(entities, relations)

4. Report validator warnings above results:

⚠ ExtractionValidator: <warning message>

5. Return results as Markdown tables:

Entities (N total)

Label Type Confidence Span

Relations (M total)

Source Relation Type Target Confidence

Events (K total)

Label Type Participants Confidence

Triplets (J total)

Subject Predicate Object Confidence

6. Summary line:

Extracted: N entities, M relations, K events, J triplets — from <source>

For large files (>50KB), process in chunks and show a progress indicator. Highlight any entities appearing in the context graph already (ContextGraph.has_node(label)) with [in graph] tag.

Version History

  • 9094f1e Current 2026-07-05 09:26

Same Skill Collection

.claude/skills/semantica/SKILL.md
plugins/skills/causal/SKILL.md
plugins/skills/change/SKILL.md
plugins/skills/decision/SKILL.md
plugins/skills/deduplicate/SKILL.md
plugins/skills/explain/SKILL.md
plugins/skills/export/SKILL.md
plugins/skills/ingest/SKILL.md
plugins/skills/ontology/SKILL.md
plugins/skills/policy/SKILL.md
plugins/skills/provenance/SKILL.md
plugins/skills/query/SKILL.md

Metadata

Files
0
Version
e6b159e
Hash
7d99eb08
Indexed
2026-07-05 09:26

Accueil - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-26 20:42
浙ICP备14020137号-1 $Carte des visiteurs$