Skip to main content

Grounding for biomedical entities with contextual disambiguation

Project description

Gilda: Grounding Integrating Learned Disambiguation

License Build Documentation PyPI version

Gilda is a Python package and REST service that grounds (i.e., finds appropriate identifiers in namespaces for) named entities in biomedical text.

Installation

Gilda is deployed as a web service at http://grounding.indra.bio/ (see Usage instructions below), however, it can also be used locally as a Python package.

The recommended method to install Gilda is through PyPI as

pip install gilda

Note that Gilda uses a single large resource file for grounding, which is automatically downloaded into the ~/.data/gilda/<version> folder during runtime (see pystow for options to configure the location of this folder).

Given some additional dependencies, the grounding resource file can also be regenerated locally by running python -m gilda.generate_terms.

Documentation and notebooks

Documentation for Gilda is available here. We also provide several interactive Jupyter notebooks to help use and customize Gilda:

  • This notebook provides an interactive tutorial for using Gilda.
  • This notebook shows several examples of how Gilda can be instantiated with custom grounding resources.
  • This notebook provides interactive sample code for training new disambiguation models.

Usage

Gilda can either be used as a REST web service or used programmatically via its Python API. An introduction Jupyter notebook for using Gilda is available at https://github.com/indralab/gilda/blob/master/notebooks/gilda_introduction.ipynb

Use as a Python package

For using Gilda as a Python package, the documentation at http://gilda.readthedocs.org provides detailed descriptions of each module of Gilda and their usage. A basic usage example is as follows

import gilda
scored_matches = gilda.ground('ER', context='Calcium is released from the ER.')

Use as a web service

The REST service accepts POST requests with a JSON header on the /ground endpoint. There is a public REST service running at http://grounding.indra.bio but the service can also be run locally as

python -m gilda.app

which, by default, launches the server at localhost:8001 (for local usage replace the URL in the examples below with this address).

Below is an example request using curl:

curl -X POST -H "Content-Type: application/json" -d '{"text": "kras"}' http://grounding.indra.bio/ground

The same request using Python's request package would be as follows:

import requests
requests.post('http://grounding.indra.bio/ground', json={'text': 'kras'})

Run web service with Docker

After cloning the repository locally, you can build and run a Docker image of Gilda using the following commands:

$ docker build -t gilda:latest .
$ docker run -d -p 8001:8001 gilda:latest

Alternatively, you can use docker-compose to do both the initial build and run the container based on the docker-compose.yml configuration:

$ docker-compose up

Citation

@article{gyori2021gilda,
  author = {Gyori, Benjamin M and Hoyt, Charles Tapley and Steppi, Albert},
  doi = {10.1101/2021.09.10.459803},
  journal = {bioRxiv},
  publisher = {Cold Spring Harbor Laboratory},
  title = {{Gilda: biomedical entity text normalization with machine-learned disambiguation as a service}},
  url = {https://www.biorxiv.org/content/10.1101/2021.09.10.459803v1},
  year = {2021}
}

Funding

The development of Gilda was funded under the DARPA Communicating with Computers program (ARO grant W911NF-15-1-0544) and the DARPA Young Faculty Award (ARO grant W911NF-20-1-0255).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gilda-0.9.0.tar.gz (164.4 kB view details)

Uploaded Source

Built Distribution

gilda-0.9.0-py3-none-any.whl (164.4 kB view details)

Uploaded Python 3

File details

Details for the file gilda-0.9.0.tar.gz.

File metadata

  • Download URL: gilda-0.9.0.tar.gz
  • Upload date:
  • Size: 164.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.63.0 CPython/3.9.9

File hashes

Hashes for gilda-0.9.0.tar.gz
Algorithm Hash digest
SHA256 3cbb2c1501e26a542a7087ae40addadb50892990fba236058f12954901779710
MD5 a7247fd1c1363aa3be5369ec508765f1
BLAKE2b-256 dcab788ef328178bfd8faa528c5b6daf726fcab02f7a938765e9041ba5517641

See more details on using hashes here.

File details

Details for the file gilda-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: gilda-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 164.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.63.0 CPython/3.9.9

File hashes

Hashes for gilda-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 93c45f02779a97016bffcc10ff6174c287b0e38203ab10aa7c05060f65633c55
MD5 bb0f04db8da291ac10180cf86c26fc02
BLAKE2b-256 4cd22dd0e80be1f4367fa3b18e79b29fcc63d88b826beae33fd821ab99b0977d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page