🚀 文章排名工具
本工具用于根据给定查询对文章进行排名,能够帮助用户快速筛选出与查询最相关的文章,在生物医学信息检索场景中具有重要价值。
🚀 快速开始
安装依赖
确保你已经安装了torch
和transformers
库。如果没有安装,可以使用以下命令进行安装:
pip install torch transformers
代码示例
import torch
from transformers import AutoTokenizer, AutoModelForSequenceClassification
tokenizer = AutoTokenizer.from_pretrained("ncbi/MedCPT-Cross-Encoder")
model = AutoModelForSequenceClassification.from_pretrained("ncbi/MedCPT-Cross-Encoder")
query = "diabetes treatment"
articles = [
"Type 1 and 2 diabetes mellitus: A review on current treatment approach and gene therapy as potential intervention. Type 1 and type 2 diabetes mellitus is a serious and lifelong condition commonly characterised by abnormally elevated blood glucose levels due to a failure in insulin production or a decrease in insulin sensitivity and function. [...]",
"Diabetes mellitus and its chronic complications. Diabetes mellitus is a major cause of morbidity and mortality, and it is a major risk factor for early onset of coronary heart disease. Complications of diabetes are retinopathy, nephropathy, and peripheral neuropathy. [...]",
"Diagnosis and Management of Central Diabetes Insipidus in Adults. Central diabetes insipidus (CDI) is a clinical syndrome which results from loss or impaired function of vasopressinergic neurons in the hypothalamus/posterior pituitary, resulting in impaired synthesis and/or secretion of arginine vasopressin (AVP). [...]",
"Adipsic diabetes insipidus. Adipsic diabetes insipidus (ADI) is a rare but devastating disorder of water balance with significant associated morbidity and mortality. Most patients develop the disease as a result of hypothalamic destruction from a variety of underlying etiologies. [...]",
"Nephrogenic diabetes insipidus: a comprehensive overview. Nephrogenic diabetes insipidus (NDI) is characterized by the inability to concentrate urine that results in polyuria and polydipsia, despite having normal or elevated plasma concentrations of arginine vasopressin (AVP). [...]",
"Impact of Salt Intake on the Pathogenesis and Treatment of Hypertension. Excessive dietary salt (sodium chloride) intake is associated with an increased risk for hypertension, which in turn is especially a major risk factor for stroke and other cardiovascular pathologies, but also kidney diseases. Besides, high salt intake or preference for salty food is discussed to be positive associated with stomach cancer, and according to recent studies probably also obesity risk. [...]"
]
pairs = [[query, article] for article in articles]
with torch.no_grad():
encoded = tokenizer(
pairs,
truncation=True,
padding=True,
return_tensors="pt",
max_length=512,
)
logits = model(**encoded).logits.squeeze(dim=1)
print(logits)
输出结果
tensor([ 6.9363, -8.2063, -8.7692, -12.3450, -10.4416, -15.8475])
分数越高表示文章与查询的相关性越高。
📄 许可证
本项目采用公共领域许可证,详情请见LICENSE。
🙏 致谢
本工作得到了美国国立卫生研究院国家医学图书馆内部研究项目的支持。
⚠️ 免责声明
本工具展示了美国国家医学图书馆(NCBI/NLM)计算生物学部门的研究成果。本网站生成的信息未经临床专业人员审查和监督,不应用于直接诊断或医疗决策。个人不应仅根据本网站生成的信息改变其健康行为。美国国立卫生研究院(NIH)不独立验证本工具生成信息的有效性或实用性。如果您对本网站生成的信息有疑问,请咨询医疗保健专业人员。有关NCBI免责政策的更多信息,请查阅相关文档。
📚 引用
如果您觉得本仓库对您有帮助,请按以下方式引用MedCPT:
@article{jin2023medcpt,
title={MedCPT: Contrastive Pre-trained Transformers with large-scale PubMed search logs for zero-shot biomedical information retrieval},
author={Jin, Qiao and Kim, Won and Chen, Qingyu and Comeau, Donald C and Yeganova, Lana and Wilbur, W John and Lu, Zhiyong},
journal={Bioinformatics},
volume={39},
number={11},
pages={btad651},
year={2023},
publisher={Oxford University Press}
}