关于 opentargets-database
opentargets-database 是面向研究人员和药物研发团队的技能,可通过 Open Targets GraphQL API 查询靶点、疾病、药物及相关证据。它提供常用查询的辅助函数,并说明如何解读关联评分与证据类型。
主要功能
- 01搜索靶点、疾病和药物
- 02获取靶点与疾病注释
- 03检查靶点-疾病证据
- 04查询药物及临床开发信息
- 05执行自定义 GraphQL 查询
适用场景
- 01发现并排序疾病相关靶点
- 02评估靶点的可成药性与安全性
- 03探索药物再利用机会
- 04审查证据和临床先例
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ jackspace/ claudeskillz --skill opentargets-database安装后在 Claude Code 中输入/opentargets-database确认已加载。
附带文件SKILL.json
详细介绍
Open Targets Database
概述
Open Targets Platform 是一个综合性资源,用于系统地识别和优先排序潜在的治疗药物靶点。它整合了公开数据集,包括人类遗传学、组学、文献和化学数据,用于建立并评估靶点与疾病之间的关联。
主要功能:
- 查询靶点(基因)注释,包括可成药性、安全性和表达情况
- 搜索带有证据评分的疾病—靶点关联
- 检索多种数据类型的证据(遗传学、通路、文献等)
- 查找疾病的已知药物及其作用机制
- 获取药物信息,包括临床试验阶段和不良事件
- 评估靶点的成药性和治疗潜力
**数据访问:**该平台提供 GraphQL API、Web 界面、数据下载和 Google BigQuery 访问。本技能侧重于通过 GraphQL API 以编程方式访问数据。
何时使用此技能
在以下情况下应使用此技能:
- **发现靶点:**查找针对某种疾病的潜在治疗靶点
- **评估靶点:**评估基因的可成药性、安全性和成药性
- **收集证据:**检索支持靶点—疾病关联的证据
- **药物再利用:**识别可用于新适应症的现有药物
- **竞争情报:**了解临床先例和药物研发格局
- **靶点优先级排序:**根据遗传证据和其他数据类型对靶点进行排序
- **研究作用机制:**调查生物通路和基因功能
- **发现生物标志物:**查找疾病中差异表达的基因
- **评估安全性:**识别药物靶点可能存在的毒性问题
核心工作流
1. 搜索实体
首先查找目标、疾病或药物的标识符。
对于靶点(基因):
from scripts.query_opentargets import search_entities
# Search by gene symbol or name
results = search_entities("BRCA1", entity_types=["target"])
# Returns: [{"id": "ENSG00000012048", "name": "BRCA1", ...}]
对于疾病:
# Search by disease name
results = search_entities("alzheimer", entity_types=["disease"])
# Returns: [{"id": "EFO_0000249", "name": "Alzheimer disease", ...}]
对于药物:
# Search by drug name
results = search_entities("aspirin", entity_types=["drug"])
# Returns: [{"id": "CHEMBL25", "name": "ASPIRIN", ...}]
使用的标识符:
- 靶点:Ensembl 基因 ID(例如,
ENSG00000157764) - 疾病:EFO(Experimental Factor Ontology)ID(例如,
EFO_0000249) - 药物:ChEMBL ID(例如,
CHEMBL25)
2. 查询靶点信息
检索全面的靶点注释,以评估其成药性和生物学特征。
from scripts.query_opentargets import get_target_info
target_info = get_target_info("ENSG00000157764", include_diseases=True)
# Access key fields:
# - approvedSymbol: HGNC gene symbol
# - approvedName: Full gene name
# - tractability: Druggability assessments across modalities
# - safetyLiabilities: Known safety concerns
# - geneticConstraint: Constraint scores from gnomAD
# - associatedDiseases: Top disease associations with scores
需要查看的主要注释:
- **可成药性:**小分子、抗体和 PROTAC 成药性预测
- **安全性:**来自多个数据库的已知毒性问题
- **遗传约束:**表明必需性的 pLI 和 LOEUF 评分
- **疾病关联:**与该靶点相关且带有证据评分的疾病
有关所有靶点特征的详细信息,请参阅 references/target_annotations.md。
3. 查询疾病信息
获取疾病详情及相关靶点和药物。
from scripts.query_opentargets import get_disease_info
disease_info = get_disease_info("EFO_0000249", include_targets=True)
# Access fields:
# - name: Disease name
# - description: Disease description
# - therapeuticAreas: High-level disease categories
# - associatedTargets: Top targets with association scores
4. 检索靶点—疾病证据
获取支持靶点—疾病关联的详细证据。
from scripts.query_opentargets import get_target_disease_evidence
# Get all evidence
evidence = get_target_disease_evidence(
ensembl_id="ENSG00000157764",
efo_id="EFO_0000249"
)
# Filter by evidence type
genetic_evidence = get_target_disease_evidence(
ensembl_id="ENSG00000157764",
efo_id="EFO_0000249",
data_types=["genetic_association"]
)
# Each evidence record contains:
# - datasourceId: Specific data source (e.g., "gwas_catalog", "chembl")
# - datatypeId: Evidence category (e.g., "genetic_association", "known_drug")
# - score: Evidence strength (0-1)
# - studyId: Original study identifier
# - literature: Associated publications
主要证据类型:
- **genetic_association:**GWAS、罕见变异、ClinVar、基因负担
- **somatic_mutation:**Cancer Gene Census、IntOGen、癌症生物标志物
- **known_drug:**来自已获批药物或临床药物的临床先例
- **affected_pathway:**CRISPR 筛选、通路分析、基因特征
- **rna_expression:**来自 Expression Atlas 的差异表达
- **animal_model:**来自 IMPC 的小鼠表型
- **literature:**来自 Europe PMC 的文本挖掘
有关所有证据类型及其解读指南的详细说明,请参阅 references/evidence_types.md。
5. 查找已知药物
识别用于治疗某种疾病的药物及其靶点。
from scripts.query_opentargets import get_known_drugs_for_disease
drugs = get_known_drugs_for_disease("EFO_0000249")
# drugs contains:
# - uniqueDrugs: Total number of unique drugs
# - uniqueTargets: Total number of unique targets
# - rows: List of drug-target-indication records with:
# - drug: {name, drugType, maximumClinicalTrialPhase}
# - targets: Genes targeted by the drug
# - phase: Clinical trial phase for this indication
# - status: Trial status (active, completed, etc.)
# - mechanismOfAction: How drug works
临床阶段:
- Phase 4:已获批药物
- Phase 3:后期临床试验
- Phase 2:中期临床试验
- Phase 1:早期安全性试验
6. 获取药物信息
检索详细的药物信息,包括作用机制和适应症。
from scripts.query_opentargets import get_drug_info
drug_info = get_drug_info("CHEMBL25")
# Access:
# - name, synonyms: Drug identifiers
# - drugType: Small molecule, antibody, etc.
# - maximumClinicalTrialPhase: Development stage
# - mechanismsOfAction: Target and action type
# - indications: Diseases with trial phases
# - withdrawnNotice: If withdrawn, reasons and countries
7. 获取目标的所有关联
查找与某个目标相关的所有疾病,可选择按分数筛选。
from scripts.query_opentargets import get_target_associations
# Get associations with score >= 0.5
associations = get_target_associations(
ensembl_id="ENSG00000157764",
min_score=0.5
)
# Each association contains:
# - disease: {id, name}
# - score: Overall association score (0-1)
# - datatypeScores: Breakdown by evidence type
关联分数:
- 范围:0-1(分数越高,证据越强)
- 使用调和和汇总所有数据类型的证据
- 不是置信度分数,而是相对排名指标
- 即使证据充分,研究不足的疾病也可能得分较低
GraphQL API 详情
对于提供的辅助函数无法满足的自定义查询,请直接使用 GraphQL API,或修改 scripts/query_opentargets.py。
关键信息:
- 端点:
https://api.platform.opentargets.org/api/v4/graphql - 交互式浏览器:
https://api.platform.opentargets.org/api/v4/graphql/browser - 无需身份验证
- 仅请求所需字段,以尽量减小响应大小
- 对大型结果集使用分页:
page: {size: N, index: M}
请参阅 references/api_reference.md,了解:
- 完整的端点文档
- 所有实体类型的查询示例
- 错误处理模式
- API 使用最佳实践
最佳实践
目标优先级排序策略
对药物目标进行优先级排序时:
- 从遗传证据入手: 人类遗传学(GWAS、罕见变异)能提供最强的疾病相关性
- 检查可成药性: 优先考虑已有临床或研发先例的目标
- 评估安全性: 审查安全性隐患、表达模式和遗传约束
- 评估临床先例: 已知药物表明其具有成药性和治疗窗
- 考虑多种证据类型: 不同来源的证据相互印证,可增强可信度
- 进行机制验证: 检查通路证据和生物学合理性
- 人工审查文献: 对于关键决策,请查阅原始出版物
证据解读
强证据指标:
- 多个独立证据来源
- 高遗传关联分数(尤其是 L2G > 0.5 的 GWAS)
- 已获批药物提供的临床先例
- 与疾病匹配的 ClinVar 致病变异
- 具有相关表型的模型小鼠
注意事项:
- 仅有单一证据来源
- 仅有文本挖掘证据(需要人工验证)
- 不同来源的证据相互矛盾
- 高必需性 + 广泛表达(治疗窗较差)
- 存在多项安全性隐患
分数解读:
- 分数用于评估相对强度,而非绝对可信度
- 研究不足的疾病即使目标可能有效,分数也较低
- 相较于计算预测,应更重视专家整理的来源
- 查看证据明细,而不只是总体分数
常见工作流
工作流 1:疾病目标发现
- 搜索疾病 → 获取 EFO ID
- 查询疾病信息,并设置
include_targets=True - 查看按关联分数排序的顶级目标
- 对有潜力的目标,获取详细目标信息
- 检查支持每项关联的证据类型
- 评估优先级目标的可成药性和安全性
工作流 2:目标验证
- 搜索目标 → 获取 Ensembl ID
- 获取全面的目标信息
- 检查可成药性(尤其是临床先例)
- 审查安全性隐患和遗传约束
- 检查疾病关联,以了解其生物学特性
- 查找化学探针或工具化合物
- 检查靶向该基因的已知药物,了解其作用机制
工作流 3:药物再利用
- 搜索疾病 → 获取 EFO ID
- 获取该疾病的已知药物
- 获取每种药物的详细信息
- 检查作用机制和目标
- 查找相关疾病适应症
- 评估临床试验阶段和状态
- 根据作用机制确定再利用机会
工作流 4:竞争情报
- 搜索感兴趣的目标
- 获取其具有关联证据的疾病
- 获取每种疾病的已知药物
- 查看临床阶段和研发状态
- 确定竞争者及其作用机制
- 评估临床先例和市场格局
资源
脚本
scripts/query_opentargets.py 用于常见 API 操作的辅助函数:
search_entities()- 搜索靶点、疾病或药物get_target_info()- 检索靶点注释get_disease_info()- 检索疾病信息get_target_disease_evidence()- 获取支持性证据get_known_drugs_for_disease()- 查找治疗某种疾病的药物get_drug_info()- 检索药物详情get_target_associations()- 获取某个靶点的所有关联execute_query()- 执行自定义 GraphQL 查询
参考资料
references/api_reference.md 完整的 GraphQL API 文档,包括:
- 端点详情和身份验证
- 可用的查询类型(靶点、疾病、药物、搜索)
- 所有常见操作的查询示例
- 错误处理和最佳实践
- 数据许可和引用要求
references/evidence_types.md 关于证据类型和数据来源的全面指南:
- 对所有 7 种主要证据类型的详细说明
- 各来源的评分方法
- 证据解读指南
- 各种证据类型的优势和局限
- 质量评估建议
references/target_annotations.md 完整的靶点注释参考资料:
- 对 12 个主要注释类别的说明
- 可成药性评估详情
- 安全性风险来源
- 表达、必需性和约束数据
- 靶点优先级排序的解读指南
- 靶点评估中的警示信号和积极信号
数据更新与版本管理
Open Targets Platform 每季度更新一次,发布新的数据。截至 2025 年 10 月,当前版本可通过 API 端点获取。
版本信息: 请访问 https://platform-docs.opentargets.org/release-notes 查看最新更新。
引用: 使用 Open Targets 数据时,请引用: Ochoa, D. et al. (2025) Open Targets Platform: facilitating therapeutic hypotheses building in drug discovery. Nucleic Acids Research, 53(D1):D1467-D1477.
局限性与注意事项
- API 适用于探索性查询: 对大量靶点或疾病进行系统分析时,请使用数据下载或 BigQuery
- 评分是相对值,而非绝对值: 关联评分用于对证据强度排序,但不能预测临床成功
- 研究不足的疾病评分较低: 新发或罕见疾病可能有有力证据,但综合评分较低
- 证据质量各不相同: 专家整理的来源应比计算预测获得更高权重
- 需要结合生物学进行解读: 必须结合生物学和临床背景解读评分和证据
- 无需身份验证: 所有数据均可免费访问,但请正确引用