You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在TensorFlow Extended(TFX)中使用已有推送模型通过BulkInferrer预测

TFX BulkInferrer 组件使用问题解答

能否直接复用已训练完成的模型执行批量推理

完全可以实现,无需重新运行训练流程。你可以通过TFX内置的ImporterNode组件先将本地/远端存储的已有模型(Model或PushedModel类型)导入到当前流水线的ML元数据中,再把导入的模型输出直接传入BulkInferrer即可。
参考实现代码:

from tfx.components import ImporterNode, BulkInferrer
from tfx.types import standard_artifacts
from tfx.proto import bulk_inferrer_pb2

# 导入已训练完成的模型
model_importer = ImporterNode(
    # 替换为你存储模型的实际路径,支持本地路径、GCS、S3等远端存储路径
    source_uri="/path/to/your/trained/model",
    artifact_type=standard_artifacts.Model,
    # 如果是PushedModel则替换为 standard_artifacts.PushedModel
    reimport=False
)

# 初始化BulkInferrer执行批量推理
bulk_inferrer = BulkInferrer(
    # 传入要推理的输入数据集,一般来自ExampleGen的输出
    examples=example_gen.outputs["examples"],
    # 直接绑定导入的已有模型
    model=model_importer.outputs["result"],
    data_spec=bulk_inferrer_pb2.DataSpec(
        example_splits=["infer"] # 指定要执行推理的数据集分片
    ),
    model_spec=bulk_inferrer_pb2.ModelSpec(
        signature_name="serving_default" # 对应模型的服务签名
    )
)

BulkInferrer的核心定位

它是TFX生态内的离线批量推理专用组件,并非只能绑定流水线内训练的模型使用,核心适用场景包括:

  • 全流程训练完模型后,对大规模离线数据集执行一次性批量预测,无需部署在线推理服务
  • 模型校验阶段,对标注好的验证集批量生成预测结果,后续对接Evaluator做效果评估、对接ModelValidator做合规校验
  • 定期离线批量生成预测结果,直接供给下游业务使用,比如风控离线打分、推荐系统召回结果预生成等

使用建议

  • 如果你需要周期性执行批量推理,可以把「导入已有模型+运行BulkInferrer」的逻辑封装成独立的流水线,无需和训练流水线绑定,直接配置定时调度即可
  • 推理完成后的结果会自动记录到ML元数据中,你可以通过bulk_inferrer.outputs["inference_result"]获取结果存储路径,直接导出到业务系统使用
  • 如果需要对推理结果做自定义后处理,可以在流水线中接一个自定义的PythonFunction组件读取推理结果处理即可

内容的提问来源于stack exchange,提问作者xmindata

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 11:45:02