pyBioMedLink for Bio-Medical Term Linking.
Project description
pyBioMedLink
pyBioMedLink is an open-source python library for bio-medical term linking.
Usage
Use Case 1 for BioDomain Linking using Qwen3
corpus = [
"Epigenetic",
"DNA Repair",
"Metal Binding and Homeostasis"
"Synapse",
"Immune System",
"Cell Cycle",
"Lipid Metabolism",
"Vasculature",
]
query = "aging"
linker = Qwen3PromptLinker(
corpus,
model_name="Qwen/Qwen3-0.6B"
)
top_k = 3
predictions = linker.predict_aux(query, top_k)
print(f"Predictions for query '{query}': {predictions}")
# {'labels': ['Cell Cycle', 'DNA Repair', 'Epigenetic'], "thinking_content": ..., "content": ..., "error_msg": ...}
Use Case 2 for IR baselines
from pybiomedlink.linker import BM25Linker
corpus = [
"Hello there good man!",
"It is quite windy in London",
"How is the weather today?"
]
query = "windy London"
bm25_linker = BM25Linker(corpus)
top_k = 2
predictions = bm25_linker.predict(query, top_k)
print(f"Predictions for query '{query}': {predictions}")
# ['It is quite windy in London', 'How is the weather today?']
pred_score_results = bm25_linker.predict_aux(query, top_k)
print(f"Predictions with scores for query '{query}': {pred_score_results}")
# {'labels': ['It is quite windy in London', 'How is the weather today?', 'Hello there good man!'], 'scores': [0.9372947225064051, 0.0, 0.0]}
Supported Models
Zero-shot models:
- BM25Linker: A BM25-based linker
- LevenshteinLinker: A Levenshtein distance-based linker
- TransformerEmbLinker: A Transformer-based embedding linker
- Qwen3PromptLinker: A Qwen3-based prompt linker. Note: can only return a ranked list without scores.
How to run tests
To run the tests, you can use the following command:
uv run python -m pytest -v tests/
uv run python -m pytest -v -s tests/test_Transformer.py
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
pybiomedlink-0.1.1.tar.gz
(13.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pybiomedlink-0.1.1.tar.gz.
File metadata
- Download URL: pybiomedlink-0.1.1.tar.gz
- Upload date:
- Size: 13.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a50e1715c4f8fb48884a1a0de864ded07de57e134b41b9405ef4e01b0b8cfc67
|
|
| MD5 |
ec75b968ad3ed6f8683b79a9b2f8f382
|
|
| BLAKE2b-256 |
70fd36d98da07ce8756e8431535eec2d6a54f3ad1cf71867b32340e5e8098d1a
|
File details
Details for the file pybiomedlink-0.1.1-py3-none-any.whl.
File metadata
- Download URL: pybiomedlink-0.1.1-py3-none-any.whl
- Upload date:
- Size: 14.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ff5250e1a9e0dc72cb0fd591b681848011129b40f05bb393cb5b39dda61bec05
|
|
| MD5 |
71a802537bc3921352163ec791ce7cc0
|
|
| BLAKE2b-256 |
272eee90136f7a8c38e44cc4bb549c1567e44f32387b6d2ca3e5882b1c490c1b
|