Skip to content

EnrichmentWithReactome

Enrichment class for enriching Reactome pathways with textual descriptions

EnrichmentWithReactome

Bases: Enrichments

Enrichment class using Reactome pathways

Source code in aiagents4pharma/talk2knowledgegraphs/utils/enrichments/reactome_pathways.py
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
class EnrichmentWithReactome(Enrichments):
    """
    Enrichment class using Reactome pathways
    """

    def enrich_documents(self, texts: list[str]) -> list[str]:
        """
        Enrich a list of input Reactome pathways

        Args:
            texts: The list of Reactome pathways to be enriched.

        Returns:
            The list of enriched descriptions
        """

        reactome_pathways_ids = texts

        logger.log(logging.INFO, "Load Hydra configuration for reactome enrichment")
        with hydra.initialize(version_base=None, config_path="../../configs"):
            cfg = hydra.compose(
                config_name="config",
                overrides=["utils/enrichments/reactome_pathways=default"],
            )
            cfg = cfg.utils.enrichments.reactome_pathways

        descriptions = []
        for reactome_pathway_id in reactome_pathways_ids:
            r = requests.get(
                cfg.base_url + reactome_pathway_id + "/summation",
                headers={"Accept": "text/plain"},
                timeout=cfg.timeout,
            )
            # if the response is not ok
            if not r.ok:
                descriptions.append(None)
                continue
            response_body = r.text
            # if the response is ok
            descriptions.append(response_body.split("\t")[1])
        return descriptions

    def enrich_documents_with_rag(self, texts, docs):
        """
        Enrich a list of input Reactome pathways

        Args:
            texts: The list of Reactome pathways to be enriched.

        Returns:
            The list of enriched descriptions
        """
        return self.enrich_documents(texts)

enrich_documents(texts)

Enrich a list of input Reactome pathways

Parameters:

Name Type Description Default
texts list[str]

The list of Reactome pathways to be enriched.

required

Returns:

Type Description
list[str]

The list of enriched descriptions

Source code in aiagents4pharma/talk2knowledgegraphs/utils/enrichments/reactome_pathways.py
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
def enrich_documents(self, texts: list[str]) -> list[str]:
    """
    Enrich a list of input Reactome pathways

    Args:
        texts: The list of Reactome pathways to be enriched.

    Returns:
        The list of enriched descriptions
    """

    reactome_pathways_ids = texts

    logger.log(logging.INFO, "Load Hydra configuration for reactome enrichment")
    with hydra.initialize(version_base=None, config_path="../../configs"):
        cfg = hydra.compose(
            config_name="config",
            overrides=["utils/enrichments/reactome_pathways=default"],
        )
        cfg = cfg.utils.enrichments.reactome_pathways

    descriptions = []
    for reactome_pathway_id in reactome_pathways_ids:
        r = requests.get(
            cfg.base_url + reactome_pathway_id + "/summation",
            headers={"Accept": "text/plain"},
            timeout=cfg.timeout,
        )
        # if the response is not ok
        if not r.ok:
            descriptions.append(None)
            continue
        response_body = r.text
        # if the response is ok
        descriptions.append(response_body.split("\t")[1])
    return descriptions

enrich_documents_with_rag(texts, docs)

Enrich a list of input Reactome pathways

Parameters:

Name Type Description Default
texts

The list of Reactome pathways to be enriched.

required

Returns:

Type Description

The list of enriched descriptions

Source code in aiagents4pharma/talk2knowledgegraphs/utils/enrichments/reactome_pathways.py
61
62
63
64
65
66
67
68
69
70
71
def enrich_documents_with_rag(self, texts, docs):
    """
    Enrich a list of input Reactome pathways

    Args:
        texts: The list of Reactome pathways to be enriched.

    Returns:
        The list of enriched descriptions
    """
    return self.enrich_documents(texts)