Genos模型服务
模型使用说明
云平台在"DCS-华南1"片区上线Genos模型,该模型是面向人类基因组研究的基础级大模型,依托数百个高质量基因组基准数据进行训练,具备对人类基因组序列长达百万碱基(1M bp) 的上下文建模能力。通过单碱基级别的分辨率学习,Genos能够识别基因组序列中隐含的复杂调控模式与功能特征,为科学家提供连接遗传信息与生命活动的新研究范式。
本次上线的 Genos 模型提供两个版本:
1.2B参数版本(轻量科研场景优化)
10B参数版本(高精度科研与临床研究级别)
两种版本均采用 混合专家架构(Mixture of Experts, MoE),
通过动态路由机制实现计算资源的高效分配,在复杂调控网络解析与多模态序列建模中表现卓越。
一、 模型访问
基本入口
本次上线模型可通过云平台入口开启notebook在线使用或安装Genos包后本地使用。
登录云平台"DCS-华南1"片区,进入首页后进入 Genos 模型官网:
GenOS Genomic Foundation Model - 探索基因奥秘;

进入模型官网页面后,选择模型的两种使用方式。点击后进入个性分析使用

探索模型:使用云平台的GPU资源,开启个性分析访问模型
模型服务:使用API key的方式,通过API接口调用Genos模型执行分析任务,API key申请见**【三、API KEY 申请说明】**
针对模型服务,云平台提供了安装Genos包本地使用的方式。Genos 是一个基于 Python 的 SDK,用于通过 GeneOS访问基因组分析模型。
它提供了统一的接口,支持以下功能:
变异致病性预测:评估遗传变异的致病性
嵌入提取:从 DNA 序列中提取深度学习嵌入向量
RNA-seq 覆盖度预测:根据基因组坐标预测 RNA-seq 覆盖度轨迹
基因组可视化:绘制与分析基因组轨迹
易于使用:API 简洁直观,并具有全面的错误处理机制
安全认证:自动令牌验证与支付检查
完善的异常处理:针对不同错误类型提供特定异常
安装说明
支持源码、PyPI两种安装方式
从源码安装
git clone https://github.com/BGI-HangzhouAI/Genos.git
cd sdk
pip install -e .
从 PyPI 安装(推荐)
pip install genos
环境要求
Python 3.8 或更高版本
已安装 pip 包管理器
二、 模型使用计费
Genos 在云平台中提供两种使用模式,根据您的使用需求选择不同模式的服务。您注册云平台时系统会赠送300元代金券,您可以免费使用最高可达10亿tokens。若代金券用于云平台其他服务,可免费使用tokens相应降低。模型模式对应计费信息如下:

三、API Key 申请说明(针对模型应用场景)
在 模型应用模式 下,用户需要通过云平台 API 接口访问 Genos 服务。为保证调用安全与计费准确,需先在平台个人中心申请个人 API Key。
1. API Key 的作用
作为访问 Genos 模型的唯一身份凭证;
用于调用统计与任务计费;
用于日志追踪与安全控制。
2. 申请条件
拥有云平台注册账户;
账户状态正常;
已同意《Genos API 使用须知》及《隐私与使用条款》。
3. 申请步骤
登录云平台,打开「个人中心 → API Key 管理」个人中心;
点击「创建 API Key」按钮;
阅读「API 使用须知」并确认同意;
系统自动生成您的专属 Key,复制使用
注意请妥善保存,避免泄露。
四、API Key 使用指南
使用声明
Key 仅供账号本人使用,不可共享、转让或公开;
若 Key 泄露、滥用或用于违法目的,平台有权立即停用;
Key 可在控制台手动「停用」。
示例代码
以下示例展示如何使用 API Key 调用 Genos 模型推理接口:
curl -X POST "https://cloud.stomics.tech/api/aigateway/genos/variant_predict" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <your_api_key>" \
-d '{
"assembly":"hg19",
"chrom":"chr6",
"pos":51484075,
"ref":"T",
"alt":"G"
}'
响应示例
{
"result": {
"variant": "chr6-51484075-T-G",
"prediction": "Benign",
"score_Benign": 0.853630542755127,
"score_Pathogenic": 0.14636942744255066
},
"status": 200,
"messages": "",
"model_name": "VariantEffectPred-FT",
"token_cnt": 8192,
"start_time": 1760678302,
"end_time": 1760678310
}
客户端调用实例
from genos import create_client
client = create_client(token="your_token")
# 变异预测
result = client.variant_predict({
"assembly":"hg19",
"chrom":"chr6",
"pos":51484075,
"ref":"T",
"alt":"G"
})
print(result)
快速开始(Quick Start)
基本用法
from genos import create_client
# 创建客户端(默认使用环境变量 GENOS_API_TOKEN)
client = create_client()
# 或者显式提供 token
client = create_client(token="your_api_token_here")
变异致病性预测
预测基因变异的致病性或良性:
# 预测变异致病性
result = client.variant_predict("hg19", "chr6", 51484075, "T", "G")['result']
print(f"Variant: {result['variant']}")
print(f"Prediction: {result['prediction']}")
print(f"Pathogenic Score: {result['score_Pathogenic']:.4f}")
print(f"Benign Score: {result['score_Benign']:.4f}")
DNA 序列嵌入提取
# 为单条序列提取嵌入向量
sequence = "ATCGATCGATCGATCGATCGATCGATCG"
result = client.get_embedding(sequence, model_name="Genos-1.2B")['result']
print(f"Sequence Length: {result['sequence_length']}")
print(f"Embedding Dimension: {result['embedding_dim']}")
print(f"Embedding Shape: {result['embedding_shape']}")
# 访问嵌入向量
embedding_vector = result['embedding'] # 浮点数列表
可用模型
| 模型名称 | 参数规模 | 描述 |
|---|---|---|
| Genos-1.2B | 12 亿参数 | 通用版 |
| Genos-10B | 100 亿参数 | 高精度版 |
Pooling 方法:
mean:序列平均池化max:最大池化last:最后一个 token 嵌入none:返回完整 token 嵌入序列
RNA-seq 覆盖度预测
# 根据基因组坐标预测 RNA-seq 覆盖轨迹
result = client.rna_coverage_track_pred(chrom="chr6", start_pos=51484075)['result']
print(f"Predicted coverage track: {result}")
高级配置(Advanced Configuration)
自定义嵌入服务
GenosClient 支持用户配置自定义的嵌入 API 端点。
注意:变异预测与 RNA-seq 预测模型暂不开放源代码,仅官方托管服务可用。
from genos import GenosClient
# 使用自定义嵌入服务端点初始化客户端
client = GenosClient(
token="your_custom_token", # 自定义嵌入服务的认证 token
api_map={
# 仅嵌入服务可自定义
"embedding": "https://custom-embed-api.example.com/predict"
}
)
# 变异与 RNA API 仍将使用官方托管服务
超时配置
调整长时运行任务的请求超时时间:
# 设置 60 秒超时
client = create_client(token="your_token", timeout=60)
错误处理(Error Handling)
Genos 提供完善的错误处理机制,对不同错误类型返回具体异常。所有 API 响应均遵循统一格式。
错误响应格式:
{
"result": {},
"status": "<HTTP_STATUS_CODE>",
"messages": "<ERROR_MESSAGE>"
}
常见错误码:
| 状态码 | 错误信息 | 描述 |
|---|---|---|
| 400 | Insufficient balance | 账户余额不足 |
| 401 | Invalid API Key | 提供的 API Key 无效或已过期 |
| 500 | Internal server error | 服务器内部错误 |
注意:返回“200”即表示服务正常返回
五、API Key管理操作
| 功能 | 说明 |
|---|---|
| 查看 Key | 控制台展示当前活跃 Key |
| 停用 Key | 暂停调用服务 |
| 启用 Key | 手动恢复被停用的 Key 状态 |
| 删除Key | 手动删除不需要的Key |