Grounding for biomedical entities with contextual disambiguation
Project description
Gilda: Grounding Integrating Learned Disambiguation
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3cbb2c1501e26a542a7087ae40addadb50892990fba236058f12954901779710 |
|
MD5 | a7247fd1c1363aa3be5369ec508765f1 |
|
BLAKE2b-256 | dcab788ef328178bfd8faa528c5b6daf726fcab02f7a938765e9041ba5517641 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 93c45f02779a97016bffcc10ff6174c287b0e38203ab10aa7c05060f65633c55 |
|
MD5 | bb0f04db8da291ac10180cf86c26fc02 |
|
BLAKE2b-256 | 4cd22dd0e80be1f4367fa3b18e79b29fcc63d88b826beae33fd821ab99b0977d |