分子关系与互作预测¶
依赖、权重和运行配置见FAQ。
1) 核酸–蛋白中心法则关系¶
- 作用: 预测一条 gene 序列与一条 protein 序列是否具有 CentralDogma 关系。
- 预测方法: 调用 LucaOneTasks 官方
CentralDogma二分类 checkpoint 和src/predict_v1.py直接推理,返回正类概率及官方标签。 - API:
dnakit.predictions.predict_pair_properties(inputs[必须], config=PropertyPredictionConfig(model="lucaone", task="central_dogma", model_source_path=...)[必须], backend[可选]) - 输入:
BiologicalSequencePair;第一条必须为sequence_type="gene",第二条必须为sequence_type="protein"。model_source_path必须指向 LucaOneTasks 官方源码目录。 - 输出: 返回
PropertyPredictionResult;records中每条预测含输出名称output_names、数值values和相关 metadata。 - 示例代码:
from dnakit.predictions import (
BiologicalSequence,
BiologicalSequencePair,
PropertyPredictionConfig,
predict_pair_properties,
)
pair = BiologicalSequencePair(
"central-dogma-1",
BiologicalSequence("gene-1", "ATGGCC" * 100, "gene"),
BiologicalSequence("protein-1", "MAMAPRTEINSTRING" * 10, "protein"),
)
result = predict_pair_properties(
[pair],
config=PropertyPredictionConfig(
model="lucaone",
task="central_dogma",
model_source_path="/opt/LucaOneTasks",
),
)
output = result.records[0].output
print(output.output_names)
print(output.metadata["predicted_label"])
- 示例结果(标签由官方 checkpoint 决定):
2) 甲型流感抗原关系¶
- 作用: 预测两条甲型流感 gene 序列之间的抗原关系类别。
- 预测方法: 调用 LucaOneTasks 官方
InfA二分类 checkpoint 直接推理,返回正类概率和官方标签。 - API:
dnakit.predictions.predict_pair_properties(inputs[必须], config=PropertyPredictionConfig(model="lucaone", task="influenza_antigenicity", model_source_path=...)[必须], backend[可选]) - 输入:
BiologicalSequencePair;两条序列都必须是sequence_type="gene"。 - 输出: 返回
PropertyPredictionResult;records中每条预测含输出名称output_names、数值values和相关 metadata。 - 示例代码:
from dnakit.predictions import (
BiologicalSequence,
BiologicalSequencePair,
PropertyPredictionConfig,
predict_pair_properties,
)
pair = BiologicalSequencePair(
"influenza-pair-1",
BiologicalSequence("strain-a", "ATGGCC" * 100, "gene"),
BiologicalSequence("strain-b", "ATGGCT" * 100, "gene"),
)
result = predict_pair_properties(
[pair],
config=PropertyPredictionConfig(
model="lucaone",
task="influenza_antigenicity",
model_source_path="/opt/LucaOneTasks",
),
)
output = result.records[0].output
print(output.output_names)
print(output.metadata["predicted_label"])
- 示例结果(标签由官方 checkpoint 决定):
3) 蛋白–蛋白互作¶
- 作用: 预测两条蛋白序列是否具有蛋白–蛋白相互作用。
- 预测方法: 调用 LucaOneTasks 官方
PPI二分类 checkpoint 直接推理,返回互作概率和官方标签。 - API:
dnakit.predictions.predict_pair_properties(inputs[必须], config=PropertyPredictionConfig(model="lucaone", task="protein_interaction", model_source_path=...)[必须], backend[可选]) - 输入:
BiologicalSequencePair;两条序列都必须是sequence_type="protein"。 - 输出: 返回
PropertyPredictionResult;records中每条预测含输出名称output_names、数值values和相关 metadata。 - 示例代码:
from dnakit.predictions import (
BiologicalSequence,
BiologicalSequencePair,
PropertyPredictionConfig,
predict_pair_properties,
)
pair = BiologicalSequencePair(
"protein-pair-1",
BiologicalSequence("protein-a", "MAMAPRTEINSTRING" * 10, "protein"),
BiologicalSequence("protein-b", "MKWVTFISLLFLFSSAYSR" * 8, "protein"),
)
result = predict_pair_properties(
[pair],
config=PropertyPredictionConfig(
model="lucaone",
task="protein_interaction",
model_source_path="/opt/LucaOneTasks",
),
)
output = result.records[0].output
print(output.output_names)
print(output.metadata["predicted_label"])
- 示例结果(标签由官方 checkpoint 决定):
4) ncRNA–蛋白互作¶
- 作用: 预测一条 ncRNA 与一条蛋白序列是否具有相互作用。
- 预测方法: 调用 LucaOneTasks 官方
ncRPI二分类 checkpoint 直接推理,返回互作概率和官方标签。 - API:
dnakit.predictions.predict_pair_properties(inputs[必须], config=PropertyPredictionConfig(model="lucaone", task="ncrna_protein_interaction", model_source_path=...)[必须], backend[可选]) - 输入:
BiologicalSequencePair;第一条必须是sequence_type="gene",第二条必须是sequence_type="protein"。 - 输出: 返回
PropertyPredictionResult;records中每条预测含输出名称output_names、数值values和相关 metadata。 - 示例代码:
from dnakit.predictions import (
BiologicalSequence,
BiologicalSequencePair,
PropertyPredictionConfig,
predict_pair_properties,
)
pair = BiologicalSequencePair(
"ncrna-protein-1",
BiologicalSequence("ncrna-1", "AUGCUA" * 100, "gene"),
BiologicalSequence("protein-1", "MKWVTFISLLFLFSSAYSR" * 8, "protein"),
)
result = predict_pair_properties(
[pair],
config=PropertyPredictionConfig(
model="lucaone",
task="ncrna_protein_interaction",
model_source_path="/opt/LucaOneTasks",
),
)
output = result.records[0].output
print(output.output_names)
print(output.metadata["predicted_label"])
- 示例结果(标签由官方 checkpoint 决定):