ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

OneKGPd 注释过滤词表全解:Consequence、Impact、BioType、ClinVar 与 AlphaMissense 受控词汇完整参考

OneKGPd 注释过滤词表全解:Consequence、Impact、BioType、ClinVar 与 AlphaMissense 受控词汇完整参考 OneKGPd 注释过滤词表全解Consequence、Impact、BioType、ClinVar 与 AlphaMissense 受控词汇完整参考【免费下载链接】scientific-agent-skillsTurn any AI agent into an AI Scientist. The #1 Agent Skills library for science, used by 190,000 scientists worldwide. 165 ready-to-use validated skills plus 100 scientific databases covering biology, chemistry, medicine, and drug discovery. Compatible with Cursor, Claude Code, Codex, Pi, Antigravity, and the open Agent Skills standard.项目地址: https://gitcode.com/GitHub_Trending/cl/scientific-agent-skills本文以 scientific-agent-skills 仓库中 OneKGPd Skill 的 annotation_vocabularies.md 为核心系统整理onekgpd_api.py全部 CSV 注释过滤参数--consequence、--impact、--variant-type、--feature-type、--bio-type、--clin-significance、--alpha-missense-class的受控词汇全集、组合语义与底层实现。读者阅读后即可准确无误地构造针对 1000 Genomes Project3,202 个全基因组测序个体GRCh38的变体与个体筛选查询避免因词表拼写错误或组合冲突导致的查询失败与结果误读。一、受控词表的设计哲学为什么需要它OneKGPd 允许 Agent 在 1000 Genomes Project 队列上按注释维度筛选变体和个体。注释字段如错义变体、致病性、长链非编码 RNA在生物信息学中天然存在同义词与大小写差异若允许自由文本匹配将产生两类严重问题歧义missense、Missense_variant、MISSENSE_VARIANT写法各异难以保证语义等价不可组合跨字段自由文本无法可靠地按AND/OR逻辑组合。因此 OneKGPd 为每个注释过滤标志定义了封闭的受控词汇表controlled vocabulary并强制执行按精确成员名解析。该设计在 onekgpd_api.py 的_CSV_FIELDS常量中可见一斑CLI 参数名与底层AnnotationFilter字段一一映射所有 CSV 值最终通过 annotation_vocabularies.md 中列出的枚举解析为强类型库枚举_CSV_FIELDS [ (clin_significance, clin_significance), (consequence, consequence), (impact, impact), (variant_type, variant_type), (feature_type, feature_type), (bio_type, bio_type), (alpha_missense_class, am_class), ]测试用例 tests/onekgpd/test_scripts.py 验证了 CSV 词条被转换为库枚举元组的底层行为built onekgpd_api._build_annotation_filter( region_args(consequenceMISSENSE_VARIANT,STOP_GAINED) ) assert built.consequence ( dnaerys.Consequence.MISSENSE_VARIANT, dnaerys.Consequence.STOP_GAINED, )二、词表的基本使用规则所有注释过滤标志共享以下语义规则同样适用于count-variants、select-variants、count-variants-in-samples、select-variants-in-samples、count-samples、select-samples六个命令规则说明值不区分大小写missense_variant与MISSENSE_VARIANT等价按精确成员名解析逗号分隔列表如--consequence MISSENSE_VARIANT,STOP_GAINED同一标志内多个值 OR命中任一值即满足该字段条件不同标志之间 AND所有字段条件必须同时满足非法值直接报错不在词表中的值会被拒绝并列出所有合法值值得强调的是同标志内 OR、跨标志 AND的组合语义。在 onekgpd_api.py 的_build_annotation_filter中各字段被独立组装为AnnotationFilter的 kwargs再整体传给服务端由服务端执行 AND/OR 组合。测试 tests/onekgpd/test_scripts.py 验证了非法词条的拒绝行为def test_an_unknown_vocabulary_term_is_rejected(self) - None: with self.assertRaisesRegex(ValueError, MISSENSE_VARIANTS): onekgpd_api._build_annotation_filter( region_args(consequenceMISSENSE_VARIANTS) )注意词表是硬编码校验的MISSENSE_VARIANTS多一个 S这类看起来合理的值会被直接拒绝因此必须严格对照本词表拼写。三、ConsequenceSequence Ontology 后果术语—--consequence该标志对应 VEP/Ensembl 的 Sequence OntologySO后果分类共41 个合法词条。它是最常用的功能影响筛选维度用于挑选具有特定转录本后果如终止密码子获得、移码、错义的变体。类别词条转录本/编码后果TRANSCRIPT_ABLATION、SPLICE_ACCEPTOR_VARIANT、SPLICE_DONOR_VARIANT、STOP_GAINED、FRAMESHIFT_VARIANT、STOP_LOST、START_LOST、TRANSCRIPT_AMPLIFICATION、INFRAME_INSERTION、INFRAME_DELETION、MISSENSE_VARIANT、PROTEIN_ALTERING_VARIANT、SPLICE_REGION_VARIANT、INCOMPLETE_TERMINAL_CODON_VARIANT、START_RETAINED_VARIANT、STOP_RETAINED_VARIANT、SYNONYMOUS_VARIANT、CODING_SEQUENCE_VARIANT、MATURE_MIRNA_VARIANT非编码/UTRFIVE_PRIME_UTR_VARIANT、THREE_PRIME_UTR_VARIANT、NON_CODING_TRANSCRIPT_EXON_VARIANT、INTRON_VARIANT、NMD_TRANSCRIPT_VARIANT、NON_CODING_TRANSCRIPT_VARIANT基因邻近UPSTREAM_GENE_VARIANT、DOWNSTREAM_GENE_VARIANT调控区TFBS_ABLATION、TFBS_AMPLIFICATION、TF_BINDING_SITE_VARIANT、REGULATORY_REGION_ABLATION、REGULATORY_REGION_AMPLIFICATION、FEATURE_ELONGATION、REGULATORY_REGION_VARIANT、FEATURE_TRUNCATION其他INTERGENIC_VARIANT、SPLICE_POLYPYRIMIDINE_TRACT_VARIANT、SPLICE_DONOR_5TH_BASE_VARIANT、SPLICE_DONOR_REGION_VARIANT、CODING_TRANSCRIPT_VARIANT、SEQUENCE_VARIANT实战示例——筛选 BRCA1 区域GRCh38中所有错义或终止获得型变体uv run scripts/onekgpd_api.py count-variants \ --chrom chr17 --start 43044292 --end 43170245 \ --consequence MISSENSE_VARIANT,STOP_GAINED \ --output /tmp/brca1_consequence.json四、ImpactVEP 影响等级—--impact对应 VEP 对每个变体后果的影响等级判定共4 个合法词条按严重程度递减排列词条含义HIGH高影响如终止获得、移码、剪接位点MODERATE中等影响如错义变体LOW低影响如同义变体MODIFIER修饰性影响如基因间、UTR、内含子变体由于 Impact 与 Consequence 之间存在天然对应关系二者常组合使用以以 AND 语义收窄结果集。例如只保留高影响的变体uv run scripts/onekgpd_api.py select-variants \ --region chr17:43044292-43170245 \ --impact HIGH \ --output /tmp/high_impact.json五、VariantTypeSO 变体类别—--variant-type对应 Sequence Ontology 的变体类别分类共34 个合法词条覆盖单核苷酸到复杂结构变异类别词条基础类别SNV、INSERTION、DELETION、INDEL、SUBSTITUTION、INVERSION、TRANSLOCATION、DUPLICATION、PROBE、SEQUENCE_ALTERATION拷贝数/结构COMPLEX_STRUCTURAL_ALTERATION、COMPLEX_SUBSTITUTION、COPY_NUMBER_GAIN、COPY_NUMBER_LOSS、COPY_NUMBER_VARIATION、COMPLEX_CHROMOSOMAL_REARRANGEMENT、TANDEM_DUPLICATION、LOSS_OF_HETEROZYGOSITY染色体重排INTERCHROMOSOMAL_BREAKPOINT、INTERCHROMOSOMAL_TRANSLOCATION、INTRACHROMOSOMAL_BREAKPOINT、INTRACHROMOSOMAL_TRANSLOCATION转座元件ALU_INSERTION、ALU_DELETION、HERV_INSERTION、HERV_DELETION、LINE1_INSERTION、LINE1_DELETION、SVA_INSERTION、SVA_DELETION、MOBILE_ELEMENT_INSERTION、MOBILE_ELEMENT_DELETION重复序列NOVEL_SEQUENCE_INSERTION、SHORT_TANDEM_REPEAT_VARIATION该字段可用于专门检索结构变异structural variant例如查找目标区域内所有缺失DELETION与插入INSERTIONuv run scripts/onekgpd_api.py count-samples \ --region chr1:1000000-2000000 \ --variant-type DELETION,INSERTION \ --output /tmp/sv_carriers.json六、FeatureTypeVEP 特征类型—--feature-type对应 VEP 注释落入的特征类型仅3 个合法词条词条含义TRANSCRIPT转录本特征REGULATORYFEATURE调控元件特征MOTIFFEATURE转录因子结合基序特征配合--consequence TFBS_ABLATION等调控后果使用可聚焦非转录本注释。七、BioTypeVEP 生物型—--bio-type对应 VEP 的基因/转录本生物型biotype共47 个合法词条是词表最庞大的一类类别词条蛋白编码PROTEIN_CODINGlncRNA 相关LNCRNA、MACRO_LNCRNA、LINCRNA、ANTISENSE、SENSE_INTRONIC、SENSE_OVERLAPPING、NON_CODING、RETAINED_INTRON、PROCESSED_TRANSCRIPT短非编码 RNANCRNA、MIRNA、MISCRNA、PIRNA、RRNA、SIRNA、SNRNA、SNORNA、TRNA、VAULTRNA假基因PSEUDOGENE、IG_PSEUDOGENE、POLYMORPHIC_PSEUDOGENE、PROCESSED_PSEUDOGENE、TRANSCRIBED_PSEUDOGENE、TRANSLATED_PSEUDOGENE、UNITARY_PSEUDOGENE、UNPROCESSED_PSEUDOGENE免疫球蛋白/T 细胞受体基因IG_GENE、IG_C_GENE、IG_D_GENE、IG_J_GENE、IG_V_GENE、TR_GENE、TR_C_GENE、TR_D_GENE、TR_J_GENE、TR_V_GENE特殊类别READTHROUGH、STOP_CODON_READTHROUGH、TEC、NONSENSE_MEDIATED_DECAY调控区域PROMOTER、PROMOTER_FLANKING_REGION、ENHANCER、CTCF_BINDING_SITE、OPEN_CHROMATIN_REGION实战示例——筛选某区域内落在蛋白编码基因转录本上的变体uv run scripts/onekgpd_api.py count-variants \ --chrom chr12 --start 121400000 --end 121450000 \ --bio-type PROTEIN_CODING \ --consequence MISSENSE_VARIANT \ --output /tmp/protein_coding_mis.json八、ClinSignificanceClinVar 临床意义—--clin-significance对应 ClinVar 数据库版本 202502的临床意义分类共19 个合法词条类别词条致病性PATHOGENIC、LIKELY_PATHOGENIC、UNCERTAIN_SIGNIFICANCE、LIKELY_BENIGN、CLNSIG_BENIGN低外显率PATHOGENIC_LOW_PENETRANCE、LIKELY_PATHOGENIC_LOW_PENETRANCE风险等位基因UNCERTAIN_RISK_ALLELE、LIKELY_RISK_ALLELE、ESTABLISHED_RISK_ALLELE功能/表型关联DRUG_RESPONSE、ASSOCIATION、RISK_FACTOR、PROTECTIVE、AFFECTS、CONFERS_SENSITIVITY其他CONFLICTING_INTERPRETATIONS、NOT_PROVIDED、OTHER注意CLNSIG_前缀陷阱这是整个词表最容易踩的坑——ClinVar 中表示良性的词条是CLNSIG_BENIGN注意CLNSIG_前缀而其余全部 ClinSignificance 词条都是裸词条无前缀。也就是说✅--clin-significance CLNSIG_BENIGN—— 良性✅--clin-significance PATHOGENIC—— 致病性❌--clin-significance BENIGN—— 不在词表中会被拒绝实战示例——查找区域内携带 ClinVar 致病性或疑似致病性变体的个体uv run scripts/onekgpd_api.py count-samples \ --chrom chr17 --start 43044292 --end 43170245 \ --clin-significance PATHOGENIC,LIKELY_PATHOGENIC \ --output /tmp/clinvar_path.json九、AlphaMissense错义预测分类—--alpha-missense-class对应 AlphaMissense 对错义变体的致病性预测分类仅3 个合法词条词条含义AM_LIKELY_BENIGN可能良性AM_LIKELY_PATHOGENIC可能致病AM_AMBIGUOUS结果不确定与 AlphaMissense 分数上下界互斥AlphaMissense 分类--alpha-missense-class与 AlphaMissense 分数范围--alpha-missense-score-lt/--alpha-missense-score-gt是互斥的二者只能设置其一不能同时设置。该互斥性在 onekgpd_api.py 中由显式校验强制实现if kwargs.get(am_class) and (am_score_lt in kwargs or am_score_gt in kwargs): _fail( Error: --alpha-missense-class cannot be combined with --alpha-missense-score-lt/--alpha-missense-score-gt )测试 tests/onekgpd/test_scripts.py 同样覆盖了此拒绝路径。原因在 SKILL.md 中亦有说明分类本身就是由分数阈值派生的同时指定二者属于语义矛盾。此外还需留意 SKILL.md 中的另一条约定返回变体的am_score为0.0表示未注释/未打分并不代表良性真实 AlphaMissense 分数恒大于 0。实战示例——查找 BRCA1 区域内携带疑似致病AlphaMissense 分类错义变体的个体uv run scripts/onekgpd_api.py count-samples \ --chrom chr17 --start 43044292 --end 43170245 \ --consequence MISSENSE_VARIANT \ --alpha-missense-class AM_LIKELY_PATHOGENIC \ --output /tmp/am_lp_count.json十、词表完整速查表下表汇总全部七个过滤字段的词条数量与来源标准便于 Agent 快速定位标志词表标准词条数--consequenceSequence OntologySO后果术语41--impactVEP 影响等级4--variant-typeSO 变体类别34--feature-typeVEP 特征类型3--bio-typeVEP 生物型47--clin-significanceClinVar 临床意义20250219--alpha-missense-classAlphaMissense 预测分类3十一、词表之外与相邻参数协同的注意点词表并非孤立存在使用注释过滤时还需留意与之协同的相邻参数语义互斥开关对除 AlphaMissense 分类/分数外--biallelic-only/--multiallelic-only、--exclude-males/--exclude-females、--het-only/--hom-only也两两互斥见 onekgpd_api.py 的 argparse 互斥组定义。过滤字段不等于返回字段ClinVar 临床意义与 VEP consequence 仅作为服务端筛选条件不会回显到返回的变体 JSON 中。返回变体固定携带 22 个键chr/start/end/ref/alt/af/ac/an/hom_samples/het_samples/mis_samples及 X/Y 染色体性别拆分、gnomAD AF、am_score、amino_acids、biallelic完整 schema 见 onekgpd_commands.md。等位频率的 0.0 语义--gnomad-exomes-af-gt 0选择存在于 gnomAD 外显子组的变体而--gnomad-*-af-lt边界包含未注释变体gnomAD AF 为 0如需排除需与--gnomad-*-af-gt 0联用。非法词条的错误信息词表外的值会以错误形式拒绝并列出合法值例如将MISSENSE_VARIANT误写为MISSENSE_VARIANTS即触发ValueError。这意味着词表是白名单式的宁可多查 annotation_vocabularies.md 也不可凭记忆拼写。十二、典型组合工作流从词表到个体名单将词表与 OneKGPd 的先计数、后选择规范结合即构成完整的科学查询流水线。以下为 SKILL.md 中 Quick Start 的完整展开同时使用了本文全部核心词表维度# 1. 先解析坐标必须BRCA1 在 GRCh38 上为 chr17:43044292-43170245 # 2. 先计数区域内有携带疑似致病错义变体的个体多少个 uv run scripts/onekgpd_api.py count-samples \ --chrom chr17 --start 43044292 --end 43170245 \ --consequence MISSENSE_VARIANT \ --alpha-missense-class AM_LIKELY_PATHOGENIC \ --output /tmp/count.json # 3. 计数可控后列出这些个体 uv run scripts/onekgpd_api.py select-samples \ --chrom chr17 --start 43044292 --end 43170245 \ --consequence MISSENSE_VARIANT \ --alpha-missense-class AM_LIKELY_PATHOGENIC \ --output /tmp/samples.json # 4. 对个体名单中的实际变体进行查询 uv run scripts/onekgpd_api.py select-variants-in-samples \ --chrom chr17 --start 43044292 --end 43170245 \ --samples HG03169,NA20506 \ --consequence MISSENSE_VARIANT \ --alpha-missense-class AM_LIKELY_PATHOGENIC \ --output /tmp/variants.json更复杂的多维度 AND 组合可同时叠加 ClinVar 与 impact例如寻找高影响且 ClinVar 致病性的变体携带个体uv run scripts/onekgpd_api.py count-samples \ --region chr17:43044292-43170245 \ --impact HIGH \ --clin-significance PATHOGENIC,LIKELY_PATHOGENIC \ --output /tmp/high_clinvar.json延伸阅读onekgpd_api.py —— 注释过滤参数的解析与AnnotationFilter构建实现onekgpd_commands.md —— 全命令参数表与返回变体 22 键 schemaSKILL.md —— OneKGPd 技能总览、坐标溯源规范与典型工作流test_scripts.py —— 词表解析、非法词条拒绝与互斥校验的测试证据onekgpd_meta.py —— 离线样本/人群元数据命令与变体查询可组合【免费下载链接】scientific-agent-skillsTurn any AI agent into an AI Scientist. The #1 Agent Skills library for science, used by 190,000 scientists worldwide. 165 ready-to-use validated skills plus 100 scientific databases covering biology, chemistry, medicine, and drug discovery. Compatible with Cursor, Claude Code, Codex, Pi, Antigravity, and the open Agent Skills standard.项目地址: https://gitcode.com/GitHub_Trending/cl/scientific-agent-skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表