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

加载Tensorflow Object Detection API导出的saved_model.pb报错求助

解决TensorFlow SavedModel加载时的"找不到variables/variables"错误

针对你遇到的FileNotFoundError: Unsuccessful TensorSliceReader constructor: Failed to find any matching files for /content/saved_model/variables/variables错误,可从以下几个方向排查:

1. 确认模型路径是否正确

导出的SavedModel目录结构必须包含:

  • saved_model.pb 文件
  • variables 文件夹(内含variables.data-00000-of-00001和variables.index文件)

检查PATH_TO_SAVED_MODEL是否指向包含上述内容的目录。比如如果导出时指定输出目录为/content/exported_model,实际的模型路径应为/content/exported_model/saved_model,而非上级目录。

可通过终端命令查看目录内容验证:

ls /content/saved_model

正常输出应包含saved_model.pb和variables。

2. 检查模型导出是否完整

重新执行导出命令,确保过程无报错。标准导出命令示例:

python exporter_main_v2.py \
  --input_type image_tensor \
  --pipeline_config_path ./your_pipeline.config \
  --trained_checkpoint_dir ./training_checkpoints \
  --output_directory ./exported_model

导出完成后,确认exported_model/saved_model下的variables文件夹和saved_model.pb文件存在且文件大小正常(非空)。

3. 排查跨环境复制问题

如果是从训练环境(如Colab)将模型复制到另一笔记本,需确保整个saved_model目录被完整复制,包括所有子文件和文件夹。避免只复制了saved_model.pb而遗漏variables文件夹。

4. 验证TensorFlow版本兼容性

训练、导出模型时的TensorFlow版本,需与加载模型时的版本保持主版本一致(如均为2.x系列)。版本差异可能导致模型结构解析异常,引发路径相关错误。

验证代码

可先执行以下代码确认模型目录结构和加载可行性:

import tensorflow as tf
import os

PATH_TO_SAVED_MODEL = "/content/saved_model"
# 查看目录内容
print("目录内容:", os.listdir(PATH_TO_SAVED_MODEL))

# 尝试加载模型
try:
    detect_fn = tf.saved_model.load(PATH_TO_SAVED_MODEL)
    print("模型加载成功")
except Exception as e:
    print("加载失败:", str(e))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 07:07:25