---
name: extraction_result
lang: py
domain: datascience
version: "1.0.0"
algebraic: product
definition: |
  @dataclass
  class ExtractionResult:
      entities: list[EntityCandidate]
      relations: list[RelationCandidate]
      stats: ExtractionStats = field(default_factory=ExtractionStats)
description: "Resultado final del pipeline de extraccion. Contiene las listas deduplicadas de entidades y relaciones junto con las estadisticas del proceso completo."
tags: [extraction, result, pipeline, knowledge-graph, datascience]
uses_types: [entity_candidate_py_datascience, relation_candidate_py_datascience, extraction_stats_py_datascience]
file_path: "python/types/datascience/extraction_result.py"
---

## Campos

- `entities`: lista final de `EntityCandidate` deduplicados
- `relations`: lista final de `RelationCandidate` deduplicadas con IDs resueltos
- `stats`: `ExtractionStats` con metricas del proceso completo

## Ejemplo

```python
from python.types.datascience.entity_candidate import EntityCandidate
from python.types.datascience.extraction_result import ExtractionResult
from python.types.datascience.extraction_stats import ExtractionStats
from python.types.datascience.relation_candidate import RelationCandidate

result = ExtractionResult(
    entities=[
        EntityCandidate(name="John Smith", type_label="Person", confidence=0.9),
    ],
    relations=[
        RelationCandidate(
            from_name="John Smith",
            to_name="Acme Corp",
            from_id="ent_001",
            to_id="ent_002",
            relation_type="works_at",
        ),
    ],
    stats=ExtractionStats(total_chunks=10, final_entities_count=1, final_relations_count=1),
)
```

## Notas

Tipo de salida del pipeline completo de extraccion. Agrupa todo lo necesario para persistir el resultado en una base de datos de grafos o para pasarlo a la siguiente fase del pipeline (enriquecimiento, visualizacion, etc.).
