Files
egutierrez 47fac22230 chore: auto-commit (799 archivos)
- .claude/CLAUDE.md
- .claude/commands/subagentes.md
- .claude/rules/INDEX.md
- .mcp.json
- bash/functions/cybersecurity/analyze_dns.md
- bash/functions/cybersecurity/audit_http_headers.md
- bash/functions/cybersecurity/audit_ssh_config.md
- bash/functions/cybersecurity/check_firewall.md
- bash/functions/cybersecurity/detect_suspicious_users.md
- bash/functions/cybersecurity/encrypt_file.md
- ...

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 00:28:20 +02:00

2.9 KiB

name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, params, output, tested, tests, test_file_path, file_path, notes
name kind lang domain version purity signature description tags uses_functions uses_types returns returns_optional error_type imports params output tested tests test_file_path file_path notes
extract_triples_spacy_es function py datascience 1.0.0 impure def extract_triples_spacy_es(text: str, nlp: Any) -> dict Extraccion OpenIE schema-less en castellano via reglas de dependencia spaCy. Detecta patrones sujeto-verbo-objeto con el lemma del verbo como relacion (sin vocabulario fijo). Tambien extrae entidades NER (PER, ORG, LOC, MISC).
spacy
openie
nlp
spanish
triples
dependency
ner
schema-less
datascience
python
mit
pendiente-usar
spacy_es_load_model_py_datascience
false error_go_core
time
typing.Any
name desc
text Texto en castellano a analizar. Funciona mejor con oraciones completas. Admite multiples oraciones en el mismo texto.
name desc
nlp Instancia spaCy Language cargada con spacy_es_load_model. Debe incluir dependencias + POS + NER (es_core_news_md o lg).
Dict con 'text' (input), 'triples' (lista de {subject, relation, object, verb_form, object_dep, prep}), 'entities' (lista de {text, label}) y 'elapsed_s'. La relacion es el lemma del verbo, opcionalmente sufijado con preposicion (_en, _con) o modo pasivo ([pass]). true
oracion simple produce tripleta con sujeto verbo objeto
carlos torres preside bbva produce tripleta president
amancio ortega fundo inditex en 1985 produce tripletas con fundar_en
texto sin verbos produce tripletas vacias
entities NER detecta PER ORG LOC
python/functions/datascience/tests/test_extract_triples_spacy_es.py python/functions/datascience/extract_triples_spacy_es.py LICENSE: spaCy es MIT. Modelo es_core_news_md es CC BY-SA 4.0. Uso comercial permitido con atribucion. Validado en notebook 09 del analisis gliner_glirel_tuning. Complementa a extract_graph_gliner2: GLiNER2 usa vocabulario fijo de relaciones pero mayor precision; spaCy OpenIE usa lemmas verbales (sin vocabulario fijo) pero requiere post-filtrado manual. impure: invoca inferencia del modelo (side effect computacional). El nlp se inyecta externamente para permitir cache y reutilizacion. Relaciones compuestas: 'fundar_en' (fundar + preposicion 'en'), 'ser_nombrado[pass]' (pasiva), 'trabajar_con' (trabajar + 'con').

Ejemplo

from datascience.spacy_es_load_model import spacy_es_load_model
from datascience.extract_triples_spacy_es import extract_triples_spacy_es

nlp = spacy_es_load_model()

result = extract_triples_spacy_es(
    "Amancio Ortega fundo Inditex en 1985 en La Coruna.",
    nlp=nlp,
)
# result["triples"]:
# [{"subject": "Amancio Ortega", "relation": "fundar", "object": "Inditex", ...},
#  {"subject": "Amancio Ortega", "relation": "fundar_en", "object": "1985", ...},
#  {"subject": "Amancio Ortega", "relation": "fundar_en", "object": "La Coruna", ...}]