Skip to content
cbizon edited this page May 8, 2021 · 54 revisions

Back to Home

ARAGORN Knowledge Provider Wiki Page

Autonomous Relay Agent for Generation Of Ranked Networks (ARAGORN)

A Translator ARA to query Knowledge Providers (KPs) and synthesize highly ranked answers relevant to user-specified questions.

  • Operates in a federated knowledge environment.
  • Bridges the precision mismatch between data specificity in KPs and more abstract levels of user queries.
  • Generalizes answer ranking.
  • Normalizes data to use preferred and equivalent identifiers.

Team Contact:

Patrick Wang ( patrick@covar.com )

TODO: Disclose more team members?

ARAGORN Description

ARAGORN provides unified access to multiple operations (see glossary and the Operations repo) including fill/bind/complete (Strider), Merge Answers (Answer Coalescence), Edge Weighting, and Result Scoring (Aragorn Ranker). Currently, ARAGORN composes these operations into a fixed workflow, but the individual components are available as their own TRAPI endpoints.

The current ARAGORN workflow consists of:

  • Strider takes a TRAPI query graph, and calls distributed KPs to construct a TRAPI KG and results.
  • AnswerCoalescence finds and adds to the TRAPI message new answers by combining similar or related answers from Strider.
  • AragornRanker adds literature co-occurrence edges to the graph, adds a weight to each edge binding, and scores each result based on these weights.

User Guide

ARAGORN is meant to handle arbitrary TRAPI queries, including queries with multiple identified nodes, and arbitrary query topology.

As an example, here is a simple one-hop TRAPI query:

{
    "message": {
        "query_graph": {
            "nodes": {
                "n0": {
                    "id": "NCBIGene:6611",
                    "category": "biolink:Gene"
                },
                "n1": {
                    "category": "biolink:ChemicalSubstance"
                }
            },
            "edges": {
                "e01": {
                    "subject": "n0",
                    "object": "n1"
                }
            }
        }
    }
}

This query looks for chemicals that are directly connected to a single particular gene.

The query can be placed in a text file (query.json) and sent to ARAGORN using e.g. curl:

curl -X POST https://aragorn.renci.org/query -d @query.json

A usage guide examining the results of this query can be found here.

Issue support

To declare an issue with this software:

  • Please browse to: https://github.com/ranking-agent/aragorn/issues.
  • Create a new issue by selecting the "New issue" button.
  • Populate the form displayed. Please enter a concise description of the issue. Include test data if available.

Deployment

Instructions for building the relevant containers and deploying them to kubernetes can be found in the the ARAGORN readme.

Supporting APIs

ARAGORN makes use of several tools that can be independently accessed. As the operations WG proceeds, these will be accessed by passing arguments to ARAGORN.

Knowledge Providers

ARAGORN accesses KPs via its Strider component. The list of KPs is kept up-to-date on the Strider page.

Source Code

Clone this wiki locally